单片机 中断

[复制链接]
查看11 | 回复4 | 2013-1-31 11:48:21 | 显示全部楼层 |阅读模式
应该说执行了20次吧,当1秒到后TR0=0了,所以停止计时器工作,因此无法继续定时了...
回复

使用道具 举报

千问 | 2013-1-31 11:48:21 | 显示全部楼层
1、TH0=(65536-46080)/256;TL0=(65536-46080)%256; 除法很耗指令和时间的动作,你还放到终端里,不可取,严重影响实时性,建议换算成具体数字。2、TR0,这个是使能寄存器吗?中断执行完,需清除中断执行标志位,而不是禁止使能。if(aaa==30){aaa=0;Enforce=0...
回复

使用道具 举报

千问 | 2013-1-31 11:48:21 | 显示全部楼层
因为TR0=0,你关闭了T0定时器,程序将不再定时,当然就不会再进入中断,中断程序就只能执行一次咯。你的追问里,第一条指令是定时器工作模式选选为方式1,第四条指令是开总中断,第五条指令是T0中断允许。跟什么清除中断标志位没任何关系。初学单片机,以上意见仅供参考,若有不对的地方,还请指正。...
回复

使用道具 举报

千问 | 2013-1-31 11:48:21 | 显示全部楼层

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行