串行通信簡(jiǎn)介_第1頁(yè)
串行通信簡(jiǎn)介_第2頁(yè)
串行通信簡(jiǎn)介_第3頁(yè)
串行通信簡(jiǎn)介_第4頁(yè)
串行通信簡(jiǎn)介_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1

第7章

常用數(shù)字接口電路2串行通信基本概念串行通信:

●每個(gè)時(shí)間單位僅傳送一位信息;

●每個(gè)字符(字節(jié))的各位依次傳送;

●字符之間的間隔不定。優(yōu)點(diǎn):

●傳輸線少,成本低,傳輸距離遠(yuǎn)31.串行通信工作方式單工通信——只能由一方發(fā)送,例:廣播半雙工通信——某一時(shí)刻只能由一方發(fā)送,例:對(duì)講機(jī)全雙工通信——雙方可同時(shí)傳輸,例:電話同步通信——雙方對(duì)每一位的收發(fā)時(shí)序完全一致,統(tǒng)一時(shí)鐘異步通信——收發(fā)雙方時(shí)鐘不統(tǒng)一4單工/雙工操作發(fā)送器接收器發(fā)送器/接收器發(fā)送器/接收器發(fā)送器/接收器發(fā)送器/接收器單工方式:半雙工方式:全雙工方式:A站B站5串行通信主要用于遠(yuǎn)距離數(shù)據(jù)傳輸。問(wèn)題:干擾、衰減,信號(hào)畸變解決方法:差錯(cuò)控制技術(shù)——檢測(cè)、糾正常用的數(shù)據(jù)校驗(yàn)方法:奇偶校驗(yàn):以字符為單位進(jìn)行校驗(yàn)發(fā)送方使發(fā)送的每個(gè)字節(jié)中’1’的個(gè)數(shù)為奇數(shù)或偶數(shù);接收方檢查收到的每個(gè)字節(jié)中’1’的個(gè)數(shù)是否符合雙方的事先約定。奇偶校驗(yàn)可以檢查出一個(gè)字節(jié)中發(fā)生的單個(gè)錯(cuò)誤。奇偶校驗(yàn)不能自動(dòng)糾錯(cuò),發(fā)現(xiàn)錯(cuò)誤后需“重傳”。2.數(shù)據(jù)校驗(yàn)64.同步通信與異步通信所有串行通信都需要一個(gè)時(shí)鐘信號(hào)來(lái)作為數(shù)據(jù)的定時(shí)參考。發(fā)送器和接收器用時(shí)鐘來(lái)決定何時(shí)發(fā)送和讀取每一個(gè)數(shù)據(jù)位。根據(jù)傳輸時(shí)采用的是統(tǒng)一時(shí)鐘還是本地局部時(shí)鐘,分為同步傳輸和異步傳輸兩種。同步傳輸用一個(gè)時(shí)鐘脈沖確定一個(gè)數(shù)據(jù)位,異步傳輸用多個(gè)時(shí)鐘脈沖確定一個(gè)數(shù)據(jù)位(如16個(gè))同步傳輸以數(shù)據(jù)塊(當(dāng)作“位流”看待)為單位傳輸,異步傳輸以字符為單位傳輸,但都稱為幀(Frame)7同步通信的時(shí)鐘定時(shí)方法數(shù)據(jù)(62H)01100010同步傳輸先發(fā)送高位(MSB)發(fā)送方在時(shí)鐘信號(hào)的下降沿發(fā)送字節(jié)接收方在時(shí)鐘信號(hào)的上升沿接收字節(jié)時(shí)鐘(發(fā)送時(shí)鐘與接收時(shí)鐘完全同步)LSBMSB8異步通信的時(shí)鐘定時(shí)方法數(shù)據(jù)(62H)000011停止位異步傳輸先發(fā)送低位(LSB)發(fā)送方利用發(fā)送時(shí)鐘來(lái)決定發(fā)送每個(gè)位的時(shí)刻接收方檢測(cè)起始位的下降沿,并用它來(lái)同步接收時(shí)鐘,然后利用接收時(shí)鐘從每一位的中間接收該位1起始位LSBMSB0奇偶校驗(yàn)位00/111接收/發(fā)送時(shí)鐘9異步通信時(shí)數(shù)據(jù)位的檢測(cè)起始位波特率因子K=16TdTc111000000000連續(xù)8個(gè)0第9個(gè)仍為0以后每隔16個(gè)Tc檢測(cè)一次數(shù)據(jù)的其他位發(fā)送/接收時(shí)鐘周期:Tc,數(shù)據(jù)位間隔:Td

Tc=Td/K,其中K稱為波特率因子(16,32,64)10異步通信的一般格式每個(gè)字符由起始位、數(shù)據(jù)位、校驗(yàn)位、停止位構(gòu)成。起始位和停止位用于字符的同步。起始位最低位最高位5~8個(gè)數(shù)據(jù)位可選的奇偶校驗(yàn)位1,11/2或2個(gè)停止位117.4.2串行通信的接口標(biāo)準(zhǔn)機(jī)械特性:連接器的尺寸、引腳分布信號(hào)特性:信號(hào)電平、通信速率功能特性:引腳功能、控制時(shí)序最常見(jiàn)的串行通信標(biāo)準(zhǔn)是RS-232C。12RS-232C標(biāo)準(zhǔn)外形為25針或9針的D型連接器通信速率:波特率Baud(符號(hào)數(shù)/s)

100、300、600、1200、2400、48009600、19.2K、33.6K、56K

信號(hào)電平:邏輯“1”:-3V~-15V邏輯“0”:+3V~+15VTTL電平與RS232電平轉(zhuǎn)換:TTL→RS232:MC1488RS232→TTL:MC148913主要引腳的功能14信號(hào)時(shí)序(接收)設(shè)備握手DTR:PC→M(保持,表示PC已可以工作)DSR:PC←M(保持,表示M已可以工作)監(jiān)視載波信號(hào)DCD:PC←M←載波(表示數(shù)據(jù)鏈已建立)接收數(shù)據(jù)RD:PC←M←數(shù)據(jù)調(diào)制信號(hào)結(jié)束通信DCD消失、PC撤除DTR、Modem撤除DSR15信號(hào)時(shí)序(發(fā)送)設(shè)備握手DTR:PC→M(保持)DSR:PC←M(保持)請(qǐng)求發(fā)送RTS:PC→M(保持),M→載波,在對(duì)方產(chǎn)生DCDCTS:PC←M(保持)發(fā)送數(shù)據(jù)TD:PC→M→數(shù)據(jù)調(diào)制信號(hào)結(jié)束通信PC撤除RTS/DTRModem撤除CTS/DSR,停止發(fā)送載波16RS-232C接口連接方式17RS-232C接口連接方式(續(xù))一種簡(jiǎn)化的連接方式(NullModem)適用于雙機(jī)直連TDRDRTSCTSDCDGNDDTRDSRRITDRDRTSCTSDCDGNDDTRDSRRI187.4.3可編程串行通信接口8250主要內(nèi)容: 1)8250的引腳及功能

2)與系統(tǒng)的連接

3)內(nèi)部結(jié)構(gòu)與內(nèi)部寄存器4)8250的編程191.8250的引腳及功能面向系統(tǒng)的引腳:D0~D7

雙向數(shù)據(jù)線。與系統(tǒng)數(shù)據(jù)總線DB相連接,用以傳送數(shù)據(jù)、控制信息和狀態(tài)信息。CS0,CS1,CS2

片選信號(hào),當(dāng)它們同時(shí)有效時(shí),該8250芯片被選中。CSOUT

片選輸出信號(hào)。當(dāng)8250的CS0、CS1和CS2同時(shí)有效時(shí),CSOUT為高電平。MR主復(fù)位信號(hào),復(fù)位后8250的狀態(tài)見(jiàn)P331表7-5。A0~A28250內(nèi)部寄存器的選擇信號(hào)。不同的編碼對(duì)應(yīng)于不同的寄存器。ADS

地址選通信號(hào)。有效時(shí)可將CS0,CS1,CS2及A0-A2鎖存于8250內(nèi)部。不需要鎖存時(shí),ADS可直接接地。DISTR讀選通信號(hào)。通常與系統(tǒng)總線的IOR信號(hào)相連接。DOSTR寫選通信號(hào)。通常與系統(tǒng)總線的IOW信號(hào)相連接。INTR

中斷請(qǐng)求信號(hào)。當(dāng)允許8250中斷時(shí),接收出錯(cuò)、接收數(shù)據(jù)寄存器滿、發(fā)送數(shù)據(jù)寄存器空以及MODEM的狀態(tài)均能夠產(chǎn)生有效的INTR信號(hào)。218250的引腳及功能(續(xù))面向通信設(shè)備的引腳信號(hào)SIN,SOUT:串行輸入/輸出端CTS,RTS,DTR,DSR:(同RS232標(biāo)準(zhǔn)中的信號(hào))RLSD:即RS232C標(biāo)準(zhǔn)中的DCD信號(hào)RI:(同RS232標(biāo)準(zhǔn)中的信號(hào))OUT1,OUT2:可由用戶編程確定其狀態(tài)的輸出端BAUDOUT:波特率信號(hào)輸出(頻率=fCLK/分頻值)XTAL1,XTAL2:接外部晶振,作為基準(zhǔn)時(shí)鐘fCLKRCLK:接收時(shí)鐘輸入(可直接與BAUDOUT相連)224.3238250與8088系統(tǒng)的連接系統(tǒng)總線D7-D0DISTRDOSTRINTRMRA0A1A2ADSDISTRDOSTRCS2CS1CS0+5VCSD7-D0#IOR#IOWINTRRESETA0A1A2電平轉(zhuǎn)換/驅(qū)動(dòng)器14881489到RS232接口XTAL1XTAL2BAUDOUTRCLK

SOUTSINRTSDTRDSRDCDCTSRI8250XTAL242.8250的內(nèi)部寄存器共10個(gè)可編程(尋址)的寄存器線路控制寄存器(LCR)——BASE+3線路狀態(tài)寄存器(LSR)——BASE+5發(fā)送保持寄存器(THR)——BASE+0(寫)接收緩沖寄存器(RBR)——BASE+0(讀)除數(shù)鎖存器低8位(DLL)——BASE+0(DL=1)除數(shù)鎖存器高8位(DLH)——BASE+1(DL=1)中斷允許寄存器(IER)——BASE+1中斷識(shí)別寄存器(IIR)——BASE+2Modem控制寄存器(MCR)——BASE+4Modem狀態(tài)寄存器(MSR)——BASE+6258250的內(nèi)部寄存器(續(xù))除數(shù)鎖存器(DLL,DLH)—BASE+0,1用來(lái)保存分頻系數(shù),以獲得所需的波特率。波特率可以簡(jiǎn)單地看成每秒傳送多少二進(jìn)制位PC機(jī)中基準(zhǔn)時(shí)鐘頻率fCLK=1.8432MHz,波特率因子K=16。所以,對(duì)于指定的波特率B

除數(shù)值=1843200/(B×16)=115200/B例如,通信速率為9600波特時(shí),除數(shù)值=12。注意:寫除數(shù)前,必須把LCR的最高位(DL位)置1268250的內(nèi)部寄存器(續(xù))線路控制寄存器(LCR)—BASE+3決定傳輸時(shí)的數(shù)據(jù)幀格式(通信雙方必須一致)D7D6D5D4D3D2D1D0DL位:0=正常操作1=寫除數(shù)寄存器0=正常操作1=SOUT強(qiáng)制為1

(Break符號(hào))xx0=無(wú)校驗(yàn)001=奇校驗(yàn)011=偶校驗(yàn)101=恒為1111=恒為00=1位停止位1=2位停止位10=7位數(shù)據(jù)位11=8位數(shù)據(jù)位278250的內(nèi)部寄存器(續(xù))線路狀態(tài)寄存器(LSR)—BASE+5反映傳輸時(shí)的通信線狀態(tài)0D6D5D4D3D2D1D0發(fā)送移位寄存器空發(fā)送保持寄存器空檢測(cè)到Break接收緩沖寄存器滿溢出錯(cuò)奇偶錯(cuò)格式錯(cuò)(停止位個(gè)數(shù)不符)288250的內(nèi)部寄存器(續(xù))發(fā)送保持寄存器(THR)——BASE+0要發(fā)送的數(shù)據(jù)寫入此寄存器。當(dāng)發(fā)送移位寄存器TSR空時(shí),THR中的內(nèi)容移入TSR被發(fā)送出去。只有THR空時(shí),CPU才能寫入下一個(gè)要發(fā)送的數(shù)據(jù)接收緩沖寄存器(RBR)——BASE+0RSR收到一個(gè)完整的數(shù)據(jù)后,就將其送入RBR中。CPU可從RBR中讀取收到的數(shù)據(jù)。RBR只能緩沖一個(gè)數(shù)據(jù),當(dāng)CPU未能及時(shí)取走上一個(gè)數(shù)據(jù),下一個(gè)數(shù)據(jù)又送入RBR時(shí),會(huì)產(chǎn)生溢出錯(cuò)298250的內(nèi)部寄存器(續(xù))中斷允許寄存器(IER)——BASE+1決定哪類中斷可以產(chǎn)生(也可禁止所有中斷產(chǎn)生)0000D3D2D1D01=允許RBR滿中斷1=允許THR空中斷1=允許線路狀態(tài)中斷(溢出錯(cuò)、奇偶錯(cuò)、格式錯(cuò)、Break)1=允許Modem狀態(tài)中斷308250的內(nèi)部寄存器(續(xù))中斷識(shí)別寄存器(IIR)——BASE+2用于識(shí)別產(chǎn)生中斷的原因00000D2D1D00=無(wú)中斷1=有中斷00=Modem狀態(tài)中斷(優(yōu)先級(jí)最低)01=THR空中斷10=RBR滿中斷11=線路狀態(tài)中斷318250的內(nèi)部寄存器(續(xù))Modem控制寄存器(MCR)—BASE+4產(chǎn)生RTS、DTR信號(hào)產(chǎn)生OUT1、OUT2信號(hào)設(shè)置循環(huán)自檢狀態(tài)000D4D3D2D1D0DTRRTSOUT1OUT2LOOP328250的內(nèi)部寄存器(續(xù))Modem狀態(tài)寄存器(MSR)—BASE+6反映RS232接口的狀態(tài)△CTS△DSR△RI△RLSDCTSD7D6D5D4D3D2D1D0RLSDRIDSR反映4個(gè)引腳的當(dāng)前狀態(tài)(反相值)反映了自上次讀MSR后這4個(gè)引腳是否發(fā)生了變化(1=發(fā)生了變化)338250發(fā)送數(shù)據(jù)的工作過(guò)程1)CPU(數(shù)據(jù))→8250的THR;2)TSR移空時(shí),THR→TSR,LSR中“數(shù)據(jù)發(fā)送保持寄存器空”狀態(tài)位置位;3)TSR根據(jù)LCR中規(guī)定的格式從低到高逐位發(fā)送數(shù)據(jù);4)LSR中“數(shù)據(jù)發(fā)送保持寄存器空”狀態(tài)位可用來(lái)產(chǎn)生中斷,也可查詢?cè)摖顟B(tài)位,以實(shí)現(xiàn)數(shù)據(jù)的連續(xù)發(fā)送。TSRTHR串行數(shù)據(jù)輸出并行數(shù)據(jù)LSRINTLCR數(shù)據(jù)狀態(tài)1)2)3)2)4)4)348250接收數(shù)據(jù)的工作過(guò)程1)SIN引腳上的串行數(shù)據(jù)逐位進(jìn)入RSR;2)RSR根據(jù)LSR中規(guī)定的數(shù)據(jù)位數(shù)確定是否收到了一個(gè)完整的數(shù)據(jù),收到后將數(shù)據(jù)→RBR;3)RBR收到RSR的數(shù)據(jù)后,將LSR寄存器中“接收緩沖寄存器滿”的狀態(tài)位置位;4)LSR中“接收緩沖寄存器滿”狀態(tài)位可用來(lái)產(chǎn)生中斷,也可查詢?cè)摖顟B(tài)位,以實(shí)現(xiàn)數(shù)據(jù)的連續(xù)接收。RSRRBR串行數(shù)據(jù)輸入并行數(shù)據(jù)LSRINTLCR數(shù)據(jù)狀態(tài)1)2)3)4)353.8250的初始化流程初始化程序程序例子見(jiàn)P338-339流程圖見(jiàn)右圖使LCR的最高位=1寫除數(shù)寄存器寫LCR寄存器,同時(shí)使LCR的最高位=0寫MCR寄存器寫IER寄存器36用BIOS功能初始化8250PC機(jī)有兩個(gè)串行接口:COM1(基地址3F8H),COM2(基地址2F8H)BIOS通過(guò)中斷14H提供串行通信功能功能0:初始化串行接口功能1:發(fā)送一個(gè)字符功能2:接收一個(gè)字符功能3:讀串行接口狀態(tài)INT14H僅提供了查詢方式的通信服務(wù)要使用中斷方式進(jìn)行發(fā)送和接收必須自行編程37用BIOS功能初始化8250功能0(初始化)的入口參數(shù)為:AH=0AL=初始化參數(shù)DX=串口編號(hào)(0=COM1,1=COM2)初始化參數(shù)定義如下:D7D6D5D4D3D2D1D0波特率100=1200101=2400110=4800111=9600奇偶校驗(yàn)x0=無(wú)校驗(yàn)01=奇校驗(yàn)11=偶校驗(yàn)數(shù)據(jù)位數(shù)00=5位01=6位10=7位11=8位停止位0=1位1=2位MOVAH,0MOVAL,初始化參數(shù)MOVDX,0INT14H388250的數(shù)據(jù)發(fā)送程序(查詢)LEASI,DATA_BUFFERMOVCX,DATA_BYTESL1:MOVDX,BASE+5;LSR地址

INAL,DXTESTAL,00100000B;THR空?JZL1LODSB

MOVDX,BASE+0;THR地址OUTDX,ALLOOPL1……THR空?輸出一個(gè)字節(jié)輸出完?NYYN398250的數(shù)據(jù)接收程序(查詢)LEADI,DATA_BUFFERMOVCX,DATA_BYTESL1:MOVDX,BASE+5;LSR地址

INAL,DXTESTAL,00011110B;有錯(cuò)誤?JNZERRORTESTAL,00000001B;收到數(shù)據(jù)?JZL1

MOVDX,BASE+0;RBR地址INAL,DXSTOSBLOOPL1……有錯(cuò)誤?讀入數(shù)據(jù)收到數(shù)據(jù)?N

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論