中断问题。。。麻烦各位老师帮我看看怎么回事,谢谢。

2019-03-24 18:50发布

不知道怎么回事,流水灯没有按照我预期的1S移动一次,而是以很快的速度在变换,麻烦各位老师看看问题出在什么地方,万分感激!!!
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
uchar a;
void main()
{
a=0;
P1=0xfe;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1);
}

void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
a++;
if(a==20)
{
   a=0;
   P1=_crol_(P1,1);
   }
} 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
Li_Lei
1楼-- · 2019-03-24 22:13
 精彩回答 2  元偷偷看……
FQZhen
2楼-- · 2019-03-25 02:05
额。。。。老师,还是不行啊,我是初学者,看了这个中断的时间好像是很多人都使用的,怎么我就用不了了,不会是单片机本身问题吧。
Li_Lei
3楼-- · 2019-03-25 06:00
仿真了一下,程序没有问题,原来那样写是行的,你的晶振是多少?

你没有TMOD=??定时器是按=0配置的,也就是模式0的分频。

[ 本帖最后由 huo_hu 于 2013-3-20 11:05 编辑 ]
FQZhen
4楼-- · 2019-03-25 11:09
哈哈,谢谢老师提醒!!!!!!粗心了,是没TMOD的原因。谢谢!!!!!

一周热门 更多>