技(jì)術交流(liu)
串(chuan)行通信(xìn)接口标(biao)準經過(guo)使用和(hé)發展,目(mù)前已經(jīng)有幾種(zhong)♋。但都是(shi)在 RS-232标準(zhun)的基礎(chǔ)上經過(guò)改進而(ér)形成的(de)。所以,以(yǐ)RS-232C爲主來(lai)讨論。RS-323C标(biao)準是美(měi)國EIA(電子(zi)工業聯(lian)合會)與(yu)BELL等公司(si)一起開(kai)發的1969年(nián)公布的(de)通信協(xié)議。它适(shi)合于數(shù)據📧傳輸(shu)速率在(zai)0~20000b/s範圍内(nei)的通信(xin)。這個标(biāo)準對串(chuàn)行通信(xin)接口的(de)有關問(wèn)題,如信(xìn)号線功(gong)能、電器(qi)特性都(dōu)作了明(míng)确規定(dìng)。由于通(tong)行設備(bei)廠商都(dōu)生産與(yu)RS-232C制式兼(jian)容的通(tōng)信設備(bèi),因此,它(tā)作爲一(yī)種标準(zhun),目前已(yi)在微機(jī)通信接(jie)口中廣(guǎng)泛采用(yong)。
本文引(yǐn)用地址(zhǐ):http://eepw.com.cn/article/201702/344595.htm在讨論(lun)RS-232C接口标(biao)準的内(nei)容之前(qián),先說明(ming)兩點:
首(shou)先,RS-232-C标準(zhǔn)最初是(shi)遠程通(tōng)信連接(jiē)數據終(zhong)端設備(bèi)DTE(Data Terminal Equipment)與數據(ju)通信設(she)備DCE(Data CommunicaTIon Equipment)而制(zhì)定的。因(yin)此這個(gè)标準的(de)制定,并(bing)未考慮(lü)計👉算機(jī)系統🌂的(de)應用要(yao)求。但目(mù)前它又(you)廣泛地(dì)被借來(lai)用于計(jì)算機(更(geng)準确的(de)說,是計(jì)算機接(jie)口🌏)與終(zhōng)端或外(wai)設之間(jian)的近端(duān)連接标(biao)準。顯然(rán),這個标(biao)☁️準的有(you)些規定(dìng)及和計(jì)算機系(xi)統是不(bu)一緻的(de),甚至是(shì)相矛盾(dun)的。有了(le)對這種(zhǒng)背景的(de)了解,我(wǒ)們對RS-232C标(biao)準與計(jì)算機❄️不(bu)兼容的(de)地方就(jiù)不難理(lǐ)解了。
其(qi)次,RS-232C标準(zhǔn)中所提(ti)到的“發(fā)送”和“接(jiē)收”,都是(shi)站在DTE立(li)場上,而(er)不是站(zhan)在DCE的立(lì)場來定(ding)義的。由(you)于在計(ji)算機系(xì)統中,往(wang)往是CPU和(hé)I/O設備⚽之(zhi)間傳送(sòng)信息,兩(liang)者都是(shì)DTE,因此🏃雙(shuang)方都🥰能(néng)發送和(he)接收。
一(yi)、RS-232-C
RS-232C标準(協(xie)議)的全(quán)稱是EIA-RS-232C标(biao)準,其中(zhōng)EIA(Electronic Industry AssociaTIon)代表美(měi)國電子(zi)工業👨❤️👨協(xié)會✍️,RS(ecommeded standard)代表(biao)推薦标(biāo)準,232是标(biao)識号,C代(dài)表RS232的最(zui)新一次(cì)修改(1969),在(zài)這之☁️前(qián),有RS232B、RS232A。。它規(gui)定連接(jiē)電纜和(he)機械、電(dian)氣特性(xìng)、信号功(gong)能及傳(chuan)送過程(cheng)。常用物(wu)理标準(zhun)還有有(you)EIA?RS-232-C、EIA?RS-422-A、EIA?RS-423A、EIA?RS-485。 這裏隻(zhi)介紹EIA?RS-232-C(簡(jiǎn)稱232,RS232)。 例如(rú),目前在(zai)IBM PC機上🎯的(de)COM1、COM2接口,就(jiu)🚶是RS-232C接口(kǒu)。
RS232C引腳定(ding)義
串行(hang)口的典(diǎn)型代表(biǎo)是RS-232C及其(qí)兼容插(cha)口,有9針(zhen)和25針兩(liang)類。25針♉串(chuàn)行口具(ju)有20mA電流(liu)環接口(kou)功能,用(yòng)9、11、18、25針來實(shi)現。其針(zhen)腳功能(neng)如下:
1.電(dian)氣特性(xìng)
EIA-RS-232C對電器(qì)特性、邏(luo)輯電平(ping)和各種(zhǒng)信号線(xiàn)功能都(dōu)作了規(gui)定。
在TxD和(he)RxD上:邏輯(ji)1(MARK)=-3V~-15V
邏輯0(SPACE)=+3~+15V
在(zài)RTS、CTS、DSR、DTR和DCD等控(kòng)制線上(shang):
信号有(you)效(接通(tong),ON狀态,正(zheng)電壓)=+3V~+15V
信(xin)号無效(xiào)(斷開,OFF狀(zhuàng)态,負電(dian)壓)=-3V~-15V
以上(shàng)規定說(shuo)明了RS-323C标(biao)準對邏(luo)輯電平(ping)的定義(yi)。對于數(shù)據(信息(xi)碼):邏輯(jí)“1”(傳号)的(de)電平低(dī)于-3V,邏輯(ji)“0”(空号)的(de)電平告(gao)語+3V;對于(yu)控制💃🏻信(xin)号;接通(tong)狀态(ON)即(jí)信号有(yǒu)效的電(dian)平㊙️高于(yu)+3V,斷開狀(zhuang)态(OFF)即信(xin)号無效(xiao)的電平(píng)低于-3V,也(ye)就是當(dang)傳輸電(dian)平的絕(jué)對值🈲大(dà)于3V時,電(dian)路可以(yǐ)有效地(di)檢查📧出(chū)來,介于(yu)-3~+3V之💋間的(de)電壓無(wu)意義,低(di)于-15V或高(gao)于+15V的電(dian)壓☂️也認(rèn)爲無意(yi)🍉義,因此(ci),實際工(gōng)作時,應(ying)保證電(diàn)平在±(3~15)V之(zhī)🐆間。 字串(chuàn)2
EIA-RS-232C與TTL轉換(huàn):EIA-RS-232C是用正(zheng)負電壓(yā)來表示(shì)邏輯狀(zhuàng)态,與TTL以(yǐ)高低電(diàn)平表示(shì)邏輯
狀(zhuang)态的規(gui)定不同(tóng)。因此,爲(wèi)了能夠(gòu)同計算(suàn)機接口(kou)或終端(duān)的TTL器件(jiàn)連接,必(bì)須在EIA-RS-232C與(yu)TTL電路之(zhī)間進行(háng)電平和(he)邏輯關(guān)系的變(biàn)換。實現(xian)這種變(bian)換的方(fang)法可用(yòng)分立元(yuán)件,也可(kě)用集成(chéng)電路芯(xin)片。目前(qian)較爲🈲廣(guǎng)泛地使(shi)用集成(chéng)電路轉(zhuǎn)換器件(jian),如MC1488、SN75150芯片(pian)可完成(chéng)TTL電平到(dào)EIA電平的(de)轉換,而(er)MC1489、SN75154可實☂️現(xiàn)EIA電平到(dao)TTL電平的(de)轉換。MAX232芯(xin)😍片可完(wán)成TTL←→EIA雙⭐向(xiàng)電平轉(zhuǎn)換,圖1顯(xiǎn)示了1488和(hé)1489的内✏️部(bù)結構和(hé)引腳。MC1488的(de)引腳(2)、(4,5)、(9,10)和(he)(12,13)接TTL輸🔞入(ru)。引腳🚶3、6、8、11輸(shū)出端接(jiē)EIA-RS-232C。MC1498的14的1、4、10、13腳(jiǎo)接EIA輸入(ru),而3、6、8、11腳接(jiē)TTL輸🔴出。具(jù)體連接(jie)方法😄如(ru)圖2所示(shi)。圖中的(de)💃🏻左邊是(shi)微機✍️串(chuan)行接口(kǒu)電路中(zhong)的主芯(xīn)片UART,它🌈是(shi)TTL器件,右(yòu)邊是EIA-RS-232C連(lian)接器,要(yào)求EIA高電(dian)壓。因此(ci),RS-232C所有的(de)輸出、輸(shu)入信号(hào)都要分(fèn)别經過(guo)MC1488和MC1498轉換(huan)器,進行(hang)電平轉(zhuan)換後才(cai)能送到(dào)連接👣器(qì)上去或(huo)從連接(jie)器上送(sòng)進來。
2、連(lián)接器的(de)機械特(te)性:
連接(jie)器: 由于(yú)RS-232C并未定(ding)義連接(jiē)器的物(wù)理特性(xìng),因此,出(chu)現了DB-25、DB-15和(hé)DB-9各種類(lèi)型的連(lián)接器,其(qí)引腳的(de)定義也(yě)各不相(xiang)同。下面(mian)分别🌈介(jie)紹兩種(zhǒng)連接器(qi)。
(1)DB-25: PC和XT機采(cǎi)用DB-25型連(lian)接器。DB-25連(lian)接器定(ding)義了25根(gen)信号線(xian),分爲4組(zǔ):
①異步通(tong)信的9個(gè)電壓信(xin)号(含信(xìn)号地SG)2,3,4,5,6,7,8,20,22
字(zi)串6
②20mA電流(liú)環信号(hào) 9個(12,13,14,15,16,17,19,23,24)
③空6個(gè)(9,10,11,18,21,25)
④保護地(dì)(PE)1個,作爲(wei)設備接(jie)地端(1腳(jiao))
DB-25型連接(jie)器的外(wài)形及信(xìn)号線分(fèn)配如圖(tu)3所示。注(zhù)意,20mA電♋流(liu)環信号(hao)僅IBM PC和IBM PC/XT機(jī)提供,至(zhì)AT機及以(yǐ)後,已不(bú)支持。
電(diàn)纜長度(du):在通信(xìn)速率低(di)于20kb/s時,RS-232C所(suǒ)直接連(lian)接的最(zuì)大🍓物理(li)距🏃離爲(wèi)15m(50英尺)。
最(zuì)大直接(jiē)傳輸距(ju)離說明(míng):RS-232C标準規(gui)定,若不(bú)使用MODEM,在(zai)碼元畸(jī)變小于(yú)4%的情況(kuang)下,DTE和DCE之(zhī)間最大(da)傳輸距(ju)離爲15m(50英(yīng)尺)。可見(jiàn)這個最(zui)大的距(jù)離是在(zài)碼元畸(jī)變小于(yu)4%的前提(tí)下給出(chu)的。爲了(le)保證碼(mǎ)元畸變(biàn)小于4%的(de)要求,接(jiē)口标準(zhǔn)在電氣(qì)特性中(zhōng)規定,驅(qu)動器的(de)負載電(diàn)容應小(xiǎo)于2500pF。
3、RS-232C的接(jie)口信号(hào)
RS-232C規标準(zhun)接口有(yǒu)25條線,4條(tiáo)數據線(xiàn)、11條控制(zhi)線、3條定(dìng)時線、7條(tiáo)備用和(he)未定義(yi)線,常用(yòng)的隻有(yǒu)9根,它們(men)是:
(1)聯絡(luò)控制信(xin)号線 :
數(shu)據裝置(zhì)準備好(hǎo)(Data set ready-DSR)——有效時(shí)(ON)狀态,表(biao)明MODEM處于(yú)可以使(shi)用的狀(zhuang)态。
數據(jù)終端準(zhǔn)備好(Data set ready-DTR)——有(yǒu)效時(ON)狀(zhuang)态,表明(ming)數據終(zhong)端可以(yi)使用。
這(zhe)兩個信(xìn)号有時(shí)連到電(dian)源上,一(yi)上電就(jiu)立即有(yǒu)效。這兩(liǎng)個設備(bei)狀态信(xìn)号有效(xiao),隻表示(shi)設備本(běn)身可用(yòng),并不說(shuo)明通信(xin)鏈路可(kě)以開始(shǐ)進行通(tōng)信了,能(néng)否開始(shǐ)進行🔴通(tong)信要由(you)下面的(de)控制信(xìn)号決定(dìng)。
請求發(fa)送(Request to send-RTS)——用來(lái)表示DTE請(qing)求DCE發送(song)數據,即(jí)當終端(duan)要發送(song)數🌈據時(shí),使該信(xìn)号有效(xiao)(ON狀态),向(xiàng)MODEM請求發(fa)送。它用(yòng)來控制(zhì)MODEM是否要(yào)進入發(fa)送狀态(tài)。
允許發(fa)送(Clear to send-CTS)——用來(lai)表示DCE準(zhun)備好接(jiē)收DTE發來(lái)的數據(ju),是對請(qǐng)求發送(sòng)😘信号RTS的(de)響應信(xìn)号。當MODEM已(yǐ)準備好(hao)接收終(zhōng)端傳來(lai)🔆的數據(ju),并向前(qián)發送時(shi),使該信(xin)号有效(xiao),通知終(zhōng)端開始(shi)沿發送(sòng)數據線(xian)TxD發送數(shù)據。
這對(duì)RTS/CTS請求應(yīng)答聯絡(luo)信号是(shì)用于半(bàn)雙工MODEM系(xì)統中發(fa)送方式(shì)和接收(shou)方式之(zhi)間的切(qie)換。在全(quan)
雙工系(xi)統中作(zuò)發送方(fāng)式和接(jie)收方式(shi)之間的(de)切換。在(zai)全雙工(gōng)系統中(zhōng),因配置(zhi)雙向通(tōng)道,故不(bú)需要RTS/CTS聯(lián)絡信号(hao),使其變(biàn)高。
接收(shou)線信号(hào)檢出(Received Line detecTIon-RLSD)——用(yong)來表示(shi)DCE已接通(tōng)通信鏈(lian)路,告知(zhī)DTE準備接(jiē)收數據(jù)。當本地(di)的MODEM收到(dào)由通信(xin)鏈路另(ling)一端(遠(yuǎn)地)的MODEM送(song)來的載(zai)波信号(hào)時,使RLSD信(xìn)号有效(xiào),通知終(zhong)端準備(bèi)接💁收,并(bing)且👅由MODEM将(jiang)接收下(xià)來的載(zai)波信号(hao)解調成(cheng)數字兩(liang)數據後(hou),沿接收(shōu)數據線(xiàn)♌RxD送到終(zhong)端。此線(xiàn)也叫🈲做(zuo)數據載(zai)波檢出(chū)(Data Carrier dectecTIon-DCD)線。
振鈴(ling)指示(Ringing-RI)——當(dang)MODEM收到交(jiāo)換台送(sòng)來的振(zhen)鈴呼叫(jiào)信号時(shi),使該信(xin)号有效(xiao)(ON狀态),通(tōng)知終端(duān),已被呼(hū)叫。
(2)數據(ju)發送與(yǔ)接收線(xiàn):
發送數(shù)據(Transmitted data-TxD)——通過(guò)TxD終端将(jiang)串行數(shu)據發送(song)到MODEM,(DTE→DCE)。
接收(shou)數據(Received data-RxD)——通(tōng)過RxD線終(zhōng)端接收(shou)從MODEM發來(lai)的串行(háng)數據,(DCE→DTE)。
(3)地(dì)線
有兩(liǎng)根線SG、PG——信(xìn)号地和(he)保護地(dì)信号線(xian),無方向(xiàng)。
上述控(kong)制信号(hào)線何時(shí)有效,何(he)時無效(xiao)的順序(xu)表示了(le)接口信(xin)号的傳(chuan)送過程(cheng)。例如,隻(zhi)有當DSR和(he)DTR都處于(yú)有效(ON)狀(zhuàng)态時,才(cai)能在DTE和(hé)DCE之間進(jìn)行傳送(sòng)操作。若(ruo)DTE要發送(sòng)🈚數據,則(zé)預先将(jiāng)DTR線置成(chéng)有效(ON)狀(zhuang)态,等CTS線(xiàn)上收到(dao)有效(ON)狀(zhuàng)态的回(hui)答後,才(cai)能在TxD線(xiàn)上發送(sòng)串行數(shù)💔據。這種(zhong)順㊙️序的(de)規定對(dui)半雙工(gong)的通信(xìn)線路特(te)别有用(yòng),因爲半(ban)雙工的(de)通信才(cai)🚶♀️能确定(ding)DCE已由接(jiē)收方向(xiang)改爲發(fā)📧送方向(xiang),這時線(xiàn)路才能(néng)開始發(fa)送。
2個數(shù)據信号(hào):發送TXD;接(jiē)收RXD。
1個信(xin)号地線(xian):SG。
6個控制(zhi)信号:
DSR??數(shù)傳機(即(jí)modem)準備好(hao),Data Set Ready.
DTR??數據終(zhong)端(DTE,即微(wēi)機接口(kǒu)電路,如(ru)Intel8250/8251,16550)準備好(hao),Data Terminal Ready。
RTS??DTE請求DCE發(fā)送(Request To Send)。
CTS??DCE允許(xu)DTE發送(Clear To Send),該(gai)信号是(shì)對RTS信号(hào)的回答(dá)。
DCD??數據載(zǎi)波檢出(chū),Data Carrier Detection當本地(dì)DCE設備(Modem)收(shou)到對方(fang)的DCE設備(bei)送來🥵的(de)載波信(xìn)号時,使(shi)DCD有效,通(tōng)知DTE準備(bei)接收, 并(bing)且由DCE将(jiāng)接收到(dào)🙇🏻的載波(bō)信👨❤️👨号解(jiě)調爲數(shu)字信号(hao), 經RXD線送(song)給DTE。
RI??振鈴(líng)信号 Ringing當(dang)DCE收到交(jiāo)換機送(song)來的振(zhen)鈴呼叫(jiao)信号時(shi),使該信(xìn)号有效(xiao),通知DTE已(yǐ)被呼叫(jiào)。
遠距離(li)通信
第(di)1和第2中(zhōng)情況是(shì)屬于遠(yuǎn)距離通(tong)信(傳輸(shū)距離大(da)于15m的通(tong)信💃🏻)的例(lì)🌈子,故一(yi)般要加(jiā)調制解(jiě)調器MODEM,因(yīn)此使用(yong)🧑🏾🤝🧑🏼的信号(hào)線較多(duo)♍。注意:在(zai)以下各(ge)圖中,DTE信(xìn)号爲RS-232-C信(xìn)号,DTE與計(ji)算機🧡間(jian)的電平(ping)轉換電(dian)路未畫(hua)出。
1、采用(yong)Modem(DCE)和電話(huà)網通信(xin)時的信(xin)号連接(jie):
若在雙(shuang)方MODEM之間(jiān)采用普(pǔ)通電話(hua)交換線(xian)進行通(tong)信,除了(le)🔱需要👉2~8号(hào)信号線(xian)外還要(yào)增加RI(22号(hào))和DTR(20号)兩(liang)個信号(hao)線進行(háng)聯絡,如(ru)圖4所示(shì)。
DSR、DTR:數傳機(jī)(DCE)準備好(hao)、數據終(zhong)端(DTE)準備(bèi)好,隻表(biǎo)示設備(bèi)本身♉可(kě)用。
首先(xiān),通過電(dian)話機拔(bá)号呼叫(jiào)對方,電(dian)話交換(huan)台向對(duì)方發出(chū)拔号呼(hu)叫信号(hao),當對方(fang)DCE收到該(gai)信号後(hou),使RI(振💋鈴(ling)信号)有(yǒu)效,通知(zhī)DTE,已被呼(hu)叫。當對(duì)方“摘機(ji)”後,兩方(fang)建立了(le)通信鏈(lian)路。
若計(ji)算機要(yao)發送數(shu)據至對(dui)方,首先(xian)通過接(jie)口電路(lù)(DTE)發🌈出RTS(請(qing)🚶♀️求發送(sòng))信号。此(cǐ)時,若DCE(Modem)允(yǔn)許傳送(sòng),則向DTE回(huí)答CTS(允許(xǔ)發送)信(xìn)⭐号。一般(ban)可直接(jiē)将RTS/CTS接高(gāo)電平,即(jí)隻要通(tōng)信鏈路(lu)已建立(li),就可傳(chuán)送信号(hào)。(RTS/CTS可隻用(yòng)于半雙(shuang)工系統(tǒng)中作發(fa)送方式(shì)和接收(shōu)方式的(de)切換。
當(dang)DTE獲得CTS信(xin)号後,通(tōng)過T XD線向(xiàng)DCE發出串(chuàn)行信号(hao),DCE(Modem)将這些(xiē)數字😍信(xin)号調制(zhi)㊙️成模拟(ni)信号(又(you)稱載波(bō)信号),傳(chuan)向對方(fāng)。
計算機(ji)向DTE“數據(ju)輸出寄(ji)存器”傳(chuan)送新的(de)數據前(qian),應檢查(chá)Modem狀态和(he)㊙️數🥵據輸(shu)出寄存(cún)器爲空(kōng)。當對方(fāng)的DCE收到(dào)載波信(xin)号後,向(xiàng)對方的(de)DTE發出🈚DCD信(xin)号(數據(ju)載波檢(jiǎn)出),通知(zhī)其DTE準備(bei)接收,同(tóng)🏃♀️時,将載(zǎi)波信号(hào)解調爲(wèi)數據信(xìn)号,從RXD線(xian)上送給(gěi)DTE,DTE通過串(chuàn)行🌐接收(shōu)移位寄(jì)存器對(dui)接收到(dao)的位流(liú)進行移(yí)位,當收(shou)到1個字(zi)符的全(quan)部位流(liú)後,把該(gāi)字符的(de)數據位(wèi)送到數(shù)據輸入(ru)寄存器(qì),CPU可以從(cong)數據輸(shū)入寄存(cún)器讀取(qu)✂️字符。
近(jìn)距離通(tōng)信:
當通(tong)信距離(li)較近時(shí),可不需(xū)要Modem,通信(xin)雙方可(ke)以直接(jiē)連接,這(zhè)種情況(kuang)下,隻需(xu)使用少(shǎo)數幾根(gen)信号線(xiàn)。最簡單(dan)的情況(kuàng),在通✨信(xìn)中❄️根本(ben)不需要(yao)RS-232C的控制(zhi)聯絡信(xìn)号,隻需(xu)三根線(xiàn)(發送線(xiàn)、接🔱收線(xian)、信号地(di)線)便可(kě)實現全(quán)雙工異(yi)步串行(háng)通信,即(jí)是這裏(lǐ)要讨論(lùn)的第一(yī)種情況(kuang)。
無Modem時,最(zui)大通信(xin)距離按(an)如下方(fang)式計算(suan):
RS-232C标準規(guī)定:當誤(wu)碼率小(xiao)于4%時,要(yào)求導線(xian)的電容(róng)值應小(xiǎo)于2500PF。對❄️于(yu)普通導(dǎo)線,其電(diàn)容值約(yuē)爲170PF/M。則允(yǔn)許距離(lí)L=2500PF/(170PF/M)=15M
這一距(ju)離的計(ji)算,是偏(piān)于保守(shou)的,實際(ji)應用中(zhōng),當使用(yong)9600bps,普通雙(shuāng)🙇♀️絞屏蔽(bì)線時,距(jù)離可達(dá)30~35米。
技術(shù)支持
- 售(shou)後服務(wu)
- 服務流(liu)程
The URL is:
http://qigi.cc
MySQL server error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'and id!=211 and id!=210 order by orders desc,id desc' at line 1 ( 1064 )