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

標題: 如何改變51單片機定時器的定時時間 [打印本頁]

作者: 溫柔的郎    時間: 2020-2-28 11:45
標題: 如何改變51單片機定時器的定時時間
各位大神,問下51單片機定時器如何改變定時器的定時時間設置值,
比如定時器來控制燈閃爍,在運行過程中,設置2個按鈕來控制定時時間,1個時間增加,1個時間減少,這個控制的時間如何才能傳送給定時器啊,有知道的大神指點指點啊,


作者: 之一知足    時間: 2020-2-28 13:07
固定時間就好,比如你開一個1ms的定時器
定時器中斷函數里
{

}
作者: 之一知足    時間: 2020-2-28 13:12
固定定時器時間即可,比如你開一個1ms的定時器中斷
定時器中斷服務函數
{
  ... ...(配置定時器參數)
   static int i;
   i++;
   if(i==某個變量){i==0;執行啥啥啊}//i要清零
}
你用按鍵控制“某個變量”的值改變  比如說“某個變量”=100,那不就是1ms*100=100ms一次執行什么什么
作者: brew9    時間: 2020-2-28 13:16


請參考:
http://www.raoushi.com/bbs/dpj-147511-1.html

作者: mffhxa    時間: 2020-2-28 13:28
兩按鍵分別接int0,int1,中斷程序里重寫初值、啟動定時器。
作者: weihongping    時間: 2020-2-28 17:15
  for(  ;;)
  {

        if(P10==0)        //        按鍵+
        {
                THTL++;
        }
        else
        {
                if(P11==0)  //按鍵-
                        THTL--;
        }
         TL0=THTL;
         TH0=THTL>>8;

   }
//大致可以參考一下。
作者: ccczzz    時間: 2020-2-29 13:34
1. 晶振若為11.0592M,每計數一次用時12/11.0592M=1.085us
2. TMOD取0x10,即模式1——16位計數器(0~65535)
3. 計時2ms,則2ms/1.085us=1843,故TH0=(65536-1843)/256,TL0=(65536-1843)%256

#include<reg52.h>
sbit LED=P1^2;

void Init_Timer1(void)
{
TMOD |= 0x10;                 
TH1=(65536-1843)/256;
TL1=(65536-1843)%256;
EA=1;
ET1=1;
TR1=1;  
}

main()
{
Init_Timer1();
while(1);
}

void Timer1_isr(void) interrupt 3 using 1
{
TH1=(65536-1843)/256;
TL1=(65536-1843)%256;
LED=~LED;
}
可以看看,像這種問題網上有不少,可以參考參考。
作者: lele5211314    時間: 2020-2-29 17:12
就在按鍵程序中修改啊
作者: 溫柔的郎    時間: 2020-5-9 21:59
謝謝大家都熱情指點!!!網絡中還是好人多啊!!!
我剛接觸單片機,對這些都不熟!!希望師傅們不要嘲笑啊!!
再次感謝大家都指點!!




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