久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 單片機(jī)控制定時(shí)燈亮程序問(wèn)題 [打印本頁(yè)]

作者: 吳育竹    時(shí)間: 2019-4-18 21:40
標(biāo)題: 單片機(jī)控制定時(shí)燈亮程序問(wèn)題
各位老師好,我的這段程序想在設(shè)定的時(shí)間到達(dá)時(shí),P1^7對(duì)應(yīng)的LED 燈亮,但實(shí)際測(cè)試時(shí)燈不亮,能請(qǐng)各位老師幫忙看一下嗎,謝謝

單片機(jī)源程序如下:
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. uchar hour_now,hour_set,min_now,min_set,sec_now,sec_set;
  5. uint time_t;
  6. sbit led7=P1^7;
  7. sbit beep=P2^3;
  8. sbit led0=P1^0;
  9. void delay1ms(uint x)
  10. {  

  11.          TMOD=0X20;
  12.          TR1=1;
  13.          while(x--)
  14.           {      
  15.            TH1=0Xfc;
  16.            TL1=0X18;
  17.            while(!TF1);
  18.            TF1=0;
  19.            time_t++;
  20.                 }
  21.          TR1=0;

  22. }
  23. void dingshi()
  24. {
  25. while(1)
  26. {
  27.         if((hour_now=hour_set)&&(min_now=min_set)&&(sec_now=sec_set))
  28.          
  29.     led7=0;
  30.     while(1)
  31.                 delay1ms(20);
  32.             sec_now++;
  33.     if(sec_now>=60)
  34.           {
  35.                      sec_now=0;
  36.                      min_now++;
  37.                   if(min_now>=60)
  38.                   {  
  39.                               min_now=0;
  40.                               hour_now++;
  41.                           if(hour_now>=24)
  42.                           {
  43.                                        hour_now=0;
  44.          }
  45.        }
  46.      }

  47. }
  48. }
  49. void main()
  50.          {
  51.                  hour_now=23;
  52.      min_now=59;
  53.      sec_now=50;
  54.      hour_set=0;
  55.      min_set=0;
  56.      sec_set=0;      
  57.      while(1)
  58.                 {
  59.                                         dingshi();
  60.                 }
  61.         }
復(fù)制代碼



作者: yzwzfyz    時(shí)間: 2019-4-19 08:36
你需要補(bǔ)“中斷”的課,弄清楚什么是“中斷”!
作者: HC6800-ES-V2.0    時(shí)間: 2019-4-19 08:36
程序問(wèn)題嘛
你的亮燈只能在開(kāi)機(jī)時(shí)判斷一次,以后就再也不判斷了,怎么會(huì)亮呢。
while(1)
{
        if((hour_now=hour_set)&&(min_now=min_set)&&(sec_now=sec_set))
         
    led7=0;//á???μ????e
    while(1)
                delay1ms(20);
進(jìn)入第二個(gè)while后,就再也不會(huì)去判斷是否亮燈了!

還是上面那部分程序,第二個(gè)while后,沒(méi)有{},則程序就會(huì)一直一直一直一直一直......執(zhí)行delay1ms(20);
時(shí)間再也不會(huì)增加了。
作者: wulin    時(shí)間: 2019-4-19 08:39
你的程序錯(cuò)誤不少,給你改了,你試試。
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. uchar hour_now,hour_set,min_now,min_set,sec_now,sec_set;
  5. uint time_t;
  6. sbit led7=P1^7;
  7. sbit beep=P2^3;
  8. sbit led0=P1^0;

  9. void Timer0Init()                //50毫秒@12.000MHz
  10. {
  11.         TMOD= 0x01;                //設(shè)置定時(shí)器模式
  12.         TL0 = 0xB0;                //設(shè)置定時(shí)初值
  13.         TH0 = 0x3C;                //設(shè)置定時(shí)初值
  14.         TF0 = 0;                //清除TF0標(biāo)志
  15.         TR0 = 1;                //定時(shí)器0開(kāi)始計(jì)時(shí)
  16. }
  17. void dingshi()
  18. {
  19.         uint i;       
  20.         if((hour_now==hour_set)&&(min_now==min_set)&&(sec_now==sec_set))
  21.         {
  22.                 led7=0;
  23.                 TR0 =0;                //關(guān)定時(shí)器
  24.                 beep=0;                //蜂鳴器響
  25.                 i=50000;
  26.                 while(i--);//延時(shí)約0.5秒
  27.                 beep=1;                //蜂鳴器停
  28.         }
  29. }
  30. void main()
  31. {
  32.         hour_now=23;
  33.         min_now=59;
  34.         sec_now=50;
  35.         hour_set=0;
  36.         min_set=0;
  37.         sec_set=0;      
  38.         Timer0Init();
  39.         while(1)
  40.         {
  41.                 if(TF0==1)
  42.                 {
  43.                         TF0=0;
  44.                         time_t++;
  45.                         if(time_t==20)
  46.                         {
  47.                                 time_t=0;
  48.                                 sec_now++;
  49.                                 if(sec_now==60)
  50.                                 {                               
  51.                                         sec_now=0;
  52.                                         min_now++;
  53.                                         if(min_now==60)
  54.                                         {       
  55.                                                 min_now=0;
  56.                                                 hour_now++;
  57.                                                 if(hour_now==24)
  58.                                                         hour_now=0;
  59.                                         }
  60.                                 }
  61.                         }
  62.                 }
  63.                 dingshi();
  64.         }
  65. }
復(fù)制代碼

作者: uguigu吐故以后    時(shí)間: 2019-4-19 10:35
定時(shí)器未初始化,中斷標(biāo)志未清
作者: 吳育竹    時(shí)間: 2019-4-21 12:08
yzwzfyz 發(fā)表于 2019-4-19 08:36
你需要補(bǔ)“中斷”的課,弄清楚什么是“中斷”!

嗯嗯謝謝老師指導(dǎo)。
作者: 吳育竹    時(shí)間: 2019-4-21 12:09
HC6800-ES-V2.0 發(fā)表于 2019-4-19 08:36
程序問(wèn)題嘛
你的亮燈只能在開(kāi)機(jī)時(shí)判斷一次,以后就再也不判斷了,怎么會(huì)亮呢。
while(1)

嗯嗯明白老師的意思了,謝謝!
作者: 吳育竹    時(shí)間: 2019-4-21 12:11
wulin 發(fā)表于 2019-4-19 08:39
你的程序錯(cuò)誤不少,給你改了,你試試。

謝謝老師,程序是對(duì)的,格式也很整齊,很感謝老師的指導(dǎo)
作者: 吳育竹    時(shí)間: 2019-4-21 12:11
uguigu吐故以后 發(fā)表于 2019-4-19 10:35
定時(shí)器未初始化,中斷標(biāo)志未清

嗯嗯明白了,謝謝你
作者: eeinet    時(shí)間: 2019-4-21 22:50
可以找一下郭天祥的視頻資料




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美视频在线播放 | 久草视频观看 | 国产精品欧美一区二区三区不卡 | 欧美成人在线影院 | 成人亚洲性情网站www在线观看 | 亚洲精品资源 | 欧美精品一区二区三区在线播放 | 毛片综合| 国产高清视频一区 | 欧美一级片a | 成人乱人乱一区二区三区软件 | 亚洲中国字幕 | 亚洲视频三区 | 伊人色综合久久天天五月婷 | 成人在线小视频 | 精品久久成人 | 亚洲欧美日韩精品久久亚洲区 | 免费在线观看一区二区 | 久久久久久久久久久高潮一区二区 | 亚洲精品欧美 | 国产精品免费一区二区三区 | 久久久国产精品一区 | 狠狠色综合欧美激情 | 四虎影视在线 | 色综合天天天天做夜夜夜夜做 | 色综合一区二区 | 国产男女精品 | 国产精品精品视频一区二区三区 | 成人精品系列 | 精品国产欧美 | 亚洲一区 中文字幕 | 蜜臀久久 | 精品一二区 | 精品一区二区三区四区视频 | 久久电影一区 | 久久国产精品久久久久久久久久 | 国产成视频在线观看 | av在线播放免费 | 亚洲精品国产电影 | 国产日韩在线观看一区 | 久久精品国产一区二区电影 |