RS232串口通信的應(yīng)用
0 引言
隨著信息技術(shù)的飛速發(fā)展和科技進(jìn)步,在許多現(xiàn)代化集中管理的控制系統(tǒng)中,需要對現(xiàn)場數(shù)據(jù)進(jìn)行統(tǒng)計(jì)、分析、打印、報(bào)警等,同時(shí)又要對現(xiàn)場設(shè)備進(jìn)行實(shí)時(shí)控制,完成各種操作。單片機(jī)作為控制系統(tǒng)中必不可少的部分,在各個(gè)領(lǐng)域得到了廣泛的應(yīng)用。由于單片機(jī)具有體積小、價(jià)格低廉、適應(yīng)性強(qiáng)的特點(diǎn),一般在工業(yè)控制系統(tǒng)中,各種數(shù)據(jù)的采集和執(zhí)行機(jī)構(gòu)的控制都是由單片機(jī)來完成。而單片機(jī)的計(jì)算能力有限,難以進(jìn)行復(fù)雜的數(shù)據(jù)處理。在功能比較復(fù)雜的自動控制系統(tǒng)中,通常以工控機(jī)為上位機(jī),單片機(jī)為下位機(jī),由單片機(jī)完成數(shù)據(jù)的采集及對設(shè)備的控制,而由上位機(jī)完成各種復(fù)雜的數(shù)據(jù)處理及對單片機(jī)的控制。在分布式控制系統(tǒng)中大多采用單片機(jī)作為下位機(jī)來進(jìn)行數(shù)據(jù)采集和現(xiàn)場控制,在這些應(yīng)用中,單片機(jī)只是直接面對被控對象底層,而對采集到的數(shù)據(jù)進(jìn)行進(jìn)一步的分析和處理工作,則是由功能強(qiáng)大的PC機(jī)來完成的。因此,PC機(jī)和單片機(jī)之間就有著大量的數(shù)據(jù)交換。在絕大多數(shù)PC機(jī)的標(biāo)準(zhǔn)配置中,都有一個(gè)到多個(gè)RS 232串口,因?yàn)镽S 232串口擔(dān)
負(fù)著PC機(jī)和單片機(jī)之間大量的數(shù)據(jù)交換的重任。單片機(jī)89C52用于自動控制及數(shù)據(jù)傳輸,并通過RS 232接口向上位機(jī)進(jìn)行數(shù)據(jù)通信。
1 RS 232串口通信
1.1 RS 232C標(biāo)準(zhǔn)
RS 232C標(biāo)準(zhǔn)(協(xié)議)的全稱是EIA-RS-232C標(biāo)準(zhǔn),其中EIA(Electronic Industry Association)代表美國電子工業(yè)協(xié)會,RS(ecommeded standard)代表推薦標(biāo)準(zhǔn),232是標(biāo)識號,C代表RS 232的最新一次修改。在這之前,有RS 232B,RS 232A,它規(guī)定連接電纜和機(jī)械、電氣特性、信號功能及傳送過程。
1.2 RS 232的接口引腳定義
由于RS 232C并未定義連接器的物理特性,因此,出現(xiàn)了DB-25,DB-15和DB-9各種類型的連接器,其引腳定義也各不相同。常用的連接器接口圖如圖1所示,DB9的引腳功能見表1。
RS232C標(biāo)準(zhǔn)接口有25條線,分別為4條數(shù)據(jù)線、11條控制線、3條定時(shí)線、7條備用和未定義線,常用的只有9根,它們是:
(1)狀態(tài)線
數(shù)據(jù)準(zhǔn)備就緒(Data Set Ready,DSR):有效時(shí)(ON)狀態(tài),表明數(shù)據(jù)通信設(shè)備可以使用。
數(shù)據(jù)終端就緒(Data Terminal Ready,DTR):有效時(shí)(ON)狀態(tài),表明數(shù)據(jù)終端設(shè)備可以使用。
這兩個(gè)信號有時(shí)連到電源上,上電就立即有效。
這兩個(gè)設(shè)備狀態(tài)信號有效,只表示設(shè)備本身可用,并不說明通信鏈路可以開始進(jìn)行通信了,能否開始進(jìn)行通信由下面的控制信號決定。
(2)聯(lián)絡(luò)線
請求發(fā)送(Request to Send,RTS):DTE準(zhǔn)備向DCE發(fā)送數(shù)據(jù),DTE使該信號有效(ON狀態(tài)),通知DCE要發(fā)送數(shù)據(jù)給DCE了。
允許發(fā)送(Clear to Send,CTS):對RTS的響應(yīng)信號。當(dāng)DCE已準(zhǔn)備好接收DTE傳來的數(shù)據(jù)時(shí),使該信號有效,通知DTE開始發(fā)送數(shù)據(jù)。
RTS/CTS請求應(yīng)答聯(lián)絡(luò)信號是用于半雙工MODEM系統(tǒng)中發(fā)送方式和接收方式之間的切換。在全雙工系統(tǒng)中,因配置雙向通道,故不需要RTS/CTS聯(lián)絡(luò)信號,使其變高。
(3)數(shù)據(jù)線
發(fā)送數(shù)據(jù)(Transmitted Data,TXD):DTE發(fā)送數(shù)據(jù)到DCE。
接收數(shù)據(jù)(Received Data,RXD):DCE發(fā)送數(shù)據(jù)到DTE。
(4)地線
有兩根線SG,PG:信號地和保護(hù)地信號線。
(5)其余
載波檢測(Carrier Detection,CD):用來表示DCE已接通通信鏈路,告知DTE準(zhǔn)備接收數(shù)據(jù)。
振鈴指示(Ringlng,RI):當(dāng)DCE收到交換臺送來的振鈴呼叫信號時(shí),使該信號有效(ON狀態(tài)),通知DTE,已被呼叫。
通常的應(yīng)用系統(tǒng)中,往往是在CPU和I/O設(shè)備之間傳送信息,兩者都是DTE,上位機(jī)和單片機(jī)89C52之間的通信,雙方都能發(fā)送和接收,他們的連接只需要使用三根線即可,即RXD,TXD和GND,這種連接方式,即兩個(gè)串口連接時(shí),接收數(shù)據(jù)針腳與發(fā)送數(shù)據(jù)針腳相連,彼此交叉,信號地對應(yīng)接地即可。連接方式如圖2所示。
評論