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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機報警器

[復制鏈接]
跳轉到指定樓層
樓主
  1. #include<reg51.h>
  2. //------兩個常用的宏定義------//
  3. #define uchar unsigned char
  4. #define uint unsigned int

  5. void DelayMS(uint);                 //        延時函數的聲明
  6. void Time0_Init();                 //        定時器0初始化
  7. void K1_scan();
  8. void Display();
  9. sbit beep=P1^7;                     //        蜂鳴器發出聲報警
  10. sbit led=P1^0;                         //        二極管發出光報警
  11. sbit K1=P3^7;                         //        報警裝置觸發按鈕
  12. uint num1;                             // 十秒的計數變量
  13. uint  num2;                             // 六秒的計數變量
  14. uchar flag;                             // 報警按鍵檢測的標志位
  15. uchar code Ledchar[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
  16.                         0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  17. uchar LedBuffer[4]={0x00,0x00,0x00,0x00};
  18. void main()
  19. {
  20.    Time0_Init();
  21.    led=1;
  22.    beep=1;
  23.    flag=0;

  24. while(1)
  25. {
  26.    K1_scan();                          //一直檢測按鍵是否按下
  27.    while(flag==1)                  //flag=1表示按下,執行相應功能
  28.    {
  29.     led=0;                                  //開led
  30.     beep=0;                                  //開蜂鳴器
  31.     flag=0;
  32.         LedBuffer[0]=0x3f;
  33.     LedBuffer[1]=0x79;
  34.     LedBuffer[2]=0x3f;
  35.     LedBuffer[3]=0x79;                                  //清標志位
  36.         }

  37.           while(num1==100)          //五秒延時到,關閉警報
  38.            {
  39.              led=1;
  40.              beep=1;
  41.                  LedBuffer[0]=0x00;
  42.          LedBuffer[1]=0x00;
  43.          LedBuffer[2]=0x00;
  44.          LedBuffer[3]=0x00;
  45.                    }
  46.         while(num2>100 && num2<300 && flag==1)         //關閉后十秒內有鍵按下則重開警報
  47.         {
  48.            led=0;
  49.        beep=0;
  50.        flag=0;
  51.            LedBuffer[0]=0x3f;
  52.        LedBuffer[1]=0x79;
  53.        LedBuffer[2]=0x3f;
  54.        LedBuffer[3]=0x79;
  55.     }
  56. }   
  57. }               
  58. //------按鍵檢測函數------//               
  59. void K1_scan()
  60. {
  61.    while(K1==0)
  62.      {
  63.           DelayMS(10);
  64.           if(K1==1)
  65.           break;
  66.           while(K1==0);
  67.           EA=1;
  68.           flag=1;
  69.       }
  70. }         

  71. //------定時器0初始化------//
  72. void Time0_Init()
  73. {
  74.         TMOD=0x01;                //選擇定時器0工作在定時方式1
  75.         TH0=0x3c;                //定時50ms,裝初值
  76.         TL0=0xb0;
  77.         ET0=1;                  //開啟定時中斷
  78.         EA=0;                        //關總中斷
  79.         TR0=1;                        //開啟定時器T0

  80. }
  81. //------定時器0中斷------//
  82. void Timer0() interrupt 1
  83. {
  84.         TH0=0x3c;                  //重裝初值
  85.         TL0=0xb0;
  86.         Display();
  87.         num1++; //計時變量+1
  88.         num2++; //
  89.         }
  90. //------顯示函數------//
  91. void Display()
  92. {

  93.   P2=0xfe; P0=LedBuffer[3];        DelayMS(2);
  94.   P2=0xfd; P0=LedBuffer[2];        DelayMS(2);        
  95.   P2=0xfb; P0=LedBuffer[1];        DelayMS(2);
  96.   P2=0xf7; P0=LedBuffer[0];        DelayMS(2);        

  97. }
  98. //------延時函數MS級------//         
  99. void DelayMS(uint x)
  100. {
  101.         uint i,j;
  102.         for(i=x;i>0;i--)
  103.                 for(j=124;j>0;j--);
  104.                 }    }
復制代碼


評分

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

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线天堂免费中文字幕视频 | 亚洲欧美视频一区二区 | 99精品99 | 精品视频在线观看 | 国产精品久久久久久久久久免费看 | 国产精品永久 | 求个av网址 | 日本成人三级电影 | 欧美黄在线观看 | 成人免费在线观看视频 | 在线播放中文字幕 | 最新中文字幕在线播放 | 欧美视频精品 | 美女张开腿露出尿口 | 中国91av| 在线亚洲人成电影网站色www | 日韩视频在线一区 | 国产精品久久久亚洲 | a级黄色毛片免费播放视频 国产精品视频在线观看 | 三级在线视频 | 婷婷一级片 | 日本一区二区三区在线观看 | 91麻豆精品一区二区三区 | 国产一区二区三区四区三区四 | 毛片一区二区三区 | 可以在线看的黄色网址 | 精品免费国产一区二区三区四区介绍 | 99免费在线观看 | 在线午夜 | 日本成年免费网站 | 毛片免费看 | 欧美一级淫片免费视频黄 | 国产sm主人调教女m视频 | 国产成人精品999在线观看 | 一级免费黄色 | 日韩欧美视频免费在线观看 | 91久久精品国产免费一区 | 国产精品免费在线 | 午夜寂寞影院列表 | 久久久www成人免费无遮挡大片 | 国产精品一码二码三码在线 |