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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4197|回復: 0
打印 上一主題 下一主題
收起左側

用單片機定時器實現流水燈即時熄滅和暫停的Proteus仿真+代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:524018 發表于 2019-5-1 12:07 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
原代碼
按鍵1 控制亮滅,按下時燈滅,再按下繼續流水
按鍵2 控制暫停,按下時暫停,保持該LED燈亮,再按下繼續

單片機源程序如下:
  1. #include<reg52.h>
  2. sbit KEY=P3^2;                 //按鍵1
  3. sbit KEY1=P3^3;                //按鍵2
  4. unsigned char code d[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,
  5. 0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0x00,0xff}; //燈的效果(常量)
  6. void time();
  7. void timer();//調用中斷
  8. bit flag;         //標志位1
  9. bit flag1;          //標志位2

  10. void main()
  11. {
  12. time();
  13. while(1)
  14. {
  15.   if(!KEY)
  16.         {
  17.    
  18.          if(!KEY)
  19.           {
  20.             while(!KEY);                          //控制燈停止的按鍵
  21.                  {flag=~flag;}
  22.           }
  23.         }

  24. if(!KEY1)
  25.            {
  26.    
  27.          if(!KEY1)
  28.           {
  29.             while(!KEY1);                         //控制燈熄滅的按鍵
  30.                  {flag1=~flag1;}
  31.           }
  32.         }        
  33. }
  34. }

  35. void time()
  36. {
  37.         TMOD|=0x01;               
  38.         //設置定時器工作模式TMOD(定時器工作方式寄存器);
  39.         //GATE(定時器/計數器的開關控制選項)設置為0;即定時器/計數器的開關控制僅由TCON寄存器中的TRx(x = 0,1)控制
  40.         //C/T位(定時器模式和計數器模式選擇位)設置為0使其工作在定時器模式下;將該位置1則為定時器模式。
  41.         //M1M0設置為01,使用16位計數

  42.         TH0 = 0xD8;            //65536-10000
  43.         TL0 = 0xF0;            //55536
  44.         EA =1;                         //開啟總中斷
  45.         EX0=1;                        //開啟0號外部中斷
  46.         IT0=1;                        //設置外部中斷0觸發方式,1 - 負跳變觸發
  47.         TR0=1;                         //定時器0運行控制位,將該位置1時啟動定時器0
  48.         ET0=1;                         //定時器/計數器0中斷允許位

  49. }

  50. void timer() interrupt 0
  51. {
  52.            P2=0xff;
  53. }

  54. void timeer() interrupt 1
  55. {
  56.         static unsigned int k=0;
  57.         static unsigned char i=0;

  58.         TH0=(65536-2000)/256;
  59.         TL0=(65536-2000)%256;                //實現延時

  60.         if((!flag)&&(!flag1))
  61.         {
  62.                 k++;
  63.                 if(k<150)                                //當兩個按鍵都沒有被按下時,燈進行流水效果
  64.                 {P2=d[i];}
  65.                          if(k==300)
  66.                         {
  67.                                 k=0;
  68.                                 i++;
  69.                                 if(i==18)
  70.                                 i=0;
  71.                         }  
  72.         }                        
  73. }
復制代碼

全部資料51hei下載地址:
Proteus 8.7模擬.zip (52.52 KB, 下載次數: 18)
hex原文件.zip (607 Bytes, 下載次數: 12)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美激情久久久 | www.中文字幕.com | 亚洲一区二区三区在线 | 狠狠躁躁夜夜躁波多野结依 | 成人精品一区二区三区中文字幕 | 欧美在线观看一区二区 | 欧美一区二区三区久久精品 | 亚洲精品一区二区 | 日本福利在线 | 国产精品国产成人国产三级 | 久久在视频 | 古装三级在线播放 | 青青草精品 | 欧美vide | 国产成人精品免费视频大全最热 | 99精品视频在线 | 亚洲天堂成人在线视频 | 99热视| 日韩中字幕| 午夜视频在线观看一区二区 | 午夜激情免费视频 | 嫩草视频网 | 国产日韩一区二区 | 国产精品美女久久久久久不卡 | 久久国产激情视频 | 最新黄色在线观看 | 美女天天操 | av在线黄| 久久狠狠 | 色婷婷综合网 | 日韩精品成人免费观看视频 | 天天影视网天天综合色在线播放 | 99精品视频一区二区三区 | 亚洲精品68久久久一区 | 中文字幕在线网 | 国产清纯白嫩初高生视频在线观看 | 中文二区 | 国产成人一区二区三区电影 | 日本黄色不卡视频 | 免费高潮视频95在线观看网站 | 国产高清在线精品 |