基于單片機(jī)的網(wǎng)絡(luò)控制實(shí)現(xiàn)溫控系統(tǒng)的設(shè)計(jì)
2.2 溫度傳感器采集電路
DS18B20是一款小巧的溫度傳感器,它通過(guò)單總線協(xié)議與MCU進(jìn)行通信。MCU與DS18B20的硬件連接關(guān)系示意圖如圖所示,可知MCU的P2.4端口與DS18B20的DQ端連接,通過(guò)在MCU的IO端口模擬1-Wire協(xié)議的時(shí)序就能實(shí)現(xiàn)對(duì)DS18B20的讀寫(xiě)了。溫度傳感器采集電路如圖3所示。本文引用地址:http://www.ex-cimer.com/article/170496.htm
3 系統(tǒng)軟件設(shè)計(jì)
本設(shè)計(jì)的軟件部分主要包括實(shí)現(xiàn)溫度的采集和控制模塊,數(shù)據(jù)傳輸?shù)膶?shí)現(xiàn),客戶(hù)端的遠(yuǎn)程控制3大部分。
3.1 溫度的采集和控制模塊
這個(gè)模塊的主要作用在于控制硬件設(shè)備,完成溫箱的溫度采集、顯示、控制功能。溫度的采集和控制模塊流程圖如圖4所示。
當(dāng)將要采集溫度數(shù)據(jù)時(shí),MSP430F149將通過(guò)溫度傳感器采集溫度,所用到得函數(shù)有:函數(shù)名稱(chēng):ReadTemp,功能:從DS18B20的Scratch Pad讀取溫度轉(zhuǎn)換結(jié)果,返回值:讀取的溫度數(shù)值。函數(shù)名稱(chēng):uint Do1Convert(void),功能:控制DS18B20完成一次溫度轉(zhuǎn)換,返回值:測(cè)量的溫度數(shù)值。
然后進(jìn)行A/D裝換將根據(jù)采集到的溫度數(shù)據(jù)設(shè)置寄存器的值,處理器讀取溫度數(shù)據(jù)到網(wǎng)絡(luò)控制器CS8900A中的發(fā)送控制寄存器TXCMD(000 4H),如果寫(xiě)入數(shù)據(jù),那么網(wǎng)卡芯片在全部數(shù)據(jù)寫(xiě)入后開(kāi)始發(fā)送數(shù)據(jù),CPU通過(guò)發(fā)送數(shù)據(jù)寄存器PORT0(0000H)發(fā)送數(shù)據(jù),最后通過(guò)網(wǎng)絡(luò)發(fā)送到客戶(hù)端上??蛻?hù)端通過(guò)網(wǎng)絡(luò)將命令發(fā)送到網(wǎng)絡(luò)控制器CS8900A中的發(fā)送數(shù)據(jù)長(zhǎng)度寄存器TXLENG(0006H),首先寫(xiě)入發(fā)送數(shù)據(jù)長(zhǎng)度,然后將數(shù)據(jù)通過(guò)PORT0寫(xiě)入芯片進(jìn)行接收,執(zhí)行相應(yīng)的控制操作。
評(píng)論