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