定时器对程序有影响???求救各位大虾

[复制链接]
2626|0
 楼主| kinggate 发表于 2007-4-23 19:05 | 显示全部楼层 |阅读模式
各位大虾帮我看看下面的程序啊,怎么定时器对程序的运行有影响的?<br />程序如下:<br />#include&ltreg51.h&gt<br />#define&nbsp;uchar&nbsp;unsigned&nbsp;char<br />#define&nbsp;uint&nbsp;unsigned&nbsp;int<br />#define&nbsp;ulong&nbsp;unsigned&nbsp;long<br /><br />extern&nbsp;show(uchar&nbsp;showdata);<br /><br />ulong&nbsp;IRcode=0x00000000;&nbsp;&nbsp;//32位的键代码<br />uchar&nbsp;Lcustomcode=0x92;&nbsp;&nbsp;&nbsp;&nbsp;//低八位用户码<br />uchar&nbsp;Hcustomcode=0x82;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//高----&nbsp;<br />uchar&nbsp;datacode=0xf8;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//8位键数据码<br />uchar&nbsp;Rdatacode=0x80;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//8位键数据反码<br /><br />void&nbsp;delay()<br />{<br />&nbsp;uchar&nbsp;i,j,k;<br />&nbsp;for(i=200;i&gt0;i--)<br />&nbsp;&nbsp;&nbsp;&nbsp;for(j=200;j&gt0;j--)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(k=5;k&gt0;k--)&nbsp;;<br />}<br />&nbsp;&nbsp;<br /><br /><br />void&nbsp;init()<br />{&nbsp;&nbsp;<br />&nbsp;&nbsp;TMOD=0x11;&nbsp;//定时器0,工作方式1&nbsp;;&nbsp;&nbsp;定时器1,工作方式1<br />&nbsp;&nbsp;TCON=0x01;&nbsp;//外中断0下降沿触发,(包括TR1=0,TR0=0)<br />&nbsp;&nbsp;TH0=0x3c;&nbsp;&nbsp;//初始化定时器0,定时50ms<br />&nbsp;&nbsp;TL0=0xb0;<br />&nbsp;&nbsp;TH1=0x00;&nbsp;&nbsp;//初始化定时器1&nbsp;<br />&nbsp;&nbsp;TL1=0x00;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;EA=1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//开全中断<br />&nbsp;&nbsp;ET0=1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//开放T0中断<br />&nbsp;&nbsp;ET1=1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//开放T1中断<br />&nbsp;&nbsp;EX0=1;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//开放外中断0<br />&nbsp;&nbsp;<br />}<br /><br />void&nbsp;remoteint()&nbsp;interrupt&nbsp;0&nbsp;using&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;//遥控器中断处理函数<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;EX0=0;&nbsp;<br />&nbsp;&nbsp;IRcode=code;&nbsp;&nbsp;//code为读到的32位的值<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;Lcustomcode=IRcode;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;IRcode=IRcode&gt&gt8;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;Hcustomcode=IRcode;<br />&nbsp;&nbsp;IRcode=IRcode&gt&gt8;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;datacode=IRcode;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;IRcode=IRcode&gt&gt8;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;Rdatacode=IRcode;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;<br />&nbsp;&nbsp;TR1=1;&nbsp;&nbsp;//开始计时?????????&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;EX0=1;<br />&nbsp;&nbsp;<br />}<br /><br />void&nbsp;main()<br />{<br />&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;init();&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;while(1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;show(Lcustomcode);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delay();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;show(Hcustomcode);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delay();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;show(datacode);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delay();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;show(Rdatacode);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delay();&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />}<br />问题就出在TR1=1上,有了这句之后显示的数码管就一闪一闪的了,并且数据也不正确,但删掉这句后,程序就正常,或者一开始就关闭T1(ET1=0)也没影响,程序运行也正常,难到定时器的中断对程序也有影响吗?<br />谢谢各位!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

37

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部