亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機智能感應調光臺燈設計論文與源程序下載

[復制鏈接]
跳轉到指定樓層
樓主
分享一個智能感應調光臺燈,單片機資源共享群293194307有大量學習資源歡迎一起學習交流



臺燈的程序流程圖:

本設備可根據人體感應和環境光線來控制,自動實現人來燈亮,人走燈滅的功能
目 錄


1 引言    1
2 人體感應燈整體方案設計    1
3 總體工作方案電路圖    2
4 人體感應燈硬件電路設計    4
4.1 STC89C51單片機    4
4.2光控模塊    4
4.2.1 光敏電阻    4
4.2.2 光控模塊設計    4
4.3人體檢測模塊    6
4.3.1紅外熱釋電處理芯片BISS0001    6
4.3.2 工作原理    7
4.3.3 功能特點    8
4.5控制模塊    9
4.6按鍵電路設計    10
5 焊接與調試    11
總結    14
參考文獻    15

論文內容預覽:


單片機源程序如下:
  1. #include<reg51.h>
  2. #include"lcd.h"
  3. #include"temp.h"
  4. /*     程序修改    焦建梅
  5.                         程序設計:lcd1602 data:P0
  6.                                                          rs   P3^5
  7.                                              rw   P2^7
  8.                                              en   P3^4
  9.                                     18b20   P2^2
  10.                                  人體紅外  P1^0
  11.                                    光敏    P1^5
  12.                                    繼電器   P1^6                                                         
  13. */
  14. #include<intrins.h>
  15. #define uc unsigned char
  16. #define ui unsigned int
  17. sbit GM=P2^1;        //光敏
  18. sbit RT=P2^0;        //人體紅外
  19. sbit KZ=P2^2;        //繼電器控制燈
  20. void delay1(ui x)//延時函數1s
  21. {
  22.         ui i,j;
  23.         for(i=0;i<x;i++)
  24.         for(j=0;j<110;j++);
  25. }
  26. void initgr()//初始化函數
  27. {
  28.         GM=0;//光敏置低
  29.         RT=0;//人體紅外置低
  30. }

  31. void work()//工作函數
  32. {
  33.         if(GM==1)//光敏判斷是否為黑天
  34.         {
  35.                 delay1(20);//延時20ms
  36.                 if(GM==1)//確定是否為黑天
  37.                 {                   //如果為黑天
  38.                         if(RT==1)//檢測人體
  39.                         {                 //如果檢測到人體
  40.                                 KZ=0;//繼電器吸合
  41.                         }
  42.                         else
  43.                         {
  44.                                 delay1(5000);//延時5s
  45.                                 if(RT==0)//如果沒有感應到人體
  46.                                 KZ=1;//繼電器斷開
  47.                                 else//否則
  48.                                 KZ=0;//繼電器吸合
  49.                         }
  50.                 }
  51.         }
  52.         else if(GM==0)//如果光敏檢測的為白天
  53.         {
  54.                 delay1(20);//延時20ms
  55.                 if(GM==0)//確定是否為白天
  56.                 {                  //如果為白天
  57.                         KZ=1;//繼電器斷開
  58.                 }
  59.         }
  60. }



  61. void LcdDisplay(int);
  62. void main()
  63. {
  64.           initgr();//初始化函數
  65.           LcdInit();                         
  66.           LcdWriteCom(0x88);       
  67.           LcdWriteData('C');
  68.         while(1)
  69.           {
  70.                 LcdDisplay(Ds18b20ReadTemp());
  71.                         work();//調用工作函數
  72.           }
  73. }



  74. void LcdDisplay(int temp)          
  75. {   
  76.   unsigned char datas[] = {0, 0, 0, 0, 0};
  77.         float tp;  
  78.         if(temp< 0)
  79.           {
  80.                   LcdWriteCom(0x80);               
  81.             LcdWriteData('-');            
  82.                 temp=temp-1;
  83.                 temp=~temp;
  84.                 tp=temp;
  85.                 temp=tp*0.0625*100+0.5;       
  86.           }
  87.         else
  88.           {                       
  89.                   LcdWriteCom(0x80);               
  90.             LcdWriteData('+');        
  91.                   tp=temp;
  92.                   temp=tp*0.0625*100+0.5;       
  93.            }
  94.         datas[0] = temp / 10000;
  95.         datas[1] = temp % 10000 / 1000;
  96.         datas[2] = temp % 1000 / 100;
  97.         datas[3] = temp % 100 / 10;
  98.         datas[4] = temp % 10;

  99.         LcdWriteCom(0x82);                    //寫地址 80表示初始地址
  100.         LcdWriteData('0'+datas[0]); //百位

  101.         LcdWriteCom(0x83);                    //寫地址 80表示初始地址
  102. ……………………

  103. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
智能臺燈.zip (396.95 KB, 下載次數: 57)


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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表