stm8s单片机编程

就是对stm8s103f单片机编程,预期效果是:用一个低电平触发单片机内的两个定时器,定时值可方便的修改,其输出分别控制一个n-mos管的导通我是新手,手上已经有上电成功... 就是对stm8s103f单片机编程,预期效果是:用一个低电平触发单片机内的两个定时器,定时值可方便的修改,其输出分别控制一个n-mos管的导通
我是新手,手上已经有上电成功的stm8s板子,想烦请高手把这个程序给我写的尽可能完整点,以便供我反复研读,我觉得这样学得快啊,现在就等把这个程序烧进去试试了。
展开
 我来答
科技婉魔
2013-08-26 · 超过21用户采纳过TA的回答
知道答主
回答量:143
采纳率:50%
帮助的人:39.4万
展开全部
文件:main.c
用途:
注意:内部8M晶振
************************************************/

#include <iom128v.h>

unsigned char LED_table[]={0xFF,0x00,0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0xFF,0x00,0xFF,0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF,0x00,0xFF,0x7E,0xBD,0xDB,0xE7,0xFF,0x00,0xE7,0xDB,0xBD,0x7E,0xFF,0x00};

用途:延时函数
注意:系统时钟8M
************************************************/

void delay_1us(void) //1us延时函数
{
asm("nop");
}

void delay_nus(unsigned int n) //N us延时函数
{
unsigned int i=0;
for (i=0;i<n;i++)
delay_1us();
}

void delay_1ms(void) //1ms延时函数
{
unsigned int i;
for (i=0;i<1140;i++);
}

void delay_nms(unsigned int n) //N ms延时函数
{
unsigned int i=0;
for (i=0;i<n;i++)
delay_1ms();
}

void main(void)
{
unsigned char i=0;
PORTA = 0xFF;
DDRA = 0xFF;
DDRE=0XFF;
PORTE=0XFF;
while(1)
{
if(i==36) i=0;
PORTA = LED_table[i++];
delay_nms(80);
}
}
后曼珠22
2013-08-26 · TA获得超过108个赞
知道小有建树答主
回答量:228
采纳率:0%
帮助的人:108万
展开全部
设置定时器为同步模式,启用2个定时器,定时的值自己配置。
追问
谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式