基于單片機設計的智能多路信號源

3.3 系統通信模塊設計
通信模塊采用CAN總線和RS-232總線模塊實現,其電路圖如圖3所示。
RS-232電平轉換器可以將輸入的±5 V電源電壓轉換為RS-232輸出電平所需的±10 V電壓。CAN收發器選用PCA82C250。PCA82C250是CAN控制器與物理總線之間的接口,可提供對CAN總線上數據的差動發送和接收功能。

作為上位機的PC通過其串行接口發送數據,產生RS-232電平信號,由電平轉換電路將RS-232電平信號轉換成單片機所能接受的TTL/CMOS電平信號,并傳到協議轉換單元的單片機,單片機將接收到的數據打包、轉換后,通過CAN收發器發送至CAN總線。掛在CAN總線上的下位機節點收到數據后,根據控制命令做出相應動作。上位機與下位機通信示意圖如圖4所示。

4 系統軟件設計
本系統軟件設計分為兩部分:上位機采用Lab-Windows/CVI為開發平臺,下位機以g6E為平臺,采用匯編語言編寫。從功能上軟件設計可分為:系統初始化程序、主程序、串口中斷及定時器中斷程序。雙機通信協議約定如下:
aa+55+功能位+數據位+校驗位
其中,前兩個字節為前導碼,第三個字節為控制命令,單片機根據此字節進行相應處理。第四個字節為具體控制數據,最后為校驗數據。根據此協議,上位機每次發5個字節。下位機接收到有效的前導碼后進行相應的動作。
5 結束語
本測試信號源已投入使用,系統運行可靠、性能穩定,體現了良好的實用性與較高的性價比,完全能夠滿足各種測試環境的要求。


評論