所屬欄目:計算機應用論文 發布日期:2011-02-21 09:05 熱度:
摘要:微機串口技術在冶金、自動化、監控領域和工業檢測系統中有廣泛的應用需求。微機串口與單片機通訊測試系統的實現使得微機與許多智能設備相連,所以微機串口通信有很好的市場前景。本文介紹了串口通信的基本原理和基本方法,并在兩臺PC機上利用EIARS-232-C串口線,通過C語言編程實現了實異步方式的全雙工數據發送和接收。
關鍵詞:串口技術,C語言,EIARS-232-C
引言
隨著計算機應用技術和通信技術的不斷發展,計算機串口通信在通信軟件中有著十分廣泛的應用,如電話、傳真、視頻和監控等。另外,在工業控制領域,經常需要進行計算機與其他設備之間的通信,以實現控制和傳輸數據等目的。串行通信是在單根導線上將二進制數一位一位地順序傳送。它與并行通信相比,雖然速度低,但對遠距離來說,可以節省大量的線路成本。串行通信作為一種靈活、方便、可靠的通信方式被廣泛采用。隨著光纖技術的出現與發展,更是為串行通信開辟了美好前景。
本文通過使用EIARS-232-C標準的交叉連接串口線將兩臺PC機連接起來進行通信的研究,全面介紹了微機串行端口的工作原理,并使用C語言利用雙機串行端口實現通信。
1串行通信原理
計算機與外圍設備之間通過接口和導線進行信息交換,針對接口的通信分為并行通信和串行通信兩種方式。
并行通信是把一個字符的各數位用幾條線同時進行傳輸,傳輸速度快,信息率高。但它比串行通信所用的電纜多,故常用在傳輸距離較短(幾米至幾十米)、數據傳輸率較高的場合。
串行通信是指微機與微機、微機與外設之間通過使用一根數據信號線,按數據位由低到高的順序在信號線上一位一位地實現傳輸,每一位數據都占據一個固定的時間長度。由于CPU與接口之間按并行方式進行數據傳輸,因此,在串行接口中,必須要進行串并轉換和并串轉換。
1.1串行通信特點
串行通訊的特點是:數據傳送按位順序進行,最少只需一根傳輸線即可完成。串行通訊根據信息的傳送方向,串行通訊可分為單工、半雙工和全雙工三種。信息只能單向傳送為單工;信息能雙向傳送但不能同時雙向傳送稱為半雙工;信息能夠同時雙向傳送則稱為全雙工。串行通訊根據其工作方式又分為異步通訊和同步通訊兩種方式。其中異步通訊方式應用更為廣泛。
本文采用異步通信方式,其通信協議規定:
不發送數據時,數據信號線總是呈現高電平,稱為空閑狀態。當有數據要發送時,數據線變成低電平,并持續一位的時間,用于表示字符的開始,稱為起始位;接著按照數據位由低位到高位的順序發送數據位,當發送字符串時,數據位占7位,最后一位發送檢驗位;然后再發送1位、1.5位或2位高電平,表示停止位。至此,一個字符發送完畢,如果要立即發送下一個字符,則后一個字符起始位就緊跟在前一個字符的停止位之后,否則停止位之后又進入空閑狀態。
在異步通信中,數據通常以字符或者字節為單位組成字符幀傳送。字符幀由發送端逐幀發送,通過傳輸線被接收設備逐幀接收。發送端和接收端可以由各自的時鐘來控制數據的發送和接收,這兩個時鐘源彼此獨立,互不同步。接收端檢測到傳輸線上發送過來的低電平邏輯“0”(即字符幀起始位)時,確定發送端已開始發送數據,每當接收端收到字符幀中的停止位時,就知道一幀字符已經發送完畢。
針對串行通信的這一特點,串行通信可以借助現成的電話網進行信息傳送,因此,特別適合于遠距離傳輸。對于那些與計算機相距不遠的人-機交換設備和串行存儲的外部設備如終端、打印機、邏輯分析儀、磁盤等,采用串行方式交換數據也很普遍。在實時控制和管理方面,采用多臺微機處理機組成分級分布控制系統中,各CPU之間的通信一般都是串行方式,所以串行接口是微機應用系統常用的接口。
1.2EIARS-232-C的接口信號
微機系統中的串口一般分9芯插件和25芯插件兩種,目前一般都是9芯插件。
RS-232的接口信號如表1.1所示:
表1.1RS-232接口信號
主要信號線定義如下:
(1)聯絡控制信號線:
數據裝置準備好DSR#:有效時,表明MODEM處于可以使用的狀態。
數據終端準備好DTR#:有效時,表明數據終端可以使用。
這兩個信號有時連到電源上,一上電就立即有效。有效時表示設備本身可用,并不說明通信鏈路可以開始進行通信了,能否開始進行通信要由下面的控制信號決定。
請求發送RTS#:用來表示DTE請求DCE發送數據,即當終端要發送數據時,使該信號有效,向MODEM請求發送。它用來控制MODEM是否要進入發送狀態。
允許發送CTS#:用來表示DCE準備好接收DTE發來的數據,是對請求發送信號RTS#的響應信號。當MODEM已準備好接收終端傳來的數據,并向前發送時,使該信號有效,通知終端開始沿發送數據線TxD發送數據。
這對RTS/CTS請求應答聯絡信號是用于半雙工MODEM系統中發送方式和接收方式之間的切換。在全雙工系統中,因配置雙向通道,故不需要RTS#/CTS#聯絡信號。
載波信號檢測CD#:用來表示DCE已接通通信鏈路,告知DTE準備接收數據。當本地的MODEM收到由通信鏈路另一端的MODEM送來的載波信號時,使CD#信號有效,通知終端準備接收,并且由MODEM將接收下來的載波信號解調成數字信號后,沿接收數據線RxD送到終端。
�。�2)數據發送與接收線:
發送數據TxD:通過TxD終端將串行數據發送到MODEM,(DTE→DCE)。
接收數據RxD:通過RxD線終端接收從MODEM發來的串行數據,(DCE→DTE)。
上述控制信號線何時有效,何時無效的順序表示了接口信號的傳送過程。只有當DSR#和DTR#都處于有效狀態時,才能在DTE和DCE之間進行傳送操作。若DTE要發送數據,則預先將DTR#線置成有效狀態,等CTS#線上收到有效狀態的回答后,才能在TxD線上發送串行數據。這種順序的規定對半雙工的通信線路特別有用,因為半雙工的通信才能確定DCE已由接收方向改為發送方向,這時線路才能開始發送。
2串口通信硬件連接
2.1串口的硬件描述
一臺PC機中的每個串口都保留了一系列的端口資源,大多數還有一個指定的中斷請求(IRQ)號或者中斷請求級別。端口被命名為COM1、COM2等等。在Windows下,可以在控制面板里瀏覽端口資源:在“系統”下“端口”下面,選擇一個COM口,然后點擊“屬性”。“端口設置”選項卡顯示缺省的比特率和其他設置,但是這些設置能夠被應用程序很方便的修改。
Windows為每一個端口儲存地址和IRQ號,應用程序不必關心這些。一個應用程序可以通過使用內嵌在編程語言或者WindowsAPI中的函數來訪問端口。
2.2EIARS-232C串口通信基本接線方法
串口通信距離較近時(<12m),可以用電纜線直接連接標準RS-232端口;若距離較遠,需附加調制解調器(MODEM)。
最簡單的是3導線連接,無Modem連接交換RxD和TxD線,因此每個TxD連接到對應的RxD,此接法不需要硬件握手。如表2.1所示。如果需要硬件握手則使用另一種接法,如表2.2所示。
表2.1無握手
9針連接線 25針連接線
表2.2循環回送握手
在簡單場合,串口傳輸數據只要有接收數據針腳和發送針腳就能實現:同一個串口的接收腳和發送腳直接用線相連,對9針串口和25針串口,均是2與3直接相連;兩個不同串口(不論是同一臺微機的兩個串口或分別是不同微機的串口),接收數據針腳(或線)與發送數據針腳(或線)相連,彼些交叉,信號地對應相接。
3串口通信設計與實現
串口通信程序通過串口連接線將兩臺微機連接起來,通過程序對各自的端口進行設置后,按照串口通信協議SPCP進行信息交換,實現利用串口完成數據的收發功能,并能夠在發送/接收成功或不成功的情況下都能夠及時地反饋一個正確的信息給通信的雙方。
雙機串口通信程序具體流程如圖3所示:
圖3串口通信流程
結論
本文介紹了串口通信原理,雙機串口通信的連接方式,并用C語言在Windows環境下實現了數據的發送和接收,證明所做設計正確有效。
參考文獻
[1]龔建偉,熊光明.VisualC++/TurboC串口通信編程實踐.北京:電子工業出版社,2004.
[2]周荷琴,吳秀清.微型微機原理與接口技術.合肥:中國科學技術大學出版社,2008.
[3]李建華,郭明.RS-232和調制解調器高級通信編程.北京:人民郵電出版社,2001.
[4](美)安格斯.串行端口大全.北京:中國電力出版社,2001.
[5]譚浩強.C程序設計(第三版).北京:清華大學出版社,2005.
文章標題:微機串口技術的應用
轉載請注明來自:http://www.anghan.cn/fblw/dianxin/yingyong/7254.html
攝影藝術領域AHCI期刊推薦《Phot...關注:106
Nature旗下多學科子刊Nature Com...關注:152
中小學教師值得了解,這些教育學...關注:47
2025年寫管理學論文可以用的19個...關注:192
測繪領域科技核心期刊選擇 輕松拿...關注:64
及時開論文檢索證明很重要關注:52
中國水產科學期刊是核心期刊嗎關注:54
國際出書需要了解的問題解答關注:58
合著出書能否評職稱?關注:48
電信學有哪些可投稿的SCI期刊,值...關注:66
通信工程行業論文選題關注:73
SCIE、ESCI、SSCI和AHCI期刊目錄...關注:121
評職稱發論文好還是出書好關注:68
復印報刊資料重要轉載來源期刊(...關注:51
英文期刊審稿常見的論文狀態及其...關注:69
電子信息論文范文
智能科學技術論文 廣播電視論文 光電技術論文 計算機信息管理論文 計算機網絡論文 計算機應用論文 通信論文 信息安全論文 微電子應用論文 電子技術論文 生物醫學工程論文 軟件開發論文
SCI期刊分析
copyright © www.anghan.cn, All Rights Reserved
搜論文知識網 冀ICP備15021333號-3