串口測試的最常見類型可能是環回測試。創建一個測試夾具,將端口的輸出引腳連接到輸入引腳(TX-> RX,RTS-> CTS等)。如果每個輸出引腳都沒有匹配的輸入引腳,則需要進行三路連接。
創建回送後,您需要編寫鍛鍊引腳的軟件。如果TX和RX已連接,則可以發送一個字節並確認它已回顯。對於控制銷,切換它們並確保連接的另一側看到轉換。 確保您鍛鍊串口的每個引腳。
請注意,您應該以多種波特率運行TX-> RX數據回送。在設計中出現信號完整性問題時可能會出現在較高波特率下。在電路板上也有可能出現信號連接不良,電感和電容會在更高的波特率下被屏蔽。因此,以最慢的波特率,最快的波特率和中間的1-2運行數據環回是一個好主意。
你應該做的另一件事是波特率準確度測試。這將證明驅動UART的時鐘以正確的頻率運行,並被正確分配。以特定的波特率傳輸X字節數量,並驗證它們是否到達了預期的時間。要得到一個準確的數字,你需要繞過OS串口驅動程序中的任何緩衝(例如使用直接寄存器I/O),並確保適應任何開始/停止位開銷(見下面的註釋)。
但是,環回測試並非詳盡無遺。它只能證明設備可以與自己交談。該設備可能仍然存在一些無法在本地檢測到的缺陷(例如電壓水平)。所以,你也應該用外部硬件來運行一些測試。將電路板連接到另一個系統並運行測試(例如使用minicom)。確保他們可以相互交談。
即使是外部通信測試也會漏掉一些東西。您的主板的信號質量仍然很差,但對於其他設備而言,它恰好足夠好。要準確驗證信號質量/時序,您需要示波器。
當您正在運行通信測試時,將示波器探頭連接到各種信號並驗證信號完整性。確保電壓電平有效,看到乾淨的低/高位轉換,並且數據引腳的時序對於指定的波特率顯示正確。 (與前面介紹的基於軟件的方法相比,示波器可以更準確地測量波特率。)
究竟是什麼問題?你建立電路板,開啓電路板,看看它是否傳輸數據。這讓我相信問題在於你還沒有構建任何硬件,並試圖使用某種模擬來證明硬件工作。請詳細說明。 –
@Warren Young HEllo Warren該板已經制作好了,我只需要知道如何進行連接,該板使用Exar芯片作爲Uart.And PLX 9030作爲Pci芯片。RS 232 FULL MODEM &RS 422(RX,TX,RTS,CTS)已經擴展到測試連接器。因此RS322 FULL MODEM必須在環回/ PC到PC中證明。類似地,我需要證明RS422 ..希望你明白我的觀點。 ..註冊級別意味着我使用ioctl命令直接讀取/寫入THR,RHR,MCR寄存器....謝謝 – linuxstack