Labview串口的使用
終端與計算機之間或者計算機與計算機之間進行交換信息時,除了采用并行通訊方式之外,還經常采用串行通訊方式。并行通訊是指數據的各位同時進行傳送,其有點是傳送數據速度快,缺點是有多少位數據就需要多少根傳輸線,這在數據位數較多,傳送距離較遠時就不宜采用。串行通訊是指數據一位一位地按順序傳送,其突出優(yōu)點是只需一根傳輸線,特別適應于遠距離傳輸,缺點是傳送速度較慢。
本文引用地址:http://m.butianyuan.cn/article/201701/336595.htm在微機測量,控制系統(tǒng)中,目前串行數據的傳輸大多采用異步通訊的方式。
- 同步通訊和異步通訊
串行通訊分為同步傳送和異步傳送兩種方式。
- ? 同步傳送方式要求通信雙方以相同的速率進行,而且要準確地協(xié)調。它通過共享一個單個時鐘或定時脈沖源以保證發(fā)送方和接受方準確同步。其特點是允許連續(xù)發(fā)送一組字符序列(而非單個字符),每個字符數據位數相同,沒有起始位和停止位,效率高。
- ? 異步傳送方式不要求通信雙方同步,發(fā)送方和接受方可以有各自的時鐘源。為了能夠實現(xiàn)通信,雙方必須都遵循異步通信協(xié)議。在異步通信中,通信雙方必須規(guī)定兩件事:一是字符格式,即規(guī)定字符各部分所占的位數,是否采用奇偶校驗,以及校驗的方式;二是采用的波特率,以及時鐘率與波特率之間的比例關系。由此可見,異步通信方式的傳輸效率比同步通信方式低,但它對通信雙方的同步要求大大降低,因而成本也比同步通信方式低。
- DTE和DCE
在串行通訊中,用于發(fā)送和接收數據的設備稱為數據終端設備(Data Terminal Equipment 簡寫為DTE)。DTE既可以是一臺計算機,也可以是一臺只接收數據的打印機。用于連接DTE與數據通信網絡的設備稱為數據通信設備(Data Communications Equipment 簡寫為DCE),或稱為數據電路終接設備。DCE既可以是一個調制解調器,也可以是簡單的線路驅動器。
- 波特率
在串行通訊中還有一個重要的指標——波特率(又稱調制速率)。波特率定義為每秒鐘傳送二進制數碼的位數,以位/秒(bit/s)為單位,亦稱“波特”。在異步通訊中,波特率為每秒傳送的字符數和每個字符位數的乘積,例如每秒傳送的速率為120字符/秒,而每個字符又包含10位(1位起始位,7位數據位,1位奇偶校驗位,1位停止位),則波特率為:
120字符/秒×10位/字符=1200位/秒=1200波特
注意:波特率與時鐘頻率不是一回事,時鐘頻率比波特率要高得多,通常在高16倍或64倍。由于異步通訊雙方各用自己的時鐘源采用較高頻率的時鐘,在一位數據內就有16位或64個時鐘,捕捉正確的信號就可以得到保證,若時鐘頻率就是波特率,則頻率稍有偏差就會發(fā)生接收錯誤。
LabVIEW中的串行通訊選板
安裝完labVIEW8.2后,還需要安裝VISA的驅動程序才能使用串口,驅動程序的下載地址為:
ftp://ftp.ni.com/support/visa/drivers/win32/4.0/visa400full.exe
LabVIEW中有關串口的函數選板如圖,它位于函數→儀器I/O→串口
下面舉一個例子來說明串口是如何進行通訊的
例:雙機通訊
1. 功能描述
雙機通信是在兩臺計算機之間進行串口通訊。一臺計算機作為服務器,通過RS-232串口向外發(fā)送數據;另一臺計算機作為客戶機,接收由服務器發(fā)送來的數據。
2. 串口引腳連接
兩臺計算機的串口之間通過一根RS-232電纜線連接起來,串口電纜線采用三線制,它只使用發(fā)送數據(TxD),接收數據(RxD)和信號地(SG)三根信號線。
3. 服務器程序設計
其程序設計如下:
㈠新建一個VI,在前面板上放置4個輸入控件:“端口號”,“波特率”,“數據比特”和“停止位”。另外,放置一個字符串輸入控件,在其內部輸入向外發(fā)送的字符串數據。添加程序文本標簽“串口服務器”。
㈡在程序框圖中放置一個層疊式順序結構,創(chuàng)建兩個分支。在第0分支中,放置一個“Serial Port Init.vi”函數,并添加一個順序局部變量;在第1分支中,放置一個“Serial Port Write.vi”函數,它們位于labVIEW8.2→vi.lib→Instr→serial。連線如圖:
前面板如圖:
4.客戶機程序設計與服務器程序類似,其中使用了“Bytes At Serial Port.vi”函數和“Serial Port Read.vi”它們都在前文所提到的路徑中,客戶機程序框圖如圖:
前面板如圖:
串口的內容就為大家簡單的介紹這么多,有什么問題可上我們的論壇發(fā)帖,我們會盡力為大家解答。
評論