RS232串列埠通訊詳解

2022-05-06 08:48:04 字數 2425 閱讀 8238

串列埠是計算機上一種非常通用的裝置通訊協議。

串列埠的引腳定義:

兩個串列埠連線時,接收資料針腳與傳送資料針腳相連,彼此交叉,訊號地對應相接即可。

串列埠的電氣特性:

1)rs-232串列埠通訊最遠距離是50英呎

2)rs232可做到雙向傳輸,全雙工通訊,最高傳輸速率20kbps

3)rs-232c上傳送的數字量採用負邏輯,且與地對稱邏輯1:-3 -15v

邏輯0:+3+15v

所以與微控制器連線時常常需要加入電平轉換晶元:

串列埠通訊引數:

a)波特率:rs-232-c標準規定的資料傳輸速率為每秒50、75、 100、150、300、600、1200、2400、

4800、9600、19200波特。 b)資料位:標準的值是5、7和8位,如何設定取決於你想傳送的資訊。

比如,標準的ascii碼是0127(7位);擴充套件的ascii碼是0255(8位)。

c)停止位:用於表示單個包的最後一位,典型的值為1,1.5和2位。

由於數是在傳輸線上定時的,並且每乙個裝置有其自己的時鐘,很可能在通訊中兩台裝置間出現了小小的不同步。因此停止位不僅僅是表示傳輸的結束,並且提供計算機校正時鐘同步的機會。 d)奇偶校驗位:

在串列埠通訊中一種簡單的檢錯方式。對於偶和奇校驗的情況,串列埠會設定校驗位(資料位後面的一位),用乙個值確保傳輸的資料有偶個或者奇個邏輯高位。例如,如果資料是011,那麼對於偶校驗,校驗位為

0,保證邏輯高的位數是偶數個。如果是奇校驗,校驗位位1,這樣就有3個邏輯高位。

串列埠通訊的傳輸格式: 序列通訊中,線路空閒時,線路的ttl電平總是高,經反向rs232的電平總是低。乙個資料的開始rs232線路為高電平,結束時rs232為低電平。

資料總是從低位向高位一位一位的傳輸。示波器讀數時,左邊是資料的高位。

例如,對於16進製制資料55aah,當採用8位資料位、1位停止位傳輸時,它在訊號線上的波形如圖1(ttl電平)和圖

2(rs-232電平)所示。

55h=01010101b,取反後10101010b,加入乙個起始位1,乙個停止位0,55h的資料格式為1010101010b;

aah=10101010b,取反後01010101b,加入乙個起始位1,乙個停止位0,55h的資料格式為1101010100b;

串列埠通訊的接收過程:

(非同步通訊:接收器和傳送器有各自的時鐘;同步通訊:傳送器和接收器由同乙個時鐘源控制。rs232是非同步通訊)

(1)開始通訊時,訊號線為空閒(邏輯1),當檢測到由1到0的跳變時,開始對「接收時鐘」計數。

(2)當計到8個時鐘時,對輸入訊號進行檢測,若仍為低電平,則確認這是「起始位」,而不是干擾訊號。

(3)接收端檢測到起始位後,隔16個接收時鐘,對輸入訊號檢測一次,把對應的值作為d0位資料。若為邏輯1, 作

為資料位1;若為邏輯0,作為資料位0。

(4)再隔16個接收時鐘,對輸入訊號檢測一次,把對應的值作為d1位資料。….,直到全部資料位都輸入。

(5)檢測校驗位p(如果有的話)。

(6)接收到規定的資料位個數和校驗位後,通訊介面電路希望收到停止位s(邏輯1),若此時未收到邏輯1,說明出現了錯誤,在狀態暫存器中置「幀錯誤」標誌。若沒有錯誤,對全部資料位進行奇偶校驗,無校驗錯時,把資料位從移位暫存器中送資料輸入暫存器。若校驗錯,在狀態暫存器中置奇偶錯標誌。

(7)本幀資訊全部接收完,把線路上出現的高電平作為空閒位。

(8)當訊號再次變為低時,開始進入下一幀的檢測。

微控制器常用11.0592m的的晶振,這個奇怪數字是有來歷的: 波特率為9600bps每位位寬t1=1/9600s 晶振週期t2=1/11.0592/1000000s

微控制器機器週期t3=12*t2 t1/t3=96

即對於9600bps的串列埠,微控制器對其以96倍的速率進行取樣。

如果微控制器晶振用的不正確,會對串列埠接受產生誤碼。

rs485和rs422

rs485匯流排,在要求通訊距離為幾十公尺到上千公尺時,廣泛採用rs-485 序列匯流排標準。rs485採用平衡傳送和差分接收,因此具有抑制共模干擾的能力。加上匯流排收發器具有高靈敏度,能檢測低至200mv的電壓,故傳輸訊號能在千公尺以外得到恢復。

rs485採用半雙工工作方式,任何時候只能有一點處於傳送狀態,因此,傳送電路須由使能訊號加以控制。rs485用於多點互連時非常方便,可以省掉許多訊號線。應用rs485可以聯網構成分布式系統,其允許最多併聯32臺驅動器和32臺接收器。

rs422匯流排,rs485和rs422電路原理基本相同,都是以差動方式傳送和接受,不需要數字地線。差動工作是同速率條件下傳輸距離遠的根本原因,這正是二者與rs232的根本區別,因為rs232是單端輸入輸出,雙工工作時至少需要數字地線傳送線和接受線三條線(非同步傳輸),還可以加其它控制線完成同步等功能。rs422通過兩對雙絞線可以全雙工工作收發互不影響,而rs485只能半雙工工作,發收不能同時進行,但它只需要一對雙絞線。

rs422 和rs485在19kpbs下能傳輸1200公尺。用新型收發器線路上可連線臺裝置。

232 485串列埠通訊詳解

串列埠通訊詳解 一 rs 232 rs 232在1962年發布,命名為eia 232 e,作為工業標準,以保證不同廠家產品之間的相容。rs 232 c是美國電子工業協會eia electronic industry association 制定的一種序列物理介面標準。rs是英文 推薦標準 的縮寫,2...

RS232通訊協議

rs232在ivek的應用體現在 當控制箱處於密閉的環境中,無法手動操作的時候,通過rs232傳輸線,可以用電腦控制ivek幫浦的啟動與停止,還可以改變各類引數,包括 電機的旋轉方向 速度,衝程數,電機型號的選擇,配方的呼叫等等。達到電腦控制的目的。rs 232是個人計算機上的通訊介面之一,由電子工...

RS232光柵尺通訊協議

通訊協議 1 壓縮bcd碼格式 由pc機送出乙個字元 r 0x52 本數顯箱在接收了乙個 r 後 馬上回送17個位元組給pc機。這17個位元組如下 byte 1st head 0x0fe 十六進製制值 byte 2nd 符號位 位5 7 0 保留 位4 0 表示公制mm 1 表示英製inch 位3 ...