新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于nRF24L01的無線溫濕度檢測系統設汁

        基于nRF24L01的無線溫濕度檢測系統設汁

        作者: 時間:2012-03-01 來源:網絡 收藏

        2.3 串行通信模塊
        主機單片機接收到的數據后,經MAX232電平轉換可實現單片機程序下載與升級,同時可實現單片機與PC機(上位機)的通信,以便將顯示數據信息通過此電路傳送到PC機,并存PC機上顯示,其串行通信電路如圖6所示。

        本文引用地址:http://www.104case.com/article/155230.htm

        i.JPG



        3 軟件設計
        3.1 下位機軟件
        本系統使用C語言編程,應根據設計任務的要求確定系統程序的完整結構,盡可能采用模塊化程序設計方法,將任務劃分為相對獨立的功能模塊,明確各模塊的功能、時間順序和相互關系,系統的軟件設計可以分為幾個部分,首先是各個模塊的底層驅動程序編寫,而后是系統聯機調試,最后再編寫上位機的系統程序。
        主程序是控制和管理的核心,系統上電后,首先進行初始化,系統開始正常運轉后,再進行溫、濕度的監測與處理等操作。
        3.2 上位機軟件設計
        系統上位機能完成的功能有顯示串口號,提示串口是否已被成功打開;同時,上位機能夠與下位機同步顯示溫度,而且能夠實時曲線顯示溫度;上位機能夠設置下限和上限,當高于上限或低于下限溫濕度時,還能夠報警。將主機單片機的控制電路串行接口與電腦串口經過電平轉換連接后,選擇正確的通信協議,設置好波特率,即可進行通信。圖7所示是上位機操作界面圖。

        a.JPG


        上位機軟件可在PC機上通過VC6.0編寫,主要是對MSComm控件及CserialPort類進行操作。
        首先是串口設置。本系統利用的是CSERIALPORT類中的初始化函數InitPort (this,nport,nbtl,‘N’,8,1,m_dwCommEvents,512).其巾nport為串口號,nbtl為波特率,可利用串口設置對話框中的串口號和波特率兩個組合框分別得到初始化函數中的nport和nbtl。
        其次是對溫濕度上下限的設置。可利用CSERIALPORT類中的啟動串口監測進程函數Start Monitoring、發送字符串函數WriteToPort以及關閉串口進程StopMonitoring來進行溫度上下限的設置,其信息通過這些函數發送到串口,單片機從RS232上收到數據后,與自身的溫度相比較,再進行相應的處理。
        第三是曲線顯示。動態曲線顯示可利用CHistogram類中的SetRange(200,400),SetPos(temp)函數,SetRange設置上下極限值,SetPos是在圖上顯示相應的數據點,temp是從單片機傳來的溫濕度數據的處理結果,具體的移動曲線可由CHistogram類中函數實現。

        4 結論
        經測試,在發射接收模塊沒加天線的情況下,發射接收模塊在大多數情況下的數據傳輸距離在200 m左右,發射頭發射功率、接收頭接收靈敏度等因素可能會影響傳輸距離,若外加天線,則會大大增加傳輸距離。另外,在調試過程中,振蕩電阻必須匹配,否則接收距離會變短甚至無法接收。
        本系統的數字信號由單片機采樣,DHT11的數字溫濕度傳感器構成的實時監控系統具有精度高、抗干擾能力強、電路簡單等諸多優點。然后利用單片機與PC機的通信可將數據送到PC機進行數據的存儲、后期處理與顯示。本系統數據處理功能強大、顯示直觀、界面友好、性價比高,可廣泛應用于工業控制、儀器、儀表、農業養殖及智能家居等諸多領域。


        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 铜川市| 开鲁县| 甘孜县| 晋宁县| 阳谷县| 阿瓦提县| 凌云县| 大余县| 阿尔山市| 炉霍县| 丁青县| 祥云县| 洛扎县| 双桥区| 长子县| 乌海市| 满城县| 镇原县| 新田县| 宝丰县| 南宫市| 定西市| 东源县| 瑞昌市| 呼和浩特市| 夏津县| 苍南县| 萨迦县| 普兰店市| 清原| 江源县| 鹤山市| 凤城市| 光山县| 施秉县| 互助| 阿拉善右旗| 美姑县| 府谷县| 当雄县| 从江县|