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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

5路AM2302 DS3231 CH376 ESP8266 24C16單片機程序

[復制鏈接]
跳轉到指定樓層
樓主
5個AM2302溫度傳感器采集溫濕度數據,通過CH376保存在U盤,保存時間間隔可調
串口發送溫濕度數據,通過esp8266上報到阿里云服務器。

制作出來的實物圖如下:


單片機源程序如下:
  1. #include"config.h"
  2. #include"12864.h"
  3. #include"iic.h"
  4. #include"main.h"
  5. #include"time.h"
  6. #include"eeprom.h"
  7. #include"ds3231.h"
  8. #include"key.h"
  9. #include"uart1.h"
  10. #include"gui.h"
  11. #include"humiture.h"
  12. #include"clock.h"
  13. #include"CH376INC.H"
  14. #include"ch376.h"
  15. #include"hal.h"
  16. #include"uart2.h"
  17. #include"alarm.h"
  18. static void InitSTC8A(void)
  19. {
  20.         P0M1 = 0x00;
  21.         P0M0 = 0x00;
  22.         P1M1 = 0x00;
  23.         P1M0 = 0x00;
  24.         P2M1 = 0x00;
  25.         P2M0 = 0x00;
  26.         P3M1 = 0x00;
  27.         P3M0 = 0x00;
  28.         P4M1 = 0x00;
  29.         P4M0 = 0x00;
  30.         P5M1 = 0x00;
  31.         P5M0 = 0x00;
  32.         P6M1 = 0x00;
  33.         P6M0 = 0x00;
  34.         P7M1 = 0x00;
  35.         P7M0 = 0x00;
  36. }


  37. void        mStopIfError( unsigned char iError )
  38. {
  39.         if ( iError == USB_INT_SUCCESS ) return;  /* 操作成功 */
  40.         printf( "Error: %02X\n", (unsigned short)iError );  /* 顯示錯誤 */
  41. //        while ( 1 ) {
  42. /*                LED_OUT_ACT( );*/  /* LED閃爍 */
  43.                 time_DelayMs( 200 );
  44. /*                LED_OUT_INACT( );*/
  45. //                time_DelayMs( 200 );
  46. //        }
  47. }
  48. void main()
  49. {
  50.         unsigned char s;
  51. //    unsigned char writebuf[1]={0xAA};
  52.     InitSTC8A();
  53.         Time0_Init();
  54.         uart1_time1_Initialization();
  55.     UartInit();
  56.         time_DelayMs(5000);
  57.         InitLcd12864();
  58.         InitIIC();
  59.         InitDS3231();
  60.         key_Initialization();
  61.     gui_DialogDesktopOpen();
  62.     init_ch376_interrecord_gap();
  63.     init_alarm_state();
  64.     s = mInitCH376Host( );  /* 初始化CH376 */
  65.     mStopIfError(s);
  66.     printf("hello word\n");
  67. //  EepromWritePage(0x600,writebuf,1);

  68. //   K5= 0;
  69.         while(1)
  70.         {
  71.                 clock_task();
  72.                 key_Task();
  73.         humiture_task();
  74.         gui_Task();
  75.         ch376_task();
  76.         humiture_tx_mqtt_task();
  77.         alarm_task();
  78. //        printf("%d\r\n",under_alarm_humiture.temperature_ch01);
  79. //        printf("%d\r\n",overtop_alarm_humiture.temperature_ch01);
  80. //        printf("%d\r\n",under_alarm_humiture.temperature_ch02);
  81. //        printf("%d\r\n",overtop_alarm_humiture.temperature_ch02);
  82. //        printf("%d\r\n",under_alarm_humiture.temperature_ch03);
  83. //        printf("%d\r\n",overtop_alarm_humiture.temperature_ch03);
  84. //        printf("%d\r\n",under_alarm_humiture.temperature_ch04);
  85. //        printf("%d\r\n",overtop_alarm_humiture.temperature_ch04);
  86. //        printf("%d\r\n",under_alarm_humiture.temperature_ch05);
  87. //        printf("%d\r\n",overtop_alarm_humiture.temperature_ch05);
  88.         
  89.    /*   
  90.             
  91.             GetRealTmp(tmp);
  92.             
  93.             buf[0] = (tmp[0]/10)+'0';
  94.             buf[1] = (tmp[0]%10)+'0';
  95.             buf[2] = '.';
  96.             buf[3] = (tmp[1]/10+'0');
  97.             buf[4] = (tmp[1]%10)+'0';
  98.             buf[5]='\0';
  99.             LcdShowStr(0,3,buf);
  100.             
  101.             sys_ticks = time_GetTicks();
  102.             sys_ticks /=1000;
  103.             buf[0] = (sys_ticks/1000000%10)+'0';
  104.             buf[1] = (sys_ticks/100000%10)+'0';
  105.             buf[2] = (sys_ticks/10000%10)+'0';
  106.             buf[3] = (sys_ticks/1000%10)+'0';
  107.             buf[4] = (sys_ticks/100%10)+'0';
  108.             buf[5] = (sys_ticks/10%10)+'0';
  109.             buf[6] = (sys_ticks%10)+'0';
  110.             buf[7] = '\0';
  111.             LcdShowStr(1,2,buf);
  112.             old_sys_ticks=time_GetTicks();
  113.             flag++;
  114.         */
  115.         }
  116. }
復制代碼

全部資料51hei下載地址:
溫度檢測5路.7z (10.53 MB, 下載次數: 72)

評分

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

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区二区三区在线免费观看 | 激情av网站 | 日韩免费在线观看视频 | 中文字幕欧美日韩一区 | 久久伊人精品 | www.99热 | 亚洲高清成人在线 | 成人欧美一区二区三区在线观看 | 成人天堂噜噜噜 | 日韩看片 | 观看毛片| 99精彩视频| 干干天天| 99草免费视频 | 日韩精品一区二区三区在线观看 | 韩日在线视频 | 8x国产精品视频一区二区 | 国产一区二区精品自拍 | 婷婷色国产偷v国产偷v小说 | 亚洲成人网在线 | 精品国产一区二区在线 | 九九九精品视频 | 亚洲精品久久久久久首妖 | 91玖玖| 精品国产伦一区二区三区观看说明 | 亚洲一区三区在线观看 | 亚洲乱码国产乱码精品精98午夜 | 一区视频 | 午夜影院在线视频 | a级大片免费观看 | 久久久tv| 一级毛片色一级 | 亚洲精品久久视频 | 亚洲高清在线观看 | 国产亚洲二区 | 亚洲成网 | 成人av在线网站 | 久久中文一区二区 | 99精品免费视频 | 免费人成激情视频在线观看冫 | 你懂的在线视频播放 |