<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > RS-232 接口,RS-232 接口是什么意思

          RS-232 接口,RS-232 接口是什么意思

          作者: 時(shí)間:2016-12-13 來(lái)源:網(wǎng)絡(luò) 收藏

          RS-232的最初標(biāo)準(zhǔn)建議將電纜長(zhǎng)度限制在50 ft以?xún)?nèi),對(duì)于≤20 000 b/s的數(shù)據(jù)傳輸速度,可以使用任何類(lèi)型的電纜。

          本文引用地址:http://www.ex-cimer.com/article/201612/329561.htm

          后來(lái)的標(biāo)準(zhǔn)是在接收器規(guī)定了一個(gè)最大的電容2500 pF。這個(gè)數(shù)值包括了接收器的電容、電纜中連接器之間的動(dòng)態(tài)電容以及導(dǎo)線與電纜屏蔽之間,或者在非屏蔽電纜中,導(dǎo)線和地線之間的電容。電容限制了回轉(zhuǎn)速度,或者在輸出切換的時(shí)候的電壓變化速度。一個(gè)較高的電容導(dǎo)致一個(gè)較低的回轉(zhuǎn)速度和較慢的躍遷。一個(gè)較高的電容還意味著一個(gè)電壓變化需要更大的電流來(lái)對(duì)電容充電,因此驅(qū)動(dòng)器總的電能消耗要更大一些。在導(dǎo)線之間的電容還能導(dǎo)致干擾。如果想要使用一個(gè)超出了電容限制的連接,可能仍舊能夠進(jìn)行通信,但是以更低的波特率。利用短電纜及相應(yīng)的更小的電容,如果發(fā)送和接收端硬件都支持更高的速度,則可以比20 000 b/s更快的速度進(jìn)行通信。

          5.1) 非屏蔽電纜

          對(duì)于非屏蔽電纜,計(jì)算非屏蔽電纜的電纜長(zhǎng)度的公式如下:

          ??電纜長(zhǎng)度=(2500—接收器輸入電容)/(電纜電容×1.5)?

          ? 電纜長(zhǎng)度的單位是ft,輸入電容的單位是pF,電纜電容的單位是pF/ft。

          帶狀電纜的典型電容是15 pF/ft,假定接收器的輸人電容是100 pF,電纜最長(zhǎng)可以達(dá)到106 ft((2500—100)/(15×1.5) )。一個(gè)單根非屏蔽雙絞線的典型電容是12 pF/ft。仍然假定輸入電容為100 pF, 則最大電纜長(zhǎng)度為133ft。

          5.2) 屏蔽電纜

          為電纜增加屏蔽縮短了最大長(zhǎng)度,但是屏蔽有時(shí)對(duì)于阻止噪聲混入電纜或者從電纜中“溢出”是需要的。對(duì)于屏蔽的雙絞線,建議將導(dǎo)線到導(dǎo)線電容乘以3以便把導(dǎo)線到屏蔽的電容考慮在內(nèi)。

          ? 因此計(jì)算屏蔽導(dǎo)線的電纜長(zhǎng)度的公式如下:

          ? 電纜長(zhǎng)度=(2500—接受器輸入電容)/(電纜電容×3)

          ? 電纜長(zhǎng)度的單位為ft,輸入電容的單位是pF,電纜電容的單位是pF/ft。

          這就將屏蔽雙絞線電纜的最大長(zhǎng)度削減到66 ft。

          5.3) 雙絞線

          為了減少干擾,可以對(duì)RS-232使用雙絞線電纜和多個(gè)接地線。每一根信號(hào)線應(yīng)和一個(gè)接地線絞在一起。

          5.4) 電纜測(cè)試結(jié)果

          RS-232-C標(biāo)準(zhǔn)規(guī)定,在碼元畸變小于4%的情況下,傳輸電纜長(zhǎng)度應(yīng)為50 英尺(約15米),其實(shí)這個(gè)4%的碼元畸變是很保守的,在實(shí)際應(yīng)用中往往按碼元畸變10-20%的范圍工作的,所以最大距離會(huì)遠(yuǎn)超過(guò)15米。

          美國(guó)DEC公司曾在允許碼元畸變?yōu)?0%得出下面實(shí)驗(yàn)結(jié)果。其中1 號(hào)電纜為屏蔽電纜,型號(hào)為DECP. NO. 9107723,內(nèi)有三對(duì)雙絞線,每對(duì)由22# AWG 組成,其外覆以屏蔽網(wǎng)。2 號(hào)電纜為不帶屏蔽的電纜。型號(hào)為DECP. NO. 9105856-04是22#AWG 的四芯電纜。DEC 公司的實(shí)驗(yàn)結(jié)果

          波特率bps

          1號(hào)電纜傳輸距離(米)

          2號(hào)電纜傳輸距離(米)

          110

          1500

          900

          300

          1500

          900

          1200

          900

          900

          2400

          300

          150

          4800

          300

          75

          9600

          75

          75

          6. 串口通信功能的實(shí)現(xiàn)

          單片機(jī)實(shí)現(xiàn)串口通訊一般使用UART接口或利用GPIO口模仿異步串行通訊數(shù)據(jù)格式,外加驅(qū)動(dòng)芯片連接RS-232口。

          在PC機(jī)上一般直接調(diào)用Window API中的一系列標(biāo)準(zhǔn)的串口通信函數(shù),來(lái)實(shí)現(xiàn)異步串行通訊,控制RS-232口。一般常用VC++或VB來(lái)編程。常用的串口通信函數(shù):

          CreatFile()函數(shù):實(shí)現(xiàn)串口初始化并打開(kāi)串口;

          ReadFile()函數(shù):接收串口傳遞過(guò)來(lái)的二進(jìn)制流并返回?cái)?shù)據(jù)到接收緩沖區(qū)中

          WriteFile()函數(shù):把應(yīng)用程序發(fā)出的指令送到發(fā)送緩沖區(qū)以供串口接收

          1. 打開(kāi)串口

          以下程序用于以同步方式打開(kāi)串口COM1;

          HANDLE hCom;

          DWORD dwErrorHcomm="CreateFile"(“COM1”,GENERIC_READ|GENERIC_WRITE

          ,0, NULL,OPEN_EXISTING, 0, NULL);

          if (hComm==(HANDLE)0Xffff)

          {

          dwError=GetLastError();

          MessageBox(dwError);

          }

          2. 配置串口

          配置串口是通過(guò)改變?cè)O(shè)備控制塊DCB(Device Control Block)的成員變量值來(lái)實(shí)現(xiàn)的,程序?qū)崿F(xiàn)如下:

          DCB dcb

          dcb.BaudRate=9600;//波特率為9600bps

          dcb.ByteSize=8;//數(shù)據(jù)位8位

          dcb.Parity=EVENPARTTY;//有校驗(yàn)

          dcb.StopBits=ONESTOPRTT; //一個(gè)停止位

          SetCommState(hCom,&dcb);

          3. 數(shù)據(jù)讀寫(xiě)

          對(duì)串口進(jìn)行讀寫(xiě)與對(duì)文件進(jìn)行讀寫(xiě)所用的函數(shù)相同,具體為可采用查詢(xún)、同步、異步或事件驅(qū)動(dòng)等方法對(duì)串口進(jìn)行讀寫(xiě)所用函數(shù)如下所示:

          bReadStatus=ReadFile(hCom,buffer,length,&length &m_lpOverlapped);

          if(!bReadStatus)

          {

          if(GetLastError()=ERROR_IO_PENDING)

          {

          WaitForSingleObject(m_lpOverlapped,hEvent,1000);

          return((char)length);

          }

          return 0;

          }

          //寫(xiě)入函數(shù)程序?yàn)?

          bWriteStatus=WriteFile(hCom,buffer,length,&length,&m_lpOverlapped)

          if(!bWriteStatus)

          {

          if(GetLastError()=ERROR_IO_PENDING)

          {

          WaitForSingleObject(m_lpOverlapped, hEvent,1000);

          return((char)length);

          }

          return 0;

          }

          4. 程序的編制

          用VC++進(jìn)行程序的編制首先要對(duì)串口進(jìn)行初始化,設(shè)定端口,通信速率和校驗(yàn)方式,并在使用前打開(kāi)串口,程序部分如下:

          {

          Cdialog::OnInitDialog();//TOD Add extra initialization here

          m_comm.SetCommPort(1);//選擇串口1

          if(! m_comm.GetPortOpen())

          m_comm.SetPortOpen(TRUE);//打開(kāi)串口1

          m_comm.SetSettings(“9600,n,8,1”); //設(shè)置串口參數(shù)

          m_comm.SetRThreshold(1);

          m_comm.SetInputMode(1);//設(shè)置二進(jìn)制模式

          return TRUE;

          }

          除了串口的位置和基本串口參數(shù)(數(shù)據(jù)傳輸速率9600bps,1位開(kāi)始位,8位數(shù)據(jù)位,1位停止位,一位奇偶校驗(yàn))設(shè)置外,為了實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)采集功能,接受數(shù)據(jù)的讀寫(xiě)要盡可能的快速,則設(shè)置RTHreshold=1即接收緩沖區(qū)收到一個(gè)字節(jié)產(chǎn)生OnComm事件InputLen=1每次讀取一個(gè)字節(jié)。如果PC上位機(jī)在一定時(shí)間內(nèi)不能將數(shù)據(jù)處理完,接收緩沖區(qū)會(huì)滯留數(shù)據(jù),數(shù)據(jù)會(huì)產(chǎn)生丟失現(xiàn)象,我們必須對(duì)接受緩沖區(qū)進(jìn)行適當(dāng)?shù)脑O(shè)置。RS-232 的缺陷及改進(jìn)

          由于RS-232標(biāo)準(zhǔn)開(kāi)發(fā)較早,使用的是當(dāng)時(shí)流行的DTL技術(shù),隨著技術(shù)的進(jìn)步,越老越顯露出其局限。

          7.1)RS-232 的缺陷

          1)接口的信號(hào)為DTL電平,電壓值較高,易損壞接口電路的芯片,又因?yàn)榕cTTL電平不兼容故需使用電平轉(zhuǎn)換電路方能與TTL電路連接。  

          2) 傳輸速率較低,在異步傳輸時(shí),波特率為20Kbps(現(xiàn)在已發(fā)展到超過(guò)115.2 Kbps)。
          3) 接口使用一根信號(hào)線和一根信號(hào)返回線而構(gòu)成共地的傳輸形式,這種共地傳輸容易產(chǎn)生共模干擾,所以抗噪聲干擾性弱。
          4)傳輸距離有限,最大傳輸距離標(biāo)準(zhǔn)值為50英尺(約15米),實(shí)際上也只能用在50米左右。    
          5)接口為一對(duì)一連接

          7.2)RS-422/485接口

          為彌補(bǔ)其技術(shù)缺陷,后來(lái)又在其基礎(chǔ)上發(fā)展了其他一些串行接口標(biāo)準(zhǔn),最常見(jiàn)的是422/485

          RS-422(EIA-422):

          標(biāo)準(zhǔn)全稱(chēng)是“平衡電壓數(shù)字接口電路的電氣特性”,收發(fā)都使用差分信號(hào),為四線接口,還有一根信號(hào)地線(一定要接地,要求通信雙方的地電位差小于1V),共5根線(+發(fā)、-發(fā)、+收、-收、地),一般使用雙絞線傳輸差分信號(hào),因此有良好的抗共模干擾能力。采用單獨(dú)的發(fā)送和接收通道,為全雙工方式,支持點(diǎn)對(duì)多的雙向通信,允許在相同傳輸線上連接多個(gè)接收節(jié)點(diǎn),最多可接10個(gè)節(jié)點(diǎn),即一個(gè)主設(shè)備(Master),其余為從設(shè)備(Salve),從設(shè)備之間不能通信。

          RS-422多節(jié)點(diǎn)構(gòu)成網(wǎng)絡(luò)。網(wǎng)絡(luò)拓?fù)?/strong>一般采用終端匹配的總線型結(jié)構(gòu),不支持環(huán)形或星形網(wǎng)絡(luò)。發(fā)送驅(qū)動(dòng)器A、B之間的正電平在+2~+6V,是一個(gè)邏輯狀態(tài),負(fù)電平在-2~-6V,是另一個(gè)邏輯狀態(tài)。接收端A比B高200mV以上即認(rèn)為是邏輯"1",A 比B 低200mV 以上即認(rèn)為是邏輯"0"。

          接收器輸入阻抗為4k。RS-422需要一終接電阻,終接電阻接在傳輸電纜的最遠(yuǎn)端,要求其阻值約等于傳輸電纜的特性阻抗。在矩距離傳輸時(shí)(一般在300米以下)可不需終接電阻。

          RS-422的最大傳輸距離為4000英尺(約1200米),最大傳輸速率為10Mb/s,其平衡雙絞線的長(zhǎng)度與傳輸速率成反比。在100kb/s速率以下,才可能達(dá)到最大傳輸距離;只有在很短的距離下才能獲得最高速率傳輸,一般100米長(zhǎng)的雙絞線上所能獲得的最大傳輸速率僅為1Mb/s。

          RS-485(EIA-485):

          RS-485是從RS-422基礎(chǔ)上發(fā)展而來(lái)的,許多電氣規(guī)定與RS-422相仿,但一般采用二線方式,使用屏蔽雙絞線,共有三條信號(hào)線(+A、-B、地),是半雙工多點(diǎn)雙向通信,總線上可接到32個(gè)設(shè)備。

          RS-485接收器最小輸入阻抗為12k。需要2個(gè)終接電阻,在傳輸線的兩端,其阻值要求等于傳輸電纜的特性阻抗。

          為了安全起見(jiàn),建議通信機(jī)器的外殼接大地。RS-422/485光隔轉(zhuǎn)換器的所有外接電源的“地”必須全部連在一起但不要與計(jì)算機(jī)外殼地相連,因?yàn)殡娫?ldquo;地”同時(shí)也是RS-485或 RS-422的信號(hào)“地”。當(dāng)通信距離超過(guò)100米時(shí)建議最好使用光電隔離的通信接口轉(zhuǎn)換器。RS-485 的國(guó)際標(biāo)準(zhǔn)并沒(méi)有規(guī)定RS485 的接口連接器標(biāo)準(zhǔn)。

          7.3)RS-422/485的電纜長(zhǎng)度:

          在使用RS422/485接口時(shí),對(duì)于特定的傳輸線徑,從發(fā)生器到負(fù)載其數(shù)據(jù)信號(hào)傳輸所允許的最大電纜長(zhǎng)度是數(shù)據(jù)信號(hào)速率的函數(shù),這個(gè)長(zhǎng)度數(shù)據(jù)主要是受信號(hào)失真及噪聲等影響所限制。

          下圖所示的最大電纜長(zhǎng)度與信號(hào)速率的關(guān)系曲線是使用24AWG銅芯雙絞電話電纜(線徑為0。51mm),線間旁路電容為52.5pF/m,終端負(fù)載電阻為100歐時(shí)所得出。(曲線引自GB11014-89附錄A)。

          由圖中可知,當(dāng)數(shù)據(jù)信號(hào)速率降低到90Kbit/S以下時(shí),假定最大允許的信號(hào)損失為6dBV時(shí),則電纜長(zhǎng)度被限制在1200M。實(shí)際上,圖中的曲線是很保守的,在實(shí)用時(shí)是完全可以取得比它大的電纜長(zhǎng)度。當(dāng)使用不同線徑的電纜。則取得的最大電纜長(zhǎng)度是不相同的。例如: 當(dāng)數(shù)據(jù)信號(hào)速率為600Kbit/S時(shí),采用24AWG電纜,由圖可知最大電纜長(zhǎng)度是200m,若采用19AWG電纜(線徑為0.91mm)則電纜長(zhǎng)度將可以大于200m;若采用28AWG電纜(線徑為0.32mm)則電纜長(zhǎng)度只能小于200m。RS-485的遠(yuǎn)距離通信建議采用屏蔽電纜,并且將屏蔽層作為地線。
          7.4)RS-422/485接口與RS-232對(duì)比的優(yōu)勢(shì):

          1)邏輯“1”以?xún)删€A、B間的電壓差為+2~+6V表示,邏輯“0”以?xún)删€間的電壓差為-2~-6V 表示,電平與TTL電平兼容,可方便與TTL電路連接。
          2)數(shù)據(jù)最高傳輸速率為10Mbps
          3)接口是采用平衡驅(qū)動(dòng)器和差分接收器的組合,抗共模干能力增強(qiáng),即抗噪聲干擾性好?!   ?br />4)接口的最大傳輸距離標(biāo)準(zhǔn)值為1200米(9600bps時(shí)),實(shí)際上可達(dá)3000米

          5)接口可為總線方式,允許連接多達(dá)128個(gè)收發(fā)器,具有多站能力,可方便地建立起設(shè)備網(wǎng)絡(luò)。

          雖然RS-422/485接口有如此對(duì)的優(yōu)勢(shì),但RS-232仍是最普遍使用的串行通訊接口標(biāo)準(zhǔn),這可能與PC機(jī)的普遍使用分不開(kāi),而RS-422/485往往只局限在一些特殊場(chǎng)合,主要是工業(yè)控制方面,比如需要總線式連接多個(gè)設(shè)備或需要長(zhǎng)距離、高速度傳輸?shù)牡胤剑乙餐褂肦S-232轉(zhuǎn)RS-422/485接口實(shí)現(xiàn)。

          3.RS-232的互連

          如果需要連接不同類(lèi)型的連接器,可以使用不同配置的適配器和電纜,或者自己制作適配器和電纜。所有的RS-232輸出和輸入必須能夠承受任何其他RS-232信號(hào),包括接地信號(hào)的短路而不受損壞。

          4.1) 直連

          在連接的兩端都有相同類(lèi)型的連接器的時(shí)候,要連接DTE和DCE,電纜可直接連接對(duì)應(yīng)的每一根導(dǎo)線,引腳1到引腳1,引腳2到引腳2等等。

          4.2)9到25針直連

          如果連接一個(gè)9針和一個(gè)25針的連接器,使用如圖所示的9到25針(或相反)的適配器。

          4.3)全握手連接(交互連接)

          DTE與DTE之間連接,允許硬件握手,常用于計(jì)算機(jī)之間的互連。數(shù)據(jù)和握手信號(hào)輸出連接到它們?cè)诹硪慌_(tái)設(shè)備上的相應(yīng)的輸入 。

          4.4)循環(huán)回送連接

          在一個(gè)循環(huán)回送連接中,握手信號(hào)輸出循環(huán)回送給自身設(shè)備的相應(yīng)輸入,這在一臺(tái)設(shè)備要求有握手信號(hào)而另一臺(tái)不提供握手信號(hào)的時(shí)候就很有用處。如圖所示:

          數(shù)據(jù)線正常連接,但是握手信號(hào)輸出循環(huán)回送到它們相應(yīng)的輸入,RTS、CTS、DSR和CD連接到一起。在這種方式下,無(wú)論什么時(shí)候只要DTE聲明了RTS,也會(huì)出現(xiàn)DCE聲明CTS、DSR和CD。一個(gè)變化是連接RTS和CTS,以及將DTR連接到DSR和CD。但是,使用這種類(lèi)型的連接如果接收設(shè)備不能跟上發(fā)送速度就會(huì)導(dǎo)致數(shù)據(jù)錯(cuò)誤。

          4.5)不使用硬件握手連接

          3根導(dǎo)線連接。連接交換RD和TD線,因此每個(gè)TD連接到對(duì)應(yīng)的RD。如圖所示。

          4.6)串行打印機(jī)連接

          串行打印機(jī)通常配置成DTE,因此TD和RD 必須在連接到一臺(tái)PC機(jī)的時(shí)候交換。另外,很多打印機(jī)使用DTR作為握手信號(hào),而有的PC軟件假定CTS為握手信號(hào)。出現(xiàn)這種情況,電纜或者一個(gè)適配器必須將這臺(tái)打印機(jī)的DTR,而不是RTS,連接到PC機(jī)的CTS。

          4.7)串口測(cè)試常用的環(huán)回方式

          3.口的信號(hào)

          現(xiàn)在的RS-232接口常用于異步(Asynchronous)串行通訊,實(shí)際上也可以用于同步(Synchronous)串行通訊。

          3.1)口信號(hào)引腳及定義

          數(shù)據(jù)傳輸分別使用PIN2和PIN3,DSR指示DCE(如MODEM)已啟動(dòng),而DTR指示DTE(如計(jì)算機(jī))已啟動(dòng),DCD指示遠(yuǎn)端MODEM已接收到良好的載波信號(hào)。

          DTE發(fā)出的RTS和DCE發(fā)出的CTS 用于控制。在多數(shù)異步傳輸方式下,RTS和CTS 在通訊過(guò)程中保持不變。然而在DTE連接在多點(diǎn)傳輸線上時(shí),RTS用來(lái)打開(kāi)和關(guān)閉MODEM的載波,因?yàn)槎帱c(diǎn)傳輸線上在某個(gè)時(shí)間只能有一個(gè)發(fā)送者,以使多終端共用一對(duì)電話線。 每當(dāng)一個(gè)DTE要發(fā)送數(shù)據(jù),就使RTS有效, MODEM于是發(fā)出載波,一般要等待幾毫秒使載波穩(wěn)定,然后使CTS有效。DTE在收到CTS后開(kāi)始發(fā)送數(shù)據(jù)。當(dāng)DTE完成發(fā)送數(shù)據(jù),就使RTS無(wú)效,MODEM于是使CTS無(wú)效并關(guān)閉載波。

          時(shí)鐘信號(hào)(PIN15、17和24) 僅用于同步通訊(synchronous communications)。MODEM從數(shù)據(jù)碼流中取出穩(wěn)定的時(shí)鐘信號(hào)并發(fā)給DTE。注意,即使波特率相同時(shí),發(fā)送和接收的時(shí)鐘信號(hào)也不一定相同。

          RS232 DB25

          3.2)PC機(jī)常用的口信號(hào)引腳及定義

          IBM制造PC 機(jī)時(shí)將RS-232 簡(jiǎn)化成了DB-9連接器,后來(lái)成為事實(shí)標(biāo)準(zhǔn)。

          舊式的PC 機(jī)有些帶有DB-25針插座的串口連接器(一般為COM2),為公頭插座(或稱(chēng)MALE),這與常見(jiàn)的DB-25的并口連接器不同,DB-25的并口使用25 芯孔插座(也稱(chēng)為母頭或FEMALE)。

          3.3)信號(hào)電平及電平轉(zhuǎn)換

          在RS-232-C中任何一條信號(hào)線的電壓均為負(fù)邏輯關(guān)系。即:邏輯“1” 為-5—-15V;邏輯“0”為+5—+15V。噪聲容限為2V,即要求接收器能識(shí)別低至+3V的信號(hào)作為邏輯“0”,高到-3V的信號(hào)作為邏輯“1”。+3V到-3V之間稱(chēng)為死區(qū),為抵抗線路噪聲的干擾。但不同的設(shè)備有可能使用不同的電平門(mén)限,比如CCITT V.10 定義死區(qū)為+0.3V to -0.3V。也有的接收機(jī)把門(mén)限設(shè)為1V或更低。

          邏輯“1”表示 "idle" 狀態(tài)(也稱(chēng)OFF或MARK),邏輯“0”表示"active"狀態(tài)(也稱(chēng)ON或SPACE)。

          這種信號(hào)方式源于當(dāng)時(shí)主要使用的DTL電平,與現(xiàn)在數(shù)字電路常用的TTL電平不同,不能直接相連,中間需要加電平轉(zhuǎn)換電路。

          RS-232-C規(guī)定了25條引線,實(shí)際中有許多是很少使用的,如PC 機(jī)一般只有9條引線,3條輸出5條輸入,因PC 機(jī)有+12V和-12V電源,常用的電平轉(zhuǎn)換芯片為SN75185、GD75232等芯片,也有單獨(dú)的驅(qū)動(dòng)芯片MC1488、SN75188和接收芯片MC1489、SN75189。而DCE(數(shù)據(jù)通信設(shè)備)方有3條輸入5條輸出線,需使用對(duì)應(yīng)驅(qū)動(dòng)芯片SN75196、GD75323,但往往DCE只有5V單電源,這時(shí)一般使用內(nèi)帶電荷泵的芯片MAX207、SN65C3238、SN65C3243等, 甚至也有使用3.3V單電源的芯片。

          一些情況下,設(shè)備與PC 機(jī)連接的RS-232 接口,不使用控制信號(hào),僅使用三條接口線RXD、TXD、GND(如單片機(jī)通過(guò)UART連接PC 機(jī)),也只有單電源,使用內(nèi)帶電荷泵的單路收發(fā)芯片,MAXIM、TI、SIPEX、ST等公司都有這種芯片。

          3.4)信號(hào)格式

          RS-232最常使用異步串行傳輸,每個(gè)數(shù)據(jù)包含有7 或 8 bit數(shù)據(jù)位和起始位start,停止位stop, 校驗(yàn)位parity (可選用,也可用于指示位)。 傳輸數(shù)據(jù)的樣值如圖所示:起始位(低有效,通常在+3v到+15v之間),緊接著數(shù)據(jù)位(7或8 bit),校驗(yàn)位(根據(jù)協(xié)議選用),由停止位結(jié)束(通常返回邏輯高,電壓在-3v到-15v之間)。注意:RS-232使用負(fù)邏輯。

          3.5)串口鼠標(biāo)

          早期PC機(jī)使用串口鼠標(biāo),以標(biāo)準(zhǔn)的RS-232-C 輸出信號(hào) (+-12V) 作為輸入。鼠標(biāo)取用RS-232-C的輸出線的電流(大約10mA),并發(fā)送計(jì)算機(jī)RS-232-C接收芯片可以識(shí)別的電平信號(hào)。鼠標(biāo)一般輸出信號(hào)為+-5V或0-5V ,有些輸出+-12V。鼠標(biāo)電路一般使用+5V電壓,一般從DTR和RTS線產(chǎn)生MCU使用的正電源,而負(fù)電源一般取自TD,典型的機(jī)械鼠標(biāo)需要4只紅外LED做移動(dòng)檢測(cè),一般使用二極管從DTR和RTS線取電,然后通過(guò)電阻加到4只LED上。鼠標(biāo)總體需要10 mA 電流,工作電壓6-15V。

          鼠標(biāo)能夠正常工作,RTS和DTR線必須為正電壓, DTR-DSR和RTS-CTS之間不要連接。當(dāng)DTR正常,鼠標(biāo)要發(fā)一個(gè)包含字母"M" (ascii 77) 的字節(jié)來(lái)識(shí)別自身。而冷啟動(dòng)后,RTS 一般設(shè)為負(fù)電壓,這時(shí)需要把RTS轉(zhuǎn)換為正,稱(chēng)為反轉(zhuǎn)RTS。要完成RTS電壓的反轉(zhuǎn),負(fù)脈沖寬度至少為100ms。

          串口鼠標(biāo)使用格式為1200bps, 7 data bits, 1 stop-bit,發(fā)送的數(shù)據(jù)包為3字節(jié)長(zhǎng)度,每次鼠標(biāo)狀態(tài)改變(移動(dòng)或按鍵的按壓與釋放) 都要向計(jì)算機(jī)發(fā)送數(shù)據(jù)。數(shù)據(jù)格式如下:

          bit7

          bit6

          bit5

          bit4

          bit3

          bit2

          bit1

          bit0

          byte1

          X

          1

          LB

          RB

          Y7

          Y6

          X7

          X6

          byte2

          X

          0

          X5

          X4

          X3

          X2

          X1

          X0

          byte3

          X

          0

          Y5

          Y4

          Y3

          Y2

          Y1

          Y0

          字節(jié)1(byte1)首先發(fā)出,然后是其他2個(gè)字節(jié)。字節(jié)1的bit6用做同步數(shù)據(jù)包。

          LB是左鍵的狀態(tài)(1表示按下),RB是右鍵的狀態(tài)(1表示按下);X7-X0表示從上次數(shù)據(jù)包發(fā)出后沿X方向移動(dòng)的距離,Y7-Y0表示從上次數(shù)據(jù)包發(fā)出后沿Y方向移動(dòng)的距離。

          用X表示的位,在使用7 bits數(shù)據(jù)和2 bits停止位格式時(shí)為0;而使用8 bits數(shù)據(jù)和1 bits停止位格式時(shí)為1 。最安全的方式是使用7 bits數(shù)據(jù)和1 bits停止位的接收格式。

          3.6)信號(hào)規(guī)格表

          系統(tǒng)分類(lèi):接口電路 |用戶分類(lèi):信號(hào)接口 |標(biāo)簽:RS-232 DB25 DB-9 |來(lái)源:整理 |

          點(diǎn)擊查看原文

          發(fā)表評(píng)論 閱讀全文(1589) | 回復(fù)(0)

          發(fā)表于 2007/12/22 14:06:38

          2

          RS-232 接口(摘)

          計(jì)算機(jī)與計(jì)算機(jī)或計(jì)算機(jī)與設(shè)備之間的數(shù)據(jù)傳送可以采用串行通訊和并行通訊二種方式。由于串行通訊方式具有使用線路少、成本低,特別是在遠(yuǎn)程傳輸時(shí),避免了多條線路特性的不一致而被廣泛采用。

          RS-232是在1970 年由美國(guó)電子工業(yè)協(xié)會(huì)(EIA: Electronics Industry Association)聯(lián)合貝爾系統(tǒng)、調(diào)制解調(diào)器廠家及計(jì)算機(jī)終端生產(chǎn)廠家共同制定的用于串行通訊的標(biāo)準(zhǔn)。它的全名是"數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)"。該標(biāo)準(zhǔn)規(guī)定采用一個(gè)25個(gè)腳的DB-25連接器,對(duì)連接器的每個(gè)引腳的信號(hào)內(nèi)容加以規(guī)定,還對(duì)各種信號(hào)的電平加以規(guī)定。后來(lái)IBM的PC 機(jī)將RS-232 簡(jiǎn)化成了DB-9連接器,并隨著IBM PC的普及,從而成為事實(shí)標(biāo)準(zhǔn)。

          RS-232歷史悠久,因?yàn)楫?dāng)時(shí)技術(shù)和認(rèn)識(shí)的局限,有很多缺陷,后來(lái)針對(duì)這些缺陷提出了其他許多串行接口標(biāo)準(zhǔn),如422、485等等,但因?yàn)楦鞣N原因都只局限在部分特殊場(chǎng)合,RS-232-C接口(又稱(chēng)EIA RS-232-C)仍是最常用的一種串行通訊接口,其中的“-C”表示RS-232的版本,現(xiàn)在已發(fā)展到-D版本。

          1. DTE和DCE的定義

          RS-232-C,是RS-232-B的修改版,規(guī)定了OSI基本參考模型物理層部分的規(guī)格,制定的目的是用于DCE和DTE之間進(jìn)行串行二進(jìn)制數(shù)據(jù)交換。有如下特點(diǎn):DCE-DTE采用直通方式,全雙工通信,基本頻帶,電流環(huán)方式,串行傳輸方式。

          數(shù)據(jù)通信,就是數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)終端設(shè)備之間的通訊,二者之間需通過(guò)傳輸介質(zhì)(如銅線、同軸電纜、光纖、微波中繼、衛(wèi)星等)組成的傳輸網(wǎng)絡(luò),在此之間就需要加網(wǎng)絡(luò)接口設(shè)備,即數(shù)據(jù)線路設(shè)備(DCE),這樣就組成一條數(shù)據(jù)通訊鏈路。

          DTE(數(shù)據(jù)終端設(shè)備):數(shù)據(jù)鏈路兩端的端末設(shè)備。DTE通過(guò)DCE連接到一個(gè)數(shù)據(jù)網(wǎng)絡(luò)上,并且通常使用DCE產(chǎn)生的時(shí)鐘信號(hào)。數(shù)據(jù)終端設(shè)備包括計(jì)算機(jī)、協(xié)議翻譯器以及多路分解器等設(shè)備。如計(jì)算機(jī)、終端、通信控制器等。

          DCE(數(shù)據(jù)通信設(shè)備或者數(shù)據(jù)電路終端設(shè)備):處于數(shù)據(jù)終端設(shè)備(DTE)和傳輸電路或信道之間,提供了到網(wǎng)絡(luò)的一條物理連接、轉(zhuǎn)發(fā)業(yè)務(wù)量、信號(hào)變換器,并且提供了一個(gè)用于同步DCE設(shè)備和DTE設(shè)備之間數(shù)據(jù)傳輸?shù)臅r(shí)鐘信號(hào)。如調(diào)制解調(diào)器、接口卡、數(shù)傳機(jī)、基帶傳輸器、波形變換器等設(shè)備。

          RS-232-C在ITU建議的V.24/V.28 和X.20bis/X.21bis、ISO IS2110規(guī)定的25引腳連接器在功能上具有互換性。

          后來(lái)RS-232已不只應(yīng)用于DCE和DTE設(shè)備,還有其他更多的應(yīng)用,如鼠標(biāo)、鍵盤(pán)、打印機(jī)、計(jì)算機(jī)間通訊、設(shè)備監(jiān)控、EPROM編程器等,現(xiàn)在嵌入式系統(tǒng)常用的UART接口也來(lái)源與此。

          2. RS-232接口的接插件和電纜

          RS-232-C標(biāo)準(zhǔn)中規(guī)定的連接器為25引腳插入式連接器,一般稱(chēng)為25引腳D-SUB(DB-25),這個(gè)連接器的外殼和一個(gè)大寫(xiě)字母D的外形相似,它可以確定插接連接器時(shí)的方向,導(dǎo)線在兩個(gè)錯(cuò)開(kāi)的行上,每行導(dǎo)線相距0.109英寸。DTE應(yīng)該使用針輸出(也稱(chēng)為MALE或公頭),DCE使用孔輸出(也稱(chēng)為FEMALE或母頭)。RS-232-C所用電纜的形狀并不固定,但大多使用帶屏蔽的24芯電纜,電纜端為DB-25-F對(duì)DB-25-M,直通方式,電纜的最大長(zhǎng)度為15m,在200K位/秒以下的任何速率都能進(jìn)行數(shù)據(jù)傳輸。

          圖示為RS-232接口中常用的DB-25連接器結(jié)構(gòu):

          連接器的引腳或者插座的號(hào)碼都印在引腳或者插座孔附近。

          25 pin D-SUB male connector at the DTE (Computer)

          實(shí)際中RS-232-C 接口連接器一般使用DB-9 插頭座,PC 機(jī)的RS-232 口為9芯針插座(也稱(chēng)為MALE或公頭),而相應(yīng)的MODEM則使用9芯孔插座(也稱(chēng)為FEMALE或母頭),用DB-9-F對(duì)DB-9-M的電纜連接,直通方式。而兩臺(tái)計(jì)算機(jī)如果用RS-232-C 接口連接,則要使用DB-9-F對(duì)DB-9-F的電纜,且部分信號(hào)線要交叉連接。一些設(shè)備與PC 機(jī)連接的RS-232 接口,因?yàn)椴皇褂脤?duì)方的傳送控制信號(hào),只需三條接口線,即"發(fā)送數(shù)據(jù)TXD"、"接收數(shù)據(jù)RXD"和"信號(hào)地GND"。

          圖示為RS-232接口中常用的DB-9連接器結(jié)構(gòu):

          連接器的引腳或者插座的號(hào)碼都印在引腳或者插座孔附近。

          9 pin D-SUB male connector at the computer

          特殊情況下,也有使用RJ-45的8PIN連接器用作RS-232接口,其定義如下:

          腳序

          符號(hào)

          信號(hào)名稱(chēng)

          流向

          功能說(shuō)明

          1

          DSR/RI

          數(shù)據(jù)設(shè)備準(zhǔn)備好/振鈴指示

          DTE←DCE

          DataSetReady/RingIndicator

          2

          CD

          載波檢測(cè)

          DTE←DCE

          CarrierDetect

          3

          DTR

          數(shù)據(jù)終端準(zhǔn)備好

          DTE→DCE

          DataTerminalReady

          4

          GND

          信號(hào)地

           

          SystemGround

          5

          RXD

          接收數(shù)據(jù)

          DTE←DCE

          ReceiveData

          6

          TXD

          發(fā)送數(shù)據(jù)

          DTE→DCE

          TransmitData

          7

          CTS

          允許發(fā)送

          DTE←DCE

          CleartoSend

          8

          RTS

          請(qǐng)求發(fā)送

          DTE→DCE

          RequesttoSend

          8 PIN RJ45 (8P8C) female connector at the devices

          有的公司也使用其他的接頭

          DEC MMJ




          關(guān)鍵詞: RS-232接

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();