葛春 火箭軍士官學校
RS-232串口電氣特性演示功能的設計與實現
葛春 火箭軍士官學校
本文首先針對RS-232串口通信常用數據格式,分析了其電氣特性演示功能的設計方法,然后分別采用數字示波器和基于A/D采集模塊的虛擬儀器兩種方案實現了RS-232串口電氣特性的演示功能。
RS-232串口 電氣特性 電壓信號波形
RS-232串口是自動化、測試控制等多個專業的重點教學內容。授課時學生可以通過觀看9針D型插頭座、25針D型插頭座、37針D型插頭座、圓形插頭座、接線端子等形式的RS-232串口,了解其機械外部特性;學生也可以通過串口調試程序,設置RS-232串口通信的數據位、停止位、波特率等參數,體驗其通信協議特性;但由于RS-232串口的電氣特性主要表現在收發信號相對于信號地的電平,相比其機械外部特性和通信協議特性,學生不能直接觀察,所以設計并實現RS-232串口電氣特性的演示功能,以信號波形的形式形象直觀的展示其電氣特性,具有很強的教學應用價值。
RS-232串口標準只對接口的電氣特性做出規定,而不涉及接插件、通信電纜和協議,因此它的通信協議可以用戶自己定義,但基于計算機的RS-232串口通信,一般采用如下的常用數據格式[1]:首先是以邏輯0開始的起始位,然后是5~8位的數據位,接著是起校驗作用的校驗位,最后是邏輯1結束的停止位,其中起始位前面和停止位后側的紅色部分為空閑狀態。
以計算機字符“?”為例,在計算機中字符“?”的ASCII編碼為00111111,總共8位,前面的0是高位,后面的1是低位,在串口數字通信中,現傳輸低位,后傳輸高位。對比上文介紹的RS-232串口通信的常用數據格式,如果不應用校驗位,則最終字符“?”的串口傳輸數據格式為0,11111100,1。
如果對RS-232串口通信信號線相對于地線之間的電壓完成采集,當在傳輸線上傳輸字符“?”時,可采集到相應的電壓信號波形。
由于RS-232串口標準對其通信電氣特性做出了如下規定:接收或發送線與地線之間的電壓為+3V~+15V,表示邏輯“0”;接收或發送線與地線之間的電壓為-15V~-3V,表示邏輯“1”[2]。因此對照字符“?”的串口傳輸數據格式和采集的電壓信號波形,就可以非常形象的向學生展示RS-232串口通信的電氣特性。
對于上文分析的RS-232串口電氣特性演示系統的功能設計,要實現其功能,最核心的就是如何采集RS-232串口通信時信號線與地線之間的電壓波形和電壓值大小,然后實時在液晶顯示器或者軟件界面中以電壓波形的形式直觀的顯示出來。
第一種方案是將RS-232串口通信的信號線和地線連接到高精度數字示波器,利用示波器采集信號波形。由于一次RS-232串口信號發送時間較短,稍縱即逝,發送端計算機可采用間隔100ms重復發送字符的方式,同時要調整好示波器的采樣頻率,并通過相位、頻率、幅值等設置,調試出平穩和幅值清晰的電壓波形,從而直觀演示串口通信的電氣特性。但利用示波器是一種純硬件的采集過程,而且采集時還需要計算機終端間隔100ms重復發送,也沒有波形存儲與回放的功能,為與前沿技術虛擬儀器相結合,實現基于多種測試技術的單次信號捕捉,本文還選用第二種方案:采用EM9636中泰A/D采集卡和LabVIEW虛擬儀器軟件平臺,實現信號捕捉功能。
系統由串口終端計算機、RS-232串口端子、中泰EM9636采集卡、虛擬儀器應用機、信號線以及網線組成,串口終端計算機通過自帶RS-232串口向外發送數據。演示過程中,RS-232串口端子的母口連接到串口終端計算機的公口,將紅色信號線連接到串口端子的3引腳“TXD發送數據”,黑色信號線連接到串口端子的5引腳“信號地”,兩根信號線的另一端分別連接到中泰EM9636采集卡的第一路雙端模擬量采集端口CH1+與CH-,EM9636采集卡采集到RS-232串口數據通信的電壓值大小后,通過網線傳輸給虛擬儀器應用機,虛擬儀器應用機再通過LabVIEW虛擬儀器軟件平臺實時顯示捕捉的信號,從而實現對RS-232串口電氣特性的直觀演示。
中泰EM9636采集卡是一款基于以太網的32單端、16雙端的A/D模擬量采集卡,電壓采集范圍可達-15V~15V,適用于RS-232串口的電平范圍;采樣速率可達100KHz,大于RS-232串口的通信速率(一般小于10KHz),適合對RS-232串口電氣特性波形的信號捕捉;LabVIEW是美國國家儀器公司NI推出的一種基于直觀前面板和流程圖式的虛擬儀器編程軟件,是構建虛擬儀器的理想工具[3],而中泰EM9636采集卡,正好適用于專業數據采集分析系統LabVIEW軟件環境,其產品驅動附帶LabVIEW組件,安裝后即可實現信號波形實時顯示和存儲回放的功能,非常適合對捕捉信號的實時、回放分析。如傳輸字符“?”時捕捉的信號,不但可以演示RS-232串口的負邏輯電氣特性,還通過+9V左右電壓和-9V左右電壓的大小測量,演示RS-232串口通信電壓范圍為+3V~+15V或-15V~-3V的電氣特性。
[1]劉長征.Visual C++串口通信及測控應用實例詳解[M].北京:電子工業出版社,2014.
[2]陳秀國.電力自動化系統RS-232信號的傳輸和測試[J].電力系統通信,2010(10):48-51.
[3]胡仁喜,高海賓. LabVIEW 2010從入門到精通[M].北京:機械工業出版社,2011.
葛春(1984.2-),男,火箭軍士官學校。