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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于51單片機的航標燈設計

[復制鏈接]
跳轉到指定樓層
樓主
ID:356519 發表于 2018-6-25 01:08 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
基于51單片機的航標燈硬件部分
實驗原理圖
示波器模擬波形
①第一種波形
  Key1置’0’   Key0置’0’
②第二種波形
  Key1置’0’   Key0置’1’
③第三種波形
Key1置’1’   Key0置’0’
④第四種波形
Key1置’1’   Key0置’1’

單片機源碼:
  1. #include "reg51.h"
  2. #define COUNT_50MS 500 //focs=12MHz T=1us 50ms gcd:50ms的倍數
  3. #define D_OPEN  1      //開燈
  4. #define D_CLOSE !D_OPEN        //關燈
  5. sbit D=P0^0;  //燈輸出控制,高電平有效
  6. sbit OPCON=P1^2;//光照檢測  ,低電平有效(晚上)
  7. sbit Key0=P1^0;
  8. sbit Key1=P1^1;
  9. //結構體類型聲明1
  10. struct IALA
  11. {
  12.         unsigned char gcd;        //各時間間隔最大公約數
  13.         unsigned char state[6]; //無符號字符型時間常數
  14. };
  15. unsigned int State[6];
  16. //結構體全局變量定義,code:常數
  17. struct IALA code IALA4[4]={
  18.        
  19.         { 0,0,0,0,0,0,0},
  20.         {10,1,3,0,0,0,0},
  21.         {10,1,1,1,7,0,0},
  22.         {10,1,2,1,2,1,5}
  23. };
  24. //T0_初始化函數
  25. void T0_Init(void)
  26. {
  27.         TMOD=(TMOD&0xf0)|0x01;
  28.         TH0=(65536-COUNT_50MS)/256;
  29.         TL0=(65536-COUNT_50MS)%256;
  30.         ET0=1; //中斷使能
  31.         EA=1;
  32.         TR0=1; //T0啟動       
  33. }
  34. //T0_ISR程序
  35. unsigned int it=0;
  36. void T0_ISR(void) interrupt 1
  37. {
  38.         unsigned char j;
  39.         TH0=(65536-COUNT_50MS)/256;
  40.         TL0=(65536-COUNT_50MS)%256;
  41.         if(OPCON==0)//黑夜、暗照度
  42.           {
  43.                 it++;                
  44.                 for(j=0;j<6;j++)
  45.                 { if(it==State[j])
  46.                         D=(j%2)?D_OPEN:D_CLOSE; //判斷是開燈還是關燈狀態        
  47.             }
  48.                 if(it>=State[5])
  49.                 {
  50.                   it=0;
  51.                 }         
  52.         }
  53.     else          //白天、亮照度
  54.           {
  55.            D=D_CLOSE;
  56.            it = 0;
  57.           }       

  58. }
  59. //按鍵判斷
  60. unsigned char GetKey()
  61. {                               
  62.         unsigned char key;
  63.         if(Key1==0&&Key0==0)
  64.         {
  65.                 key=0;
  66.         }
  67.         else if(Key1==0&&Key0==1)
  68.         {
  69.                 key=1;
  70.         }               
  71.         else if(Key1==1&&Key0==0)
  72.         {
  73.                 key=2;
  74.         }
  75.         else if(Key1==1&&Key0==1)
  76.         {
  77.                 key=3;       
  78.         }
  79.         return(key);
  80. }
  81. void main(void)
  82. {       
  83.         unsigned char key,pre_key=0,i;
  84.         unsigned int sum;
  85.         T0_Init();
  86.         D=0;
  87.         while(1)       
  88.         {
  89.             key=GetKey();                  //獲取key1、Key0特征碼
  90.                 if(key!=pre_key)        //若有新的按鍵,載入控燈時間
  91.                 {
  92.                           sum=0;
  93.                           for(i=0;i<6;i++)
  94.                           {       
  95.                                 sum=sum+IALA4[key].gcd*IALA4[key].state[i];
  96.                                 State[i]=sum;       
  97.                           }
  98.                 }               
  99.                 pre_key=key;
  100.         }
  101. }
復制代碼

完整的Word格式文檔51黑下載地址:
實驗三 航標燈.doc (178.5 KB, 下載次數: 19)


評分

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

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 天天人人精品 | 欧美成人一区二区三区 | 视频一区二区在线观看 | 欧美日韩综合精品 | 精品国产一区二区三区观看不卡 | 国产综合精品 | 日韩在线播放第一页 | 日日日色| 能免费看的av | 中文字幕成人av | 国产福利在线视频 | 欧美在线视频一区二区 | 国产精品久久久久久婷婷天堂 | 四虎午夜剧场 | 欧美国产精品 | 黄色在线免费观看 | 日韩中文不卡 | 久久成人免费视频 | 亚洲视频在线观看免费 | 久久久久国产精品午夜一区 | 中文字字幕在线中文乱码范文 | 久久久久久免费免费 | 精品国产一区二区三区久久久久久 | 99九九久久 | 成人h动漫亚洲一区二区 | 在线播放国产一区二区三区 | 日本视频一区二区三区 | 韩国主播午夜大尺度福利 | 欧美二区在线 | 久久出精品 | 精品久久中文字幕 | 日韩一区二区三区视频在线播放 | 99成人| 中文在线一区 | 大陆一级毛片免费视频观看 | 国产一区二区三区四区区 | 日韩欧美不卡 | 每日更新av| 成人av网站在线观看 | 欧美成人精品一区二区男人看 | 青青草在线视频免费观看 |