串列埠程式設計 (1)串列埠基本知識

2021-07-28 21:09:03 字數 1611 閱讀 9432

計算機為了弄懂傳給它的序列資料,它需要確定每個字元開始和結束的位置。這通常是用非同步序列資料來完成的。

在非同步模式中,除非有字元被傳輸,否則序列資料線總是處於mark(1)狀態。有乙個start位會被加入傳輸字元的各個位之前,在字元本身的位之後會有乙個可選的parity位和乙個或者多個stop位。start位總是space(0)並且它會告訴計算機新的序列資料過來了。資料可以隨時被送出或者接收,這就是所謂的非同步。

那個可選的parity位僅僅是所有傳輸位的和,這個和用以表示傳輸字元中有奇數個1還是偶數個1。在偶數parity中,如果有傳輸字元中有偶數個1,那麼parity位被設定成0,而傳輸字元中有奇數個1,那麼parity位被設定成1。在奇數parity中,位設定與此相反。還有一些術語,比如space parity, mark parity和no parity。space parity是指parity位會一直被設定位0,而mark parity正好與此相反,parity會一直是1。no parity的意思就是根本不會傳輸parity位。剩餘的位叫做stop位。傳輸字元之間可以有1個,1.5個或者2個stop位,而且,它們的值總是1。傳統上,stop位式用給計算機一些時間處理前面的字元的,但是它只是被用來同步接收資料的計算機和接受的字元。非同步資料通常被表示成"8n1","7e1",或者與此類似的形式。這表示「8資料位,no parity和1個stop bit」,還有相應得,「7資料位,even parity和1個stop bit」。

2 串列埠通訊的資料格式

每乙個字元的前面都有一位起始位(低電平)

,字元本身由7位資料位組成,接著字元後面是一位校驗位(檢驗位可以是奇校驗、偶校驗或無校驗位),最後是一位或一位半或二位停止位,停止位後面是不定長的空閒位,停止位和空閒位都規定為高電平

。實際傳輸時每一位的訊號寬度與波特率有關,波特率越高,寬度越小,在進行傳輸之前,雙方一定要使用同乙個波特率設定。

偶校驗與奇校驗

在標準ascii碼中,其最高位(b7)用作奇偶校驗位。所謂奇偶校驗,是指在**傳送過程中用來檢驗是否出現錯誤的一種方法,一般分奇校驗和偶校驗兩種。奇校驗規定:正確的**乙個位元組中1的個數必須是奇數,若非奇數,則在最高位b7添1;偶校驗規定:正確的**乙個位元組中1的個數必須是偶數,若非偶數,則在最高位b7添1。

停止位停止位是按長度來算的。序列非同步通訊從計時開始,以單位時間為間隔(乙個單位時間就是波特率的倒數),依次接受所規定的資料位和奇偶校驗位,並拼裝成乙個字元的並行位元組;此後應接收到規定長度的停止位「1」。所以說,停止位都是「1」,1.5是它的長度,即停止位的高電平保持1.5個單位時間長度。一般來講,停止位有1,1.5,2個單位時間三種長度。

波特率

波特率就是每秒鐘傳輸的資料位數。

波特率的單位是每秒位元數(bps),常用的單位還有:每秒千位元數kbps,每秒兆位元數mbps。串列埠典型的傳輸波特率600bps,1200bps,2400bps,4800bps,9600bps,19200bps,38400bps。

11 串列埠基本知識

11.串列埠基本知識 大綱 串列埠角色 1.資料傳輸。2.充當控制台。資料傳輸 兩個嵌入式裝置,除了使用usb和網路來實現資料的傳輸外,就是可以使用串列埠來實現資料傳輸。控制台 在pc機裡,我們使用鍵盤來輸入命令和資訊等,通過顯示器來顯示查詢的結果或者資訊等。在嵌入式裡,是通過終端控制台來輸入命令來...

串列埠通訊基本知識

傳送機制 通過計算機的rs232串列埠,按位 bit 傳送和接收位元組,一般是全雙工方式,既可以一邊傳送,一邊接收。串列埠通訊必要引數 串列埠通訊最重要的四個引數 波特率,停止位,資料位,奇偶校驗。若兩個串列埠需要通訊,則這些引數 必須要配對。a.波特率 衡量通訊速度的乙個引數。例如設定3000則每...

LabVIEW串列埠程式設計 02 串列埠傳送

先說明一下,跟串列埠相關的函式都位於下圖所示的位置。官方的幫助文件對每個函式有詳細介紹,大家有不懂的地方首先檢視幫助文件,配合搜尋引擎深化理解。串列埠傳送一次資料過程的可以分為三個步驟 開啟串列埠 傳送資料 關閉串列埠。分別對應confugure port,write,close這三個函式。用這三個...