標(biāo)題: 如何改寫這個(gè)單片機(jī)中斷程序,燈亮5分鐘,滅1分鐘,最多循環(huán)5次。謝謝大神 求幫助 [打印本頁]

作者: 落魄書生123456    時(shí)間: 2020-6-3 09:07
標(biāo)題: 如何改寫這個(gè)單片機(jī)中斷程序,燈亮5分鐘,滅1分鐘,最多循環(huán)5次。謝謝大神 求幫助
void Timer0_Service() interrupt 1
{
   static uint count = 0;  
   static uchar flag = 0;
         static uchar flag2 = 0;
         unsigned int i,j;
   //count = 0;
  TR0 = 0;   
   TH0 = 0xec;
   TL0 = 0x78;  
  TR0 = 1 ;   
   count++;
        LED1=1;
        LED2=0;        
        //bell=1;
        if( count ==30000)
   {
      bell =0;
     count = 0;
                 count++;
                 LED1=0;
                 LED2=0;
        /* TH0 = 0xec;
    TL0 = 0x78; */
                 flag++;
                /*for(i=0;i<11000;i++)
                 {for(j=0;j<1100;j++);}
                 i=0;j=0;*/
   }         
  if( flag ==5)
   {
     bell=1;
                // flag = 0;
      //TR0 = 0;   
               
                  /*TH0 = 0xec;
      TL0 = 0x78; */
                  LED2=0;
                   LED1=1;
                  //count=0;
                 /*        for(i=0;i<11000;i++)
                 {for(j=0;j<11000;j++);}
                 i=0;j=0;*/
   }
         if( flag ==5)
                {
      flag = 0;
      //TR0 = 0;
                        LED2=0;
                   LED1=0;
                        TH0 = 0xec;
      TL0 = 0x78;
                 count=0;
                 /*        for(i=0;i<11000;i++)
                 {for(j=0;j<11000;j++);}
                 i=0;j=0;*/
    }
}


作者: lihuanpei    時(shí)間: 2020-6-3 20:45
用for(i=1;i<=5;i++)
作者: angmall    時(shí)間: 2020-6-4 06:22
中斷子程序中不要寫調(diào)用延時(shí)子程序,中斷子程序也不要寫得過長,處理過多的任務(wù),要盡快處理后及時(shí)返回,如果中斷一次有很多任務(wù)需要執(zhí)行完全,可以在中斷子程序中設(shè)置一個(gè)標(biāo)志位,在主程序中查這個(gè)標(biāo)志位,當(dāng)標(biāo)志為1時(shí),就在主程序中完成這些任務(wù),這樣就不會(huì)影響其它中斷源的中斷,也不會(huì)使中斷產(chǎn)生混亂。

作者: xianfajushi    時(shí)間: 2020-6-4 08:36
可參我這個(gè)回復(fù)的例子中的中斷使用,計(jì)時(shí)和其它操作莫放在中斷里面。https://ask.csdn.net/questions/1078609
作者: xianfajushi    時(shí)間: 2020-6-4 11:06

無標(biāo)題.png (48.07 KB, 下載次數(shù): 93)

無標(biāo)題.png

作者: 落魄書生123456    時(shí)間: 2020-6-4 21:00
xianfajushi 發(fā)表于 2020-6-4 11:06

非常感謝兄弟。
作者: 落魄書生123456    時(shí)間: 2020-6-5 16:08
angmall 發(fā)表于 2020-6-4 06:22
中斷子程序中不要寫調(diào)用延時(shí)子程序,中斷子程序也不要寫得過長,處理過多的任務(wù),要盡快處理后及時(shí)返回,如 ...

我想實(shí)現(xiàn) 測量溫度大于設(shè)置溫度,執(zhí)行中斷,LED1亮,LED2滅,最多執(zhí)行5次,LED1,LED2都不亮。關(guān)閉中斷。還能繼續(xù)測量溫度。為啥實(shí)現(xiàn)不了。

4I8VGM2VUIL`XGCEUU3@$8F.png (11.92 KB, 下載次數(shù): 112)

4I8VGM2VUIL`XGCEUU3@$8F.png

7XRWNOYFTK$Y)OZ}RZ%M$T2.png (16.2 KB, 下載次數(shù): 59)

7XRWNOYFTK$Y)OZ}RZ%M$T2.png

K%6K7P8GCW8I$}~00E[E3KF.png (26.6 KB, 下載次數(shù): 47)

K%6K7P8GCW8I$}~00E[E3KF.png

作者: 落魄書生123456    時(shí)間: 2020-6-5 16:19
angmall 發(fā)表于 2020-6-4 06:22
中斷子程序中不要寫調(diào)用延時(shí)子程序,中斷子程序也不要寫得過長,處理過多的任務(wù),要盡快處理后及時(shí)返回,如 ...

謝謝兄弟,我學(xué)到不少知識(shí),能不能看一下我發(fā)的帖子,幫我解決一下問題。
作者: 落魄書生123456    時(shí)間: 2020-6-5 16:21
落魄書生123456 發(fā)表于 2020-6-4 21:00
非常感謝兄弟。

謝謝兄弟,我自己編寫的程序,實(shí)在是寫不出來了 ,學(xué)到了不少知識(shí),煩請(qǐng)兄弟幫我解決一下我新帖子的問題。
作者: 戡拤    時(shí)間: 2022-10-19 14:44
angmall 發(fā)表于 2020-6-4 06:22
中斷子程序中不要寫調(diào)用延時(shí)子程序,中斷子程序也不要寫得過長,處理過多的任務(wù),要盡快處理后及時(shí)返回,如 ...

請(qǐng)問可以將定時(shí)器里關(guān)于PWM程序放在主程序中嗎?




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