中断无法使用全局变量

2019-03-24 17:29发布

  1. unsigned int  AD=500;
  2. /*定时器初始化*/
  3. void init()
  4. {
  5.         TMOD=0x01;
  6.         TH0=(65536-60000)/256;
  7.         TL0=(65536-60000)%256;
  8.         EA=1;
  9.         ET0=1
  10.         TR0=1;
  11. }
  12. void main()
  13. {
  14.         init();
  15.         while(1)
  16.         {
  17.                 AD=ReadAD1();//读取AD数据
  18.         }       
  19. }         
  20. void time() interrupt 1
  21. {       
  22.         TH0=(65536-AD)/256;  //此处无法使用
  23.         TL0=(65536-AD)%256;
  24.         CLK1=~CLK1;
  25. }
复制代码

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
3条回答
ienglgge
2019-03-25 07:02
先看能不能进入定时器中断,不能进入就检查初始化,和使能操作。如果能进,就看AD的值是多少,和主循环中的值有什么区别。中断无法使用全局变量,是错误的。

一周热门 更多>