STM32和CAN總線在溫度監(jiān)控系統(tǒng)中的應(yīng)用
·f_mount-注冊(cè)/注銷(xiāo)一個(gè)工作區(qū)域
·f_open-打開(kāi)/創(chuàng)建一個(gè)文件
·f_close-關(guān)閉一個(gè)文件
·f_lseek-移動(dòng)/寫(xiě)指針,擴(kuò)展文件大小
·f_puts-寫(xiě)字符串
·f_printf-寫(xiě)一個(gè)格式化字符串
3.2 CAN從站軟件設(shè)計(jì)
CAN從站的主要功能是通過(guò)AD轉(zhuǎn)換器檢測(cè)PT100電橋的差分輸出電壓,然后計(jì)算得出此節(jié)點(diǎn)的溫度值,最后通過(guò)CAN總線傳送給CAN主站。其中只有在 CAN從站收到與自己節(jié)點(diǎn)號(hào)相同的主站發(fā)送的遠(yuǎn)程幀的時(shí)候,從站CAN控制器才發(fā)出一個(gè)數(shù)據(jù)幀。CAN從站程序流程圖如圖6所示。
圖6 CAN從站程序流程圖 圖7 Delphi實(shí)時(shí)曲線部分流程圖
3.3 Delphi上位機(jī)軟件設(shè)計(jì)
本上位機(jī)軟件主要實(shí)現(xiàn)了五個(gè)功能:實(shí)時(shí)曲線顯示當(dāng)前各從節(jié)點(diǎn)的溫度;打印實(shí)時(shí)曲線;將實(shí)時(shí)曲線保存為圖片;將實(shí)時(shí)曲線的數(shù)據(jù)保存為T(mén)XT文檔以及實(shí)時(shí)溫度超過(guò)報(bào)警值時(shí)報(bào)警。
本系統(tǒng)上位機(jī)串口通訊控件采用SPCOMM,該控件具有豐富的與串口通信密切相關(guān)的屬性及事件,支持多線程;提供了對(duì)串口的各種操作。圖形控件采用TChart,TCharc是Delphi里面一個(gè)標(biāo)準(zhǔn)的圖形顯示控件。它可以靜態(tài)設(shè)計(jì)(At Design Time)也可以動(dòng)態(tài)生成。該系統(tǒng)設(shè)計(jì)采用的版本為T(mén)eeChart 7;實(shí)時(shí)曲線部分流程圖如圖7所示。上位機(jī)程序完成后界面如圖8所示。
圖8 上位機(jī)界面
4 結(jié)束語(yǔ)
本文介紹了基于STM32和CAN總線的溫度監(jiān)控系統(tǒng)的設(shè)計(jì),初步實(shí)驗(yàn)證明,上述的硬件及軟件設(shè)計(jì)基本達(dá)到了設(shè)計(jì)要求。本系統(tǒng)適用于多節(jié)點(diǎn)、遠(yuǎn)距離的場(chǎng)合,并具有實(shí)時(shí)性好、可靠性高的特點(diǎn),具有一定的應(yīng)用價(jià)值。
電荷放大器相關(guān)文章:電荷放大器原理
評(píng)論