<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 采用單片機的無線溫度監(jiān)測系統(tǒng)簡介

          采用單片機的無線溫度監(jiān)測系統(tǒng)簡介

          作者: 時間:2012-11-10 來源:網(wǎng)絡 收藏

          本文引用地址:http://www.ex-cimer.com/article/170694.htm

          2.2 軟件程序的設計

          由于由兩個模塊構(gòu)成, 所以軟件程序的設計也分為采集發(fā)送模塊程序設計和數(shù)據(jù)接受分析控制模塊程序設計。

          2.2.1 采集發(fā)送模塊

          主要需要設計的程序有NRF905 的內(nèi)部寄存器配置,傳感器溫度采集程序,液晶顯示模塊程序,報警程序。程序流程圖如圖3:

          主程序流程圖

          圖3 主程序流程圖

          2.2.2 數(shù)據(jù)接受分析控制模塊

          主要需要設計的程序有NRF905 的內(nèi)部寄存器配置,USB模塊的驅(qū)動編寫,上位機程序的建立,由于篇幅有限,源代碼及流程圖不再給出。

          3 的工作流程

          本系統(tǒng)主要由兩個模塊組成, 溫度采集發(fā)送模塊和數(shù)據(jù)接收監(jiān)控模塊。

          3.1 數(shù)據(jù)采集發(fā)送模塊

          該模塊的主要功能是采集溫度和發(fā)送數(shù)據(jù)。主控發(fā)出命令開始有DS18B20 進行溫度采集, 溫度傳感器將采集到的溫度傳回主控芯片,在1602 上進行顯示,然后主控芯片通過SPI 總線將數(shù)據(jù)傳送給發(fā)送模塊NRF905,由發(fā)送模塊將數(shù)據(jù)發(fā)送出去。同時主控芯片會檢測溫度是否異常,當溫度出現(xiàn)異常時會發(fā)出報警信號,同時啟動異常處理模塊。

          具體工作流程如圖4:

          采集發(fā)送模塊工作流程

          圖4 采集發(fā)送模塊工作流程

          3.2 數(shù)據(jù)接收監(jiān)控模塊

          該模塊的主要功能是接收和處理數(shù)據(jù), 由控制模塊接收數(shù)據(jù), 同時控制USB 模塊將數(shù)據(jù)發(fā)送到PC 機上去,PC 機接收到溫度后會對溫度進行分析處理,當溫度由異常時,會發(fā)出報警信號,同時通過將控制指令發(fā)送至,通過無線模塊來遠程控制異常處理模塊執(zhí)行工作, 從而實現(xiàn)異常自動處理和雙報警, 從而最大限度的確保被監(jiān)控地的預警和安全。具體工作流程如圖5:

          接受監(jiān)控模塊工作流程

          圖5 接受監(jiān)控模塊工作流程

          4 結(jié)語

          對本系統(tǒng)進行遠距離具體溫度測試有, 經(jīng)數(shù)據(jù)對比發(fā)現(xiàn)實地溫度采集與上位機顯示數(shù)據(jù)完全吻合, 且能實現(xiàn)實時溫度監(jiān)控。同時可以通過PC 機對單片機進行遠程控制,性能穩(wěn)定。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();