在這一課里,我們一起來學習RS-232C串行通信相關標準及單片機和電腦的RS-232C串行通信接口技術簡介,為學習和開發單片機串口通信應用系統打好基礎,希望大家在看完這篇文章后對串行通信有初步的認識。
【通信基本概念】
什么是通信?簡單地說,不同的系統經由線路相互交換數據,就是通信。通信的主要目的是將數據從一端傳送到另一端,達到數據交換的目的。例如,從人與人之間的對話、計算機與設備之間的數據交換到計算機與計算機間的數據傳送,乃至于廣播或衛星都是通信的一種,一個完整的通信系統包括發送端、接收端、轉換數據的接口及傳送數據的實際信道。
【通信的種類】
按照通信的形式可以分為兩種,其中一種為并行傳輸的通信,即并行通信(Parallel Communication),另一種則為串行通信(Serisl Communication)。這兩種通信方式的區別是,并行通信一次的傳輸數據量為8位(1個字節);而串行通信則一次只能傳輸1位,傳輸1字節數據(8位)數據就需要8次才能傳出去,因此,它們兩者之間的數據傳輸速度就相差8倍。看到這里,估計有些朋友會問,既然并行通信的速度是串行通信的8倍,是不是串行通信就不好了?!其實不能這么認為,兩種通信方式各有特點,串行通信之所以存活了這么長時間,自然有它的長處。
串行通信一次只傳輸1位,相對來說,要處理的數據電壓只有一個,因此比較不容易漏失數據,通信時候再加上一些校驗防范措施后,串行通信的出錯就更不容易了,串行通信端口(Serisl Communication Port)在系統控制的范疇中一直占有極其重要的角色,不僅沒有因為時代的進步而被淘汰,反而失在規格上愈來愈向其極限挑戰,下面我們重點來介紹RS-232C串行通信。
并行通信雖然可以在一次的數據傳輸中傳送8位,但是數據電壓在傳送的過程中,容易因為線路及干擾因素使得電壓準電位發生變化(主要為電壓衰減和信號間相互干擾問題),因而使得傳輸數據發生錯誤,通信距離越長,問題越明顯,因此并行通信主要用于傳輸距離較短的場合,如電腦主板的并口LPT1,主要和并行打印機通信。
【RS-232串行通信】
一、RS-232C標準介紹
RS-232C是由美國電子工業協會(EIA)正式公布的,在異步串行通信中應用最廣泛的標準總線。RS-232C 標準(協議)的全稱是EIA-RS-232C 標準,其中EIA(Electronic Industry Association)代表美國電子工業協會,其中RS是Recommended Standard的縮寫,代表推贈標準,232是標識符,C代表RS-232的最新一次修改(1969年),在這之前,有過RS-232A、RS-232B標準,它規定連接電纜和機械、電氣特性、信號功能及傳送過程。現在,計算機上的串行通信端口(RS-232)是標準配置端口,已經得到廣泛應用,計算機上一般都有1~2個標準RS-232C串口,即通道COM1和COM2。下圖為計算機主板上的兩個RS-232通信端口圖片及端口屬性,我們一般可以從計算機后面查看到本機的通信端口。
計算機的RS-232串行通信接口圖片
如左圖所示,我們可以從操作系統的設備管理器中查看電腦的通信端口屬性,進入計算機的:控制面板 -》 系統 -》 硬件 -》 設備管理器 -》 端口,就可以看到自己電腦通信端口,在圖中顯示了這臺計算機有1個ECP打印機并行通信端口LPT1和2個RS-232串行通信端口COM1和COM2。只要顯示的端口名稱前面沒有黃色的驚嘆號的話,就表示這個端口是可以使用的。
二、RS-232C電氣特性
EIA-RS-232C對電器特性、邏輯電平和各種信號線功能都作了明確規定。
在TXD和RXD引腳上電平定義:邏輯1(MARK) = -3V~-15V
邏輯0(SPACE) = +3~+15V
在RTS、CTS、DSR、DTR 和DCD等控制線上電平定義:
信號有效(接通,ON狀態,正電壓)=+3V~+15V
信號無效(斷開,OFF狀態,負電壓)=-3V~-15V
以上規定說明了RS-232C 標準對邏輯電平的定義。對于數據(信息碼):邏輯“1”的傳輸的電平為-3V~-15V,邏輯“0”傳輸的電平為+3V~+15V;對于控制信號;接通狀態(ON)即信號有效的電平為+3V~+15V,斷開狀態(OFF)即信號無效的電平為-3V~-15V,也就是當傳輸電平的絕對值大于3V 時,電路可以有效地檢查出來;而介于-3~+3V之間的電壓即處于模糊區電位,此部分電壓將使得計算機無法準確判斷傳輸信號的意義,可能會得到0,也可能會得到1,如此得到的結果是不可信的,在通信時候體現的是會出現大量誤碼,造成通信失敗。因此,實際工作時,應保證傳輸的電平在±(3~15)V 之間。
三、RS-232C機械連接器及引腳定義
目前,大部分計算機的RS-232C通信接口都使用了DB9連接器,如上面圖中所示,主板的接口連接器有9根針輸出(RS-232公頭),也有些比較舊的計算機使用DB25連接器輸出,下面我們來介紹DB9和DB25輸出接口的引腳定義。
RS-232C串口引腳定義表
9針RS-232串口(DB9).25針RS-232串口(DB25)
引腳簡寫功能說明引腳簡寫功能說明
1CD載波偵測(Carrier Detect)8CD載波偵測(Carrier Detect)
2RXD接收數據(Receive)3RXD接收數據(Receive)
3TXD發送數據(Transmit)2TXD發送數據(Transmit)
4DTR數據終端準備(Data Terminal Ready)20DTR數據終端準備(Data Terminal Ready)
5GND地線(Ground)7GND地線(Ground)
6DSR數據準備好(Data Set Ready)6DSR數據準備好(Data Set Ready)
7RTS請求發送(Request To Send)4RTS請求發送(Request To Send)
8CTS清除發送(Clear To Send)5CTS清除發送(Clear To Send)
9RI振鈴指示(Ring Indicator)22RI振鈴指示(Ring Indicator)
四、RS-232C的通信距離和速度
RS-232規定最大的負載電容為2500pF,這個電容限制了傳輸距離和傳輸速率,由于RS-232C的發送器和接收器之間具有公共信號地(GND),屬于非平衡電壓型傳輸電路,不使用差分信號傳輸,因此不具備抗共模干擾的能力,共模噪聲會耦合到信號中,在不使用調制解調器(MODEM)時,RS-232能夠可靠進行數據傳輸的最大通信距離為15米,對于RS232遠程通信,必須通過調制解調器進行遠程通信連接。
現在個人計算機所提供的串行端口的傳輸速度一般都可以達到115200bps甚至更高,標準串口能夠提供的傳輸速度主要有以下波特率:1200bps、2400bps、4800bps、9600bps、19200bps、38400bps、57600bps、115200bps等,在儀器儀表或工業控制場合,9600bps是最常見的傳輸速度,在傳輸距離較近時,使用最高傳輸速度也是可以的。傳輸距離與傳輸速度的關系成反比,適當地降低傳輸速度,可以延長RS-232的傳輸距離,提高通信的穩定性。
五、RS-232電平轉換芯片及電路
RS-232C 規定的邏輯電平與一般微處理器、單片機的邏輯電平是不同的,例如:RS-232的邏輯“1”是以-3~-15V來表示的,而單片機的邏輯“1”是以+5V來表示的,兩者完全不同。因此,單片機系統要和電腦的RS-232接口進行通信,就必須把單片機的信號電平(TTL電平)轉換成計算機的RS-232C電平,或者把計算機的RS-232C電平轉換成單片機的TTL電平,通信時候必須對兩種電平進行轉換。實現這種轉換的方法可以使用分立元件,也可以使用專用RS-232電平轉換芯片。目前較為廣泛地使用專用電平轉換芯片,如MC1488、MC1489、MAX232等電平轉換芯片來實現EIA到TTL電平的轉換。下面來介紹MAXIM公司的單電源電平轉換芯片MAX232及接口電路。
如下面圖中所示,MAX232是單電源雙RS-232發送/接收芯片,采用單一 +5V電源供電,外接只需4個電容,便可以構成標準的RS-232通信接口,硬件接口簡單,所以被廣泛采用, 其主要特性如下:
主要特點:
1、符合所有的RS-232C技術規范
2、只要單一 +5V電源供電
3、片載電荷泵,具有升壓、電壓極性反轉能力,能夠產生 +10V 和 -10V電壓V+、V-
4、低功耗,典型供電電流5mA
5、內部集成2個RS-232C驅動器
6、內部集成2個RS-232C接收器
單片機和計算機RS-232接口電路如下圖所示,圖中的C1、C2、C3、C4是電荷泵升壓及電壓反轉部分電路,產生V+、V-電源供EIA電平轉換使用,C5是VCC對地去耦電容,其值為0.1UF,電容C1~C5安裝時必須盡量靠近MAX232芯片引腳,以提高抗干擾能力。
采用MAX232CPE 芯片的PC機與MCS-51單片機串行通信接口電路
下圖是一個采用分立元件構成的簡易RS-232串行通信接口電路,使用三極管進行電平轉換,能夠由于簡單的通信,對于通信穩定性要求較高的應用,不建議使用分立元件,分立元件電路的穩定性,誤碼率較高,不能完全滿足RS-232C的全部技術指標。優點是成本低廉,網上也可以看到部分網站產品使用分立元件構成。
采用分立元件的簡易RS-232C通信接口電路
通過對前面的學習,我們對RS-232C串行通信標準已經有了初步的了解,同時也掌握了單電源雙RS-232發送/接收芯片MAX232CPE的應用。有了這些基礎,我們開發單片機和電腦RS232串口通信系統的接口設計也就簡單了。只要給我們單片機實驗板增加RS232電平轉換電路,即可實現與計算機的串行通信,下面是采用MAX232CPE專用串口電平轉換芯片的S51增強型單片機實驗板和電腦通信的圖片。
-
連接器
+關注
關注
99文章
15209瀏覽量
139238 -
RS232
+關注
關注
13文章
795瀏覽量
95501 -
串行通信
+關注
關注
4文章
586瀏覽量
36009
發布評論請先 登錄
評論