国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee

ELEOK

標題: 遠程果蔬工廠監控系統設計 LabVIEW+51單片機程序 [打印本頁]

作者: coolfire    時間: 2020-12-9 16:16
標題: 遠程果蔬工廠監控系統設計 LabVIEW+51單片機程序
果蔬的保鮮對儲存環境的溫濕度要求極高,因此對于果蔬工廠來說,對儲藏果蔬倉庫的環境的溫濕度實時且準確的監測具有重要意義。本設計基于STC89C51單片機的果蔬工廠倉儲環境的智能檢測系統。系統采用無線zigbee組網進行遠程數據傳輸,采用集溫濕度傳感器與A/D轉換器為一體的DHT11芯片作為溫濕度采集模塊,上位機采用美國NI公司的Labview對環境采集的溫濕度數據的進行顯示。其他部分包括下位機LCD1602的顯示,串行通信模塊以及超限報警處理電路,分別實現了上下位機溫濕度給定值的設定和超限報警處理。本文主要介紹了系統的硬件軟件實現原理,對硬件結構原理和軟件實現要點進行分析。系統結構設計明晰、實用,提高了測量精度和效率。


51單片機部分源碼:
  1. #include <reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
  2. #include "intrins.h"
  3. #include <math.h>
  4. #include "lcd1602.h"
  5. #include "dht11.h"
  6. #include "dht11_1.h"
  7. #include "usart.h"
  8. #define uchar unsigned char
  9. #define uint unsigned int        

  10. uint flag_1000=0;
  11. uchar rec_dat[12];
  12. uchar rec_dat1[12];
  13. uchar sbuf[8];

  14. /*******************************************************************************
  15. * 函 數 名         : Timer0Init
  16. * 函數功能                   : 定時器0初始化
  17. * 輸    入         : 無
  18. * 輸    出         : 無
  19. *******************************************************************************/
  20. void Timer0Init()
  21. {
  22.         TMOD|=0X01;//選擇為定時器0模式,工作方式1,僅用TR0打開啟動。
  23.         TH0=0XFC;        //給定時器賦初值,定時1ms
  24.         TL0=0X18;        
  25.         ET0=1;//打開定時器0中斷允許
  26.         EA=1;//打開總中斷
  27.         TR0=1;//打開定時器                        
  28. }

  29. /*------------------------------------------------
  30.                     主函數
  31. ------------------------------------------------*/


  32. void main(void)
  33. {
  34.         uchar i,j;
  35.         //Timer0Init();
  36.         LCD_Init();        
  37.         UartInit();                   // 串口初始化
  38.         LCD_Clear();//清屏
  39.         delay_ms(300);    //DHT11上電后要等待1S以越過不穩定狀態在此期間不能發送任何指令
  40.         while (1)
  41.          {
  42.                    DHT11_receive();
  43.             DHT11_1_receive();        
  44.                 for(i=0;i<11;i++)
  45.                 {
  46.                         LCD_Write_Char(i,0,rec_dat[i]);
  47.                         LCD_Write_Char(i,1,rec_dat1[i]);
  48.                 }
  49.         //  if(        flag_1000==1)
  50.         //  {
  51.           //flag_1000=0;
  52.                         for(j=0;j<8;j++)
  53.                         {
  54.                         uart_send_byte(sbuf[j]);
  55.                         }
  56.                 //}
  57.         }
  58. }
  59. 完整源碼見附件
復制代碼

監控系統設計labview和51單片機源碼.rar (79.6 KB, 售價: 5 E幣)






歡迎光臨 ELEOK (http://m.afoofa.cn/) Powered by Discuz! X5.0