欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 用單片機+keil4仿真紅外遙控中斷問題 [打印本頁]

作者: cabot    時間: 2020-4-13 23:49
標題: 用單片機+keil4仿真紅外遙控中斷問題
      我用STC89C52寫一個紅外接收程序,仿真軟件是用keil4。程序編譯通過了,下載到學習板發(fā)現可以進入外部中斷(外部中斷下降沿觸發(fā),中斷程序是紅外起始碼是否正確的判斷程序),用遙控測試,發(fā)現會觸發(fā)外部中斷,但起始碼判斷出問題跳出中斷了。我對仿真調試不會。
問題如下:
用keil4怎么才能仿真外部紅外中斷,是點按鈕start Debug后在調試過程可以跟學習板同步調試嗎?
或者大佬們有視頻的話請給我個鏈接

作者: cabot    時間: 2020-4-14 08:30
void Timer0IrqHandler(void) interrupt 1   //定時器0,采用11.0592M晶振。采用定時器方式2,TL0=246重復給到TH0
{
    time++;            
}

void IR_INT0()interrupt 0  //外部中斷,也是紅外接收頭
{
        EX0=0;   //關閉外部中斷

        text=5;
         if(IRIN==0)//外部中斷腳,也是紅外接收口
         {
           TL0=246;
                 time=0;
                 TR0=1;                     //打開T0定時器開始計算低電平時間
                 while(!IRIN&&(time<1100));//9毫秒低電平
                 TR0=0;                   //關閉T0
                 if(time<700||(time>1000))  //判斷低電平時間跟9毫秒誤差是否太大,太大則不往后執(zhí)行
                 {
                         return;          //現在開發(fā)板測試到這里,程序就執(zhí)行到return,怎么確定當前time值是多少
                 }
         }
         
         if(IRIN==1)
         {
            TL0=246;
                 time=0;
                 TR0=1;
           while(IRIN&&(time<550));
                 TR0=0;
                 if(time<300||(time>550))
                 {
                   return;
                 }                 
         }
         irok=1;//全局變量標志位,為1是紅外起始碼正確
       
  EX0=1;      //打開外部中斷
}
作者: devcang    時間: 2020-4-14 09:28
中斷的觸發(fā),只要沒終止,就會在下一次中斷時繼續(xù)觸發(fā)。。。。。。。。
作者: cabot    時間: 2020-4-14 11:34
devcang 發(fā)表于 2020-4-14 09:28
中斷的觸發(fā),只要沒終止,就會在下一次中斷時繼續(xù)觸發(fā)。。。。。。。。

進入中斷程序后我有關中斷了,中斷程序要結束時候再打開外部中斷的




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1