基于MCU的測試系統
通過RxD端口,以串行通信方式接收來自主MCU的與自己相關的命令和數據。
每個從機的24路IO端口P0.0~P0.7、P1.0~P1.7和P2.0~P2.7共計96路分別與測試通道Port1~Port96相連接。根據IO端口的設置情況,向定義的輸出通道輸出測試激勵信號,從相應的輸入通道讀入測試結果并存入相應的RAM單元。
在被測試電路板的一個輸出通道測試完畢后,將測試的結果發送到主MCU的RAM存儲區,并由主MCU發往計算機。
負責自身數據存儲區RAM的自檢工作。當接收到主MCU的自檢命令時,對自身的RAM進行自檢,并將自檢結果發送到主MCU。
2.4 測試通道適配接口卡
普通的被測數字電路板是不能直接插到測試平臺的測試接口上的,需要有特制的測試通道適配接口卡才能進行連接。本系統提供的接口卡是96路通道的總線結構的接口卡,可與適用于本設計的數字電路板進行連接。如果要測試其它類型的數字電路板,則需要專門定做與其配套的測試通道適配接口卡。
3 軟件設計
3.1 測試平臺程序設計
本系統測試平臺程序采用模塊化設計,是基于Keil系統開發軟件和TKS-668開發硬件,采用C語言與匯編語言編寫的。模塊化程序設計的思想就是要把一個復雜的程序按整體功能劃分成若干相對獨立的程序模塊,各模塊可以單獨設計、編程、調試和查錯,然后裝配起來進行聯調,最終成為一個有實用價值的程序。本系統的測試平臺軟件主要由系統的主程序、通信程序、測試程序和自檢程序等模塊組成。
3.1.1 主程序設計
主、從MCU的主程序設計流程圖分別如圖2、圖3所示。本系統中的四個從MCU具有相同的功能,因此其主程序設計是一樣的。主、從MCU在初始化中要設置的相關參數包括:串行口的方式、波特率、定時器的方式、中斷等。
3.1.2 自檢程序設計
主從MCU的自檢是為了保證每個單片機都能正常工作,即USB和主MCU、主MCU和從MCU之間的通訊正常,并且保證每個單片機的RAM沒有損壞。
主MCU和從MCU之間的通訊是否正常的自檢是:先由主單片機向從單片機發一串數據,然后再由從單片機把接收到的數據發回主單片機,判斷兩串數據的個數和內容是否一致,一致的話則說明通訊正常。同理,USB和主MCU之間通訊自檢的原理也是如此。
MCU的RAM自檢的原理是:對于每一個RAM的存儲單元,先把一個數據寫入該RAM的單元,然后再從該單元里讀出一個數據,判斷兩者是否一致,如果一致則說明該RAM單元沒有損壞。
評論