本帖最后由 engineerarui 于 2022-7-25 16:07 編輯
將單片機(jī)項(xiàng)目實(shí)訓(xùn)——基于nRF905的多點(diǎn)溫度無線采集系統(tǒng)分享出來,如有不足,敬請指出。
一、設(shè)計(jì)要求系統(tǒng)采用NRF905作為無線收發(fā)器,四個從機(jī)采集到溫度信息分別發(fā)送給主機(jī),主機(jī)顯示四點(diǎn)的溫度信息,并且可通過按鍵設(shè)定溫度的上下限報警值,超限能夠進(jìn)行聲光報警。 二、方案設(shè)計(jì) 隨著技術(shù)的發(fā)展,基于無線的信息傳輸方式越來越成熟,與有線的信息傳輸方式相比,無線的方式易于安裝和后期維護(hù)。NRF905單片無線接收器是挪威Nordic公司推出的單片射頻發(fā)射器芯片,工作電壓為1.9V至3.6V,工作于433、868、915MHZ 3個ISM頻道,通過SPI接口與MCU連接。由于51單片機(jī)沒有SPI接口,可以通過軟件模擬SPI通信協(xié)議進(jìn)行通信。系統(tǒng)方案框圖如下圖所示。 三、硬件電路設(shè)計(jì)從機(jī)用DS18B20溫度傳感器進(jìn)行溫度采集,DS18B20是美國Dallas半導(dǎo)體公司的數(shù)字化溫度傳感器,其單總線控制方式最大限度的節(jié)省單片機(jī)有限的IO口資源,其I/O口和單片機(jī)第8腳P17相連。從機(jī)電路原理圖如下圖所示。 主機(jī)使用LCD1602液晶屏進(jìn)行顯示,LCD1602液晶屏內(nèi)置常用的ASCII碼,有兩種驅(qū)動方式,本設(shè)計(jì)考慮到顯示數(shù)據(jù)的刷新速度,決定采用并口驅(qū)動方式;按鍵使用獨(dú)立按鍵控制方式;聲光報警部分采用蜂鳴器加LED指示。主機(jī)電路原理圖如下圖所示。 無線收發(fā)器均采用挪威Nordic公司推出的NRF905單片無線收發(fā)器。 思考:通過對比從機(jī)、主機(jī)原理圖,發(fā)現(xiàn)其中一部分電路是相同的,也有部分差異,如果繪制PCB打樣,需要設(shè)計(jì)兩種PCB電路,考慮到成本與實(shí)際設(shè)計(jì)需要,作者本人設(shè)計(jì)了“主從一體機(jī)”,也就是從機(jī)、主機(jī)都是一樣的電路,只是在具體焊接時部分器件不用焊接。 主從一體機(jī)原理圖如下所示: 備注:D1~D8指示燈的含義: D1:1號從機(jī)測量的環(huán)境溫度低于溫度下限; D2:1號從機(jī)測量的環(huán)境溫度高于溫度上限; D3:2號從機(jī)測量的環(huán)境溫度低于溫度下限; D4:2號從機(jī)測量的環(huán)境溫度高于溫度上限; D5:3號從機(jī)測量的環(huán)境溫度低于溫度下限; D6:3號從機(jī)測量的環(huán)境溫度高于溫度上限; D7:4號從機(jī)測量的環(huán)境溫度低于溫度下限; D8:4號從機(jī)測量的環(huán)境溫度高于溫度上限; 四、軟件設(shè)計(jì)主機(jī)首先對從機(jī)分別分配不同的地址,然后通過地址來區(qū)別收到的數(shù)據(jù)是哪一個從機(jī)發(fā)來的。4個從機(jī)將溫度傳感器DS18B20測得溫度值通過NRF905無線模塊將數(shù)據(jù)傳輸給主機(jī)。 (一)從機(jī)發(fā)送端 1.主程序: 2.程序分析 (二)主機(jī)接收端(下載鏈接在文章第六部分) 1.主程序 2.程序分析 五、其他圖片(一)PCB -3D視圖 1.主機(jī)-PCB-3D 正反面 2.從機(jī)-PCB-3D 正反面 (二)系統(tǒng)實(shí)物圖 1.整體效果圖 2.1號從機(jī)圖 3.2號從機(jī)圖 4.3號從機(jī)圖 5.4號從機(jī)圖 6.主機(jī)圖 7.PCB空板圖-正面 8.PCB空板圖-背面 9.PCB-主機(jī)散件 10.PCB-從機(jī)散件 11.PCB-主從機(jī)散件 六、資料鏈接(1)作品演示視頻鏈接 (2)硬件電路分析視頻: (3)軟件程序分析視頻: 七、關(guān)于作者 |