找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4119|回復(fù): 3
收起左側(cè)

DHT11溫濕度單片機例程與原理圖

[復(fù)制鏈接]
ID:202975 發(fā)表于 2018-5-28 17:34 | 顯示全部樓層 |閱讀模式
溫濕度例程
0.png 0.png

  1. #include<reg52.h>    //包含單片機寄存器的頭文件
  2. #include<intrins.h> //包含_nop_()函數(shù)定義的頭文件
  3. #include "1602.h"
  4. #include "dht11.h"
  5. #include "ds1302.h"
  6. #include "timer.h"
  7. #define uchar unsigned char
  8. #define uint  unsigned int
  9. #define delayNOP(); {_nop_();_nop_();_nop_();_nop_();};
  10. sbit BEEP=P0^0;
  11. sbit K1=P1^1;
  12. sbit K2=P1^0;
  13. sbit K3=P1^2;
  14. sbit K4=P1^3;
  15. sbit K5=P1^4;
  16. char work_mode=0;
  17. char SET_TIME_MODE=1,SET_TEMP_MODE=1,SET_RH_MODE=1;
  18. xdata char set_H=10,set_M=10,set_S=10;
  19. xdata int SET_TEMP_H=400,SET_TEMP_L=100;
  20. xdata int SET_RH_H=60,SET_RH_L=10;

  21. void SET_TIME(char SET_TIME_mode)
  22. {
  23.         switch(SET_TIME_mode)
  24.         {
  25.                 case 1:
  26.                 PRINT_SET_TIME_hour();       
  27.                 break;//時
  28.                 case 2:
  29.                 PRINT_SET_TIME_minute();       
  30.                 break;//分
  31.                 case 3:
  32.                 PRINT_SET_TIME_second();       
  33.                 break;//秒
  34.         }
  35. }
  36. void SET_TEMP(char SET_TEMP_mode)
  37. {
  38.         switch(SET_TEMP_mode)
  39.         {
  40.                 case 1:
  41.                 PRINT_SET_TEMP_H();//設(shè)置溫度高限       
  42.                 break;//時
  43.                 case 2:
  44.                 PRINT_SET_TEMP_L();//設(shè)置溫度低限
  45.                 break;//分
  46.         }
  47. }

  48. void SET_RH(char SET_RH_mode)
  49. {
  50.         switch(SET_RH_mode)
  51.         {
  52.                 case 1:
  53.                 PRINT_SET_RH_H();//設(shè)置溫度高限       
  54.                 break;//時
  55.                 case 2:
  56.                 PRINT_SET_RH_L();//設(shè)置溫度低限
  57.                 break;//分
  58.         }
  59. }



  60. void main()
  61. {

  62.         char code sys_Data[2][11]={"SYSTEM Init","Please Wait"};
  63.         char xdata i;
  64.         BEEP=1;
  65.         LCD_1602_Init();
  66.         Initial_DS1302();
  67.                
  68.         lcd_pos(2);
  69.         for(i=0;i<11;i++)
  70.         lcd_wdat(sys_Data[0][i]);
  71.         lcd_pos(42);
  72.         for(i=0;i<11;i++)
  73.         lcd_wdat(sys_Data[1][i]);
  74.         delay(2500);
  75.         TIMER_Init();
  76. //        DS1302_SetTime(DS1302_HOUR,10);        //設(shè)置的時間是10:54:30
  77. //        DS1302_SetTime(DS1302_MINUTE,54);
  78. //        DS1302_SetTime(DS1302_SECOND,30);   

  79. while(1)
  80. {
  81.         switch(work_mode)
  82.         {
  83.                 case 0:break;//正常輸出
  84.                 case 1:SET_TIME(SET_TIME_MODE);break;//修改時間
  85.                 case 2:SET_TEMP(SET_TEMP_MODE);break;//修改溫度
  86.                 case 3:SET_RH(SET_RH_MODE);break;//修改濕度
  87.                 default:break;
  88.         }

  89. }

  90. }
復(fù)制代碼


溫濕度.7z

159.27 KB, 下載次數(shù): 38, 下載積分: 黑幣 -5

回復(fù)

使用道具 舉報

ID:1 發(fā)表于 2018-5-29 04:30 | 顯示全部樓層
代碼有問題,贈送積分收回
回復(fù)

使用道具 舉報

ID:303213 發(fā)表于 2018-5-28 21:34 | 顯示全部樓層
好像下載出現(xiàn)了問題?
回復(fù)

使用道具 舉報

ID:53978 發(fā)表于 2018-5-28 22:42 | 顯示全部樓層
復(fù)制代碼編譯錯誤
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表