王 瑋
[摘要]介紹單片機與上位PC機串行通信的方法,設計單片機與PC機之間基于串行接口RS-232標準的串行通信接口電路。系統使用MAX232芯片以及外圍電路進行電平轉換實現單片機串行通訊口與PC機串行通訊口的互連,給出單片機與PC機實現串行通信的軟件設計方法。
[關鍵詞]串行通信 串行接口RS-232標準 電平轉換
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0320005-01
一、引言
近年來,單片機以其極高的性價比越來越多的在智能式儀表和工業過程控制中得到廣泛的應用。但由于其本身資源有限,在一些復雜過程或功能較多的控制中就難以滿足要求,需要將單片機的數據送到上一級的微機進行處理。因此實現上位機(PC機)與下位機(單片機)之間的數據可靠通信是必須解決的主要問題之一,在數據傳輸
量不大的情況下,按照RS-232標準進行串行通信越來越多的服務于各種應用系統中。
二、串行通信的基本原理
串行通信是指數據按位順序傳送的通信。串行數據傳送的特點是:通信線路簡單,最多只需一對傳輸線即可實現通信,成本低但速度慢,其通信線路既能傳送數據信息,又能傳送聯絡控制信息;它對信息的傳送格式有固定要求,具體分為異步和同步兩種信息格式,與此相應有異步通信和同步通信兩種方式;在串行通信中,對信息的邏輯定義與TTL不兼容,需要進行邏輯電平轉換;計算機與外界的數據傳送大多是串行的,其傳送的距離可以從幾米到幾千公里。單片機中使用的串行通信通常都是異步方式的。
(一)串行通信的兩種基本方式
1.異步傳送方式
異步傳送的特點是數據在線路上的傳送是不連續的。在線路上數據是以一個字(或稱字符)為單位來傳送的。異步傳送時,各個字符可以是接連傳送的,也可以是間斷傳送的,這完全由發送方根據需要來決定的。另外,在異步傳送時,同步時鐘脈沖并不傳送到接收方,即雙方各用自己的時鐘源來控制發送和接收。
2.同步傳送方式
同步傳送是一種連續傳送數據的方式。在通信開始以后,發送端連續發送字符,接收端也連續接收字符,直到通信告一段落。同步傳送時,字符與字符之間沒有間隙,也不用起始位和停止位。
3.通信中數據的傳送方式
通常在串行通信中,數據在兩個站之間是雙向傳送的,既可以A站作發送端,B站作接收端;也可以B站作發送端,A站接收端。
根據具體的需要,又可分為半雙工(Half Duplex)和全雙工(Full Duplex),半雙工只有一條傳輸線,盡管傳輸也可以雙向進行,但每次只能有一個站發送,另一個站接收。即可以是A發送到B,也可以是B發送到A,但A,B不能同時發送,當然也不能同時接收。
而全雙工有兩條傳輸線,因此兩個站既可以同時發送,又可以同時接收,或者說一個站可以同時進行發收。
(二)通信過程的實現RS-232串行接口標準
為了便于計算機和各種外圍設備的串行通信連接,更廣義地來講是為了各種數據終端設備(DTE)和數據通信設備(DCE)之間的連接,制定了若干種串行通信接口標準。只要是符合某種標準的設備之間就可以直接互相連接、互相通信。
RS-232串行接口標準是目前最常用的標準之一。RS-232-C串行通信接口是美國電氣工業協會(EIA)與BELL公司等一起開發的一種標準通信協議,現在它在終端﹑外設與計算機中被廣泛應用。完整的RS-232接口有25根線,采用一種25芯(針)的插頭座,彼此連接十分方便。現在經常采用一種9針的插座來互相連接,因為25條線種最經常使用的只有9條線
(三)RS-232標準接口的實現及電平轉換
PC機有兩個標準的RS-232串行口,其電平采用的是EIA電平,而單片機的串行通信是由TXD(發送數據)和RXD(接收數據)來進行全雙工通信的,它們的電平是TTL電平,為了PC機與單片機之間能可靠地進行串行通信,需要用電平轉換芯片。由于MC1488和MC1489需要±12V﹑+5V電源供電,故采用MAXIM公司生產的低功耗﹑單電源的MAX232芯片,因為它自身帶有電源電壓變換器,可以把+5V電源變換成RS-232輸出電平所需的±10V電壓,能實現RS-232的技術指標,并只需要+5V的電源,為串行通信帶來了較好的性能和低廉的價格。
(四)硬件電路的實現
通信過程實現部分介紹了如何在51單片機與PC機之間進行硬件電路的連接,在硬件電路中介紹了RS-232串行接口標準,闡述了如何利用MAX232芯片來進行電平的轉換,保證通信過程不出現邏輯紊亂。
單片機與RS-232的連接電路如下圖:

三、結束語
本文論述了如何在MCS-51單片機與PC機之間進行串行通信,實現了二者之間的數據﹑信息的交流。闡述了串行通信的基本原理和通信過程中的數據傳送方式。在單片機方面針對51單片機串行接口的特點﹑工作原理﹑串行接口的控制,各種工作方式等問題進行了講解。通信過程實現部分介紹了如何在51單片機與PC機之間進行硬件電路的連接,在電路中介紹了RS-232串行接口標準,闡述了如何利用MAX232芯片來進行電平的轉換,保證通信過程不出現邏輯紊亂。
參考文獻:
[1]胡乾斌、李光斌、李玲、甘錫英,單片微型計算機原理與應用[M].武漢:華中科技大學出版社,1997.
[2]曹漢房主編,數字電路與邏輯設計(第四版)[M].武漢:華中科技大學出版社,2004.