微機(jī)原理與接口串行通信接口課件_第1頁(yè)
微機(jī)原理與接口串行通信接口課件_第2頁(yè)
微機(jī)原理與接口串行通信接口課件_第3頁(yè)
微機(jī)原理與接口串行通信接口課件_第4頁(yè)
微機(jī)原理與接口串行通信接口課件_第5頁(yè)
已閱讀5頁(yè),還剩277頁(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教學(xué)重點(diǎn)異步通信協(xié)議和RS232C接口8051、8250芯片的結(jié)構(gòu)與編程使用異步通信程序教學(xué)重點(diǎn)29.1串行通信基礎(chǔ)串行通信:將數(shù)據(jù)分解成二進(jìn)制位用一條信號(hào)線,逐位順序傳送的方式串行通信的優(yōu)點(diǎn):通信的線路少,因而在遠(yuǎn)距離通信時(shí)可以極大地降低成本串行通信適合于遠(yuǎn)距離數(shù)據(jù)傳送,也常用于速度要求不高的近距離數(shù)據(jù)傳送PC系列機(jī)上有兩個(gè)串行異步通信接口、鍵盤、鼠標(biāo)器與主機(jī)間采用串行數(shù)據(jù)傳送9.1串行通信基礎(chǔ)串行通信:3傳輸制式單工方式(Simplex):

只允許數(shù)據(jù)按照一個(gè)固定的方向傳送數(shù)據(jù)流單工方式A發(fā)送器B接收器圖示傳輸制式單工方式(Simplex):數(shù)據(jù)流單工方式AB圖4傳輸制式(續(xù))

半雙工方式(Half-Duplex)收發(fā)雙方均具備接收和發(fā)送數(shù)據(jù)能力。由于只有一條通道,不能同時(shí)在兩個(gè)方向上傳送數(shù)據(jù)。數(shù)據(jù)流半雙工方式A發(fā)送器接收器B接收器發(fā)送器圖示傳輸制式(續(xù))半雙工方式(Half-Duplex)數(shù)據(jù)流5傳輸制式(續(xù))全雙工方式(FullDuplex):收發(fā)雙方均具備接收和發(fā)送數(shù)據(jù)能力,并可以同時(shí)進(jìn)行雙向傳輸。數(shù)據(jù)流全雙工方式A發(fā)送器接收器B接收器發(fā)送器圖示傳輸制式(續(xù))全雙工方式(FullDuplex):數(shù)據(jù)流全6傳輸速率比特率(信息傳輸速率):每秒傳送的二進(jìn)制數(shù)位數(shù)(比特?cái)?shù))單位為bps(bitpersecond)波特率(碼元傳輸率):每秒傳送的碼元(符號(hào))數(shù)單位為:波特(Baud)即每秒傳送1個(gè)碼元(符號(hào))稱傳輸率是1波特。傳輸速率比特率(信息傳輸速率):7傳輸速率(續(xù))波特率與比特率的差異若每個(gè)碼元所含的信息量為1比特(Bit),則波特率等于比特率,否則二者不等例如,在四相調(diào)制系統(tǒng)中,每次調(diào)制取4種相位差值,它代表2位二進(jìn)制信息位,此時(shí),比特率=2波特率標(biāo)準(zhǔn)波特率系列為:110、300、600、1200、1800、2400、4800、9600、19200傳輸速率(續(xù))波特率與比特率的差異8串行通信協(xié)議通信協(xié)議:收發(fā)雙方共同遵守的基本通信規(guī)程(Protocol)通信協(xié)議主要內(nèi)容:同步方式傳輸控制步驟差錯(cuò)檢驗(yàn)方式數(shù)據(jù)編碼數(shù)據(jù)傳輸速率通信版文的格式控制字符的定義等串行通信協(xié)議通信協(xié)議:9串行通信的基本方式串行通信有兩種基本方式異步串行通信在通信的數(shù)據(jù)流中,字符間異步,字符內(nèi)部各位間同步。“異步”體現(xiàn)在字符與字符之間通信沒(méi)有嚴(yán)格的定時(shí)要求。一旦傳送開始,收/發(fā)雙方則以預(yù)先約定的傳輸速率,在時(shí)鐘的作用下,傳送這個(gè)字符中的每一位。同步串行通信數(shù)據(jù)流中的字符與字符之間和字符內(nèi)部位與位之間都同步。同步串行通信是以數(shù)據(jù)塊(字符塊)為信息單位傳送,而每幀信息包括成百上千個(gè)字符;傳送一旦開始,要求每幀信息內(nèi)部的每一位都要同步。串行通信的基本方式串行通信有兩種基本方式10異步通信協(xié)議(起止式通信協(xié)議)格式異步通信協(xié)議(起止式通信協(xié)議)格式11起始位:每一幀字符的開始,1位,邏輯0數(shù)據(jù)位:緊接著起始位,數(shù)據(jù)位個(gè)數(shù)為5~8位,數(shù)據(jù)從最低位開始發(fā)送奇偶校驗(yàn)位:數(shù)據(jù)位之后,發(fā)送1位奇偶校驗(yàn)位,也可以不發(fā)校驗(yàn)位停止位:一幀字符的最后發(fā)停止位,它可以是1位、1.5位或2位的邏輯1信號(hào)空閑位:在每一幀字符之間可以有不等位數(shù)的邏輯1信號(hào),表示沒(méi)有傳送圖示異步通信協(xié)議(起止式通信協(xié)議)格式起始位:每一幀字符的開始,1位,邏輯0圖示異步通信協(xié)議(起12比如ASCII字符‘A’,二進(jìn)制是01000001(8位),它們?cè)谄鹗嘉缓?位停止位之間傳送,并使用了1位奇校驗(yàn)位。Out010000010011先出后出D7D0比如ASCII字符‘A’,二進(jìn)制是01000001(13為了確保異步串行通信傳輸正確:14用相反極性的起始位和停止位/空閑位提供準(zhǔn)確的時(shí)間基準(zhǔn)接收器在每位的中心采樣,以獲得最大的收/發(fā)時(shí)鐘頻率偏差容限接收器采用比傳送波特率更高頻率的時(shí)鐘來(lái)控制采樣時(shí)間,以提高采樣的分辨能力和抗干擾能力。為了確保異步串行通信傳輸正確:14用相反極性的起始位和停止位例題:異步傳輸7位ASCII碼,如果需要數(shù)據(jù)傳輸速率為240字符/秒,使用1位奇偶校驗(yàn)位和1位停止位,則:①波特率應(yīng)該是多少?②有效數(shù)據(jù)位傳輸位是多少?③傳輸效率是多少?答:①波特率是

(7位數(shù)據(jù)位+1位起始位+1位校驗(yàn)位+1位停止位)×240=2400b/s②有效數(shù)據(jù)位傳輸位是:7×240=1680b/s③傳輸效率是:1680/2400=70%例題:異步傳輸7位ASCII碼,如果需要數(shù)據(jù)傳輸速率為24015以一個(gè)數(shù)據(jù)塊(幀)為傳輸單位,每個(gè)數(shù)據(jù)塊附加1個(gè)或2個(gè)同步字符,最后以校驗(yàn)字符結(jié)束同步通信的數(shù)據(jù)傳輸效率和傳輸速率較高,但硬件電路比較復(fù)雜串行同步通信主要應(yīng)用在網(wǎng)絡(luò)當(dāng)中最常使用高級(jí)數(shù)據(jù)鏈路控制協(xié)議HDLC同步通信協(xié)議以一個(gè)數(shù)據(jù)塊(幀)為傳輸單位,每個(gè)數(shù)據(jù)塊附加1個(gè)或2個(gè)同步字16同步通信協(xié)議的格式:多個(gè)數(shù)據(jù)字節(jié)加上同步字符構(gòu)成一個(gè)數(shù)據(jù)包稱為1幀每一幀以1個(gè)或2個(gè)同步字符(SYNC)為起始緊跟同步字符之后是N個(gè)數(shù)據(jù)字符,N可由用戶設(shè)定以兩個(gè)檢驗(yàn)字符(CRC)作為1幀的結(jié)束同步通信協(xié)議的格式:多個(gè)數(shù)據(jù)字節(jié)加上同步字符構(gòu)成一個(gè)數(shù)據(jù)包稱17CRC2CRC1數(shù)據(jù)字節(jié)n…數(shù)據(jù)字節(jié)1SYNC1

一幀SYNC2CRC2CRC1數(shù)據(jù)字節(jié)n…數(shù)據(jù)字節(jié)2數(shù)據(jù)字節(jié)1SYNC

一幀CRC2CRC1數(shù)據(jù)字節(jié)n…數(shù)據(jù)字節(jié)3數(shù)據(jù)字節(jié)2數(shù)據(jù)字節(jié)1

一幀a.單同步數(shù)據(jù)格式b.雙同步數(shù)據(jù)格式c.外同步數(shù)據(jù)格式CRC2CRC1數(shù)據(jù)…數(shù)據(jù)SYNC1一幀SYNC2CR18信號(hào)的調(diào)制與解調(diào)調(diào)制(Modulating)發(fā)送方將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)(實(shí)現(xiàn)頻譜‘搬移’)解調(diào)(Demodulating)

接收方將接收的模擬信號(hào)還原成數(shù)字信號(hào)調(diào)制解調(diào)器MODEM

具有調(diào)制和解調(diào)功能的器件合制在一個(gè)裝置數(shù)字信號(hào)的帶寬較寬,模擬信號(hào)帶寬較窄遠(yuǎn)距離傳送需要調(diào)制圖示信號(hào)的調(diào)制與解調(diào)調(diào)制(Modulating)圖示1920調(diào)制方法:按照調(diào)制技術(shù)的不同分為調(diào)頻(FM)、調(diào)幅(AM)和調(diào)相(PM)三種,根據(jù)傳輸數(shù)字信號(hào)的變化規(guī)律去調(diào)整載波的頻率、幅度或相位20調(diào)制方法:按照調(diào)制技術(shù)的不同分為調(diào)頻(FM)、調(diào)幅(AM信道復(fù)用時(shí)分多路復(fù)用TDM(TimeDivisionMultiplexing)就是將一條物理傳輸線路按時(shí)間分成若干時(shí)間片輪換地為多個(gè)信號(hào)所占用,每個(gè)時(shí)間片由復(fù)用的一個(gè)信號(hào)占用。頻分多路復(fù)用FDM(FrequencyDivisionMultiplexing)利用頻率調(diào)制原理,將要同時(shí)傳送的多個(gè)信號(hào)進(jìn)行頻譜搬移,使它們互不重疊地占據(jù)信道頻帶的不同頻率段,然后經(jīng)發(fā)送器從同一信道上同時(shí)或不同時(shí)地發(fā)送出去。計(jì)算機(jī)串行數(shù)據(jù)通信及其接口中使用時(shí)分多路復(fù)用系統(tǒng)。信道復(fù)用時(shí)分多路復(fù)用TDM(TimeDivisionMu219.2串行接口標(biāo)準(zhǔn)RS-232CRS-232C是美國(guó)電子工業(yè)協(xié)會(huì)EIA制定的通用串行接口標(biāo)準(zhǔn)1962年公布,1969年修訂,1987年1月正式改名為EIA-232D是數(shù)據(jù)終端設(shè)備DTE(DataTerminalEquipment)與數(shù)據(jù)發(fā)送設(shè)備DCE(DataCommunicationEquipment)之間相互連接的標(biāo)準(zhǔn)接口9.2串行接口標(biāo)準(zhǔn)RS-232CRS-232C是美國(guó)電子工22最高數(shù)據(jù)傳輸率為19.2Kbps,傳輸電纜長(zhǎng)度不超過(guò)15米R(shí)S-232C接口采用標(biāo)準(zhǔn)的D型25針連接器(DB-25連接器)及九針連接器圖示9.2串行接口標(biāo)準(zhǔn)RS-232C最高數(shù)據(jù)傳輸率為19.2Kbps,傳輸電纜長(zhǎng)度不超過(guò)15米圖23RS-232C引腳定義:232C包括兩個(gè)信道:主信道和次信道次信道為輔助串行通道提供數(shù)據(jù)控制和通道,但其傳輸速率比主信道要低得多,其他跟主信道相同,通常較少使用RS-232C引腳定義:232C包括兩個(gè)信道:主信道和次信道24表9.1常用的RS-232C接口信號(hào)振鈴指示RI22DTE準(zhǔn)備好DTE→DCEDTR20數(shù)據(jù)載波檢測(cè)DCE→DTEDCD8信號(hào)地GND7DCE準(zhǔn)備好DCE→DTEDSR6允許發(fā)送DCE→DTECTS5請(qǐng)求發(fā)送DTE→DCERTS4接收數(shù)據(jù)DCE→DTERXD3發(fā)送數(shù)據(jù)DTE→DCETXD2功能信號(hào)方向功能縮寫符號(hào)引腳號(hào)表9.1常用的RS-232C接口信號(hào)振鈴指示RI22DTE25RS-232C引腳定義(續(xù))DTR(DataTerminalReady):DTE準(zhǔn)備好信號(hào)DET接通電源并進(jìn)入工作狀態(tài)后向DCE發(fā)出DTR信號(hào),僅當(dāng)DCE收到信號(hào)后方可進(jìn)行通信DSR(DataSetReady):DCE準(zhǔn)備好信號(hào)DCE接通電源并進(jìn)入工作狀態(tài)后向DTE發(fā)出DSR信號(hào),DTE確信該信號(hào)有效后,發(fā)出請(qǐng)求發(fā)送信號(hào)。RTS(RequestToSend):數(shù)據(jù)請(qǐng)求發(fā)送當(dāng)DTE設(shè)備準(zhǔn)備發(fā)送數(shù)據(jù)時(shí),向DCE發(fā)出RTS信號(hào)CTS(ClearToSend):允許發(fā)送信號(hào)是DCE設(shè)備對(duì)DTE發(fā)來(lái)RTS信號(hào)的回答,數(shù)據(jù)才能被發(fā)送。RS-232C引腳定義(續(xù))DTR(DataTermina26RS-232C引腳定義(續(xù))DCD(DataCarrierDetected):數(shù)據(jù)載波檢測(cè)信號(hào)當(dāng)DCE檢測(cè)到線路上出現(xiàn)有效載波信號(hào)后,向DTE發(fā)出DCD信號(hào)。RI(RingIndicate):振鈴指示當(dāng)調(diào)制解調(diào)器接收到對(duì)方的撥號(hào)信號(hào)期間,該引腳信號(hào)作為電話鈴響的指示、保持有效RS-232C引腳定義(續(xù))DCD(DataCarrier27TxD:發(fā)送數(shù)據(jù)串行數(shù)據(jù)的發(fā)送端RxD:接收數(shù)據(jù)串行數(shù)據(jù)的接收端GND:信號(hào)地為所有的信號(hào)提供一個(gè)公共的參考電平RS-232C引腳定義(續(xù))保護(hù)地(機(jī)殼地):起屏蔽保護(hù)作用的接地端TxC:發(fā)送器時(shí)鐘控制數(shù)據(jù)終端發(fā)送串行數(shù)據(jù)的時(shí)鐘信號(hào)RxC:接收器時(shí)鐘控制數(shù)據(jù)終端接收串行數(shù)據(jù)的時(shí)鐘信號(hào)TxD:發(fā)送數(shù)據(jù)RS-232C引腳定義(續(xù))保護(hù)地(機(jī)殼地)28RS-232C的連接微機(jī)利用232C接口連接調(diào)制解調(diào)器,用于實(shí)現(xiàn)通過(guò)電話線路的遠(yuǎn)距離通信微機(jī)利用232C接口直接連接進(jìn)行短距離通信。這種連接不使用調(diào)制解調(diào)器,所以被稱為零調(diào)制解調(diào)器(NullModem)連接RS-232C的連接微機(jī)利用232C接口連接調(diào)制解調(diào)器,用于29連接調(diào)制解調(diào)器電話線MODEM微機(jī)2345678202223456782022MODEM23456782022數(shù)據(jù)裝置準(zhǔn)備好DSR數(shù)據(jù)終端準(zhǔn)備好DTR發(fā)送數(shù)據(jù)TxD接收數(shù)據(jù)RxD請(qǐng)求發(fā)送RTS允許發(fā)送CTS信號(hào)地GND載波檢測(cè)CD振鈴指示RI微機(jī)23456782022連接調(diào)制解調(diào)器電話線MODEM微機(jī)22MODEM2數(shù)據(jù)裝置準(zhǔn)30不使用聯(lián)絡(luò)信號(hào)的3線相連方式為了交換信息,TxD和RxD應(yīng)當(dāng)交叉連接程序中不必使RTS和DTR有效也不應(yīng)檢測(cè)CTS和DSR是否有效TxDRxDGND微機(jī)微機(jī)TxDRxDGND不使用聯(lián)絡(luò)信號(hào)的3線相連方式為了交換信息,TxD和RxD應(yīng)當(dāng)31“偽”使用聯(lián)絡(luò)信號(hào)的3線相連方式RTS和CTS各自互接,DTR和DSR各自互接表明請(qǐng)求傳送總是允許、數(shù)據(jù)裝置總準(zhǔn)備好DSRDTRTxDRxDRTSCTSGND微機(jī)微機(jī)“偽”使用聯(lián)絡(luò)信號(hào)的3線相連方式RTS和CTS各自互接,DT32使用聯(lián)絡(luò)信號(hào)的多線相連方式通信比較可靠所用連線較多,不如前者經(jīng)濟(jì)DSRDTRTxDRxDRTSCTSGND微機(jī)微機(jī)DSRDTRTxDRxDRTSCTSGND使用聯(lián)絡(luò)信號(hào)的多線相連方式通信比較可靠DSRDTRTxDRx33電氣特性RS-232C采用EIA電平邏輯“1”在-3V~-15V之間邏輯“0”在+3V~+15V之間實(shí)際常用±12V或±15V圖示標(biāo)準(zhǔn)TTL電平高電平:+2.4V~+5V低電平:0V~0.4VRS-232C電平與TTL電平不兼容,二者之間通常需加電平轉(zhuǎn)換電路圖示電氣特性RS-232C采用EIA電平圖示標(biāo)準(zhǔn)TTL電平RS-34必須抗共模噪聲干擾RS-232C由于在發(fā)送器與接收器之間有公共信號(hào)地,不可能使用雙端信號(hào),因此共模噪聲很容易引入信號(hào)系統(tǒng)中,且噪聲幅度可高達(dá)好幾伏,這是迫使RS-232C使用較高傳輸電壓的主要原因。另一個(gè)原因是為了補(bǔ)償傳輸線上的信號(hào)衰減和沿線附加電平的影響。必須抗共模噪聲干擾RS-232C由于在發(fā)送器與接收器之間35最大傳輸速率和最大傳輸線長(zhǎng)度的關(guān)系36一般應(yīng)用情況下,RS-232C的最高傳輸速率為20Kb/s,最大傳輸線長(zhǎng)度為30m。最大傳輸速率和最大傳輸線長(zhǎng)度的關(guān)系36一般應(yīng)用情況下,RS-機(jī)械特性連接器機(jī)械特性連接器37連接器的連接連接器的連接38電纜長(zhǎng)度在通信速率低于20Kb/s時(shí),RS-232C所能直接連接的最大物理距離為15m(50ft)。RS-232C規(guī)定,若不使用MODEM,則碼元的畸變要小于4%,驅(qū)動(dòng)器的負(fù)載電容應(yīng)該小于2500pF,則單位(1ft)長(zhǎng)度的電容值為NpF的電纜的長(zhǎng)度應(yīng)該是:使用特制的低電容電纜也能有效地提高電纜長(zhǎng)度,可以達(dá)到150m(500ft)甚至更多。電纜長(zhǎng)度在通信速率低于20Kb/s時(shí),RS-232C所能直接39RS-232的局限RS-232C采用單端驅(qū)動(dòng)、單端接收的單端雙極性電路標(biāo)準(zhǔn)。僅用一條線路傳輸一種信號(hào),根據(jù)該信號(hào)線上電平相對(duì)于公共的信號(hào)地電平的大小來(lái)決定邏輯的“1”和“0”。對(duì)于多條信號(hào)線來(lái)講,它們的地線是公共的,這種共地傳輸方式,抗干擾能力很差。盡管采用電平轉(zhuǎn)換器來(lái)提高信號(hào)傳輸電平,但在較長(zhǎng)距離時(shí),由于電壓損失,仍不可避免錯(cuò)誤。當(dāng)信號(hào)穿過(guò)電磁干擾環(huán)境時(shí),也可能因附加的干擾信號(hào)電平使發(fā)送的“0”變?yōu)椤?”或“1”變?yōu)椤?”。故其信號(hào)波特率不能過(guò)高,僅限在20Kb/s以下,且距離不大于15m。RS-232的局限RS-232C采用單端驅(qū)動(dòng)、單端接收的單40異步通信適配器PC微機(jī)異步通信適配器是微機(jī)與微機(jī)、微機(jī)與MODEM及微機(jī)與外設(shè)之間進(jìn)行異步通信的接口。其核心是UART。USART(UniversalSynchronous/AsynchronousReceiverandTransmitter)通用同步/異步接收發(fā)送器常見(jiàn)的UART主要有8251A、

INS8250、PC16450和PC16550。此外,還有帶更大緩沖的UART,稱為PC16650和PC16750

異步通信適配器PC微機(jī)異步通信適配器是微機(jī)與微機(jī)、微機(jī)與MO419.3可編程串行通信接口芯片8251A可用于同步傳送和異步傳送同步傳送5~8位/字符;內(nèi)同步或外同步;可自動(dòng)插入同步字符異步傳送5~8位/字符;時(shí)鐘頻率為波特率的1、16、64倍;可產(chǎn)生終止字符;可產(chǎn)生1、1.5、2位的停止位;可檢測(cè)假起始位;自動(dòng)檢測(cè)和處理終止字符9.3.18251A的基本功能9.3可編程串行通信接口芯片8251A可用于同步傳送和異步429.3.18251A的基本功能波特率:0~64K(同步);0~19.2K(異步)全雙工雙緩沖器發(fā)送和接收出錯(cuò)檢測(cè):具有奇偶、溢出和幀錯(cuò)等檢測(cè)電路輸入輸出電平與TTL電平兼容;單一+5V電源;單一TTL電平時(shí)鐘;雙列直插封裝9.3.18251A的基本功能波特率:439.3.28251A的結(jié)構(gòu)數(shù)據(jù)總線緩沖器:三態(tài)雙向8位緩沖器,8251A通過(guò)它與CPU交換信息讀/寫控制邏輯電路:控制讀/寫、復(fù)位等操作圖示調(diào)制/解調(diào)控制電路:提供一組調(diào)制/解調(diào)控制信號(hào),使8251A可與MODEM相連發(fā)送緩沖器:由數(shù)據(jù)發(fā)送緩沖器與并-串移位寄存器組成,將并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)發(fā)送出去9.3.28251A的結(jié)構(gòu)數(shù)據(jù)總線緩沖器:圖示調(diào)制/解調(diào)控449.3.28251A的結(jié)構(gòu)(續(xù))發(fā)送控制電路:協(xié)調(diào)發(fā)送緩沖器工作,為傳送提供識(shí)別控制信息位(如起始位,停止位、同步字符等)接收緩沖器:接收串行數(shù)據(jù),并按相應(yīng)格式轉(zhuǎn)換成并行數(shù)據(jù)接收控制電路:

協(xié)調(diào)接收緩沖器工作9.3.28251A的結(jié)構(gòu)(續(xù))發(fā)送控制電路:458251A的引腳功能與CPU連接信號(hào)D7~D0:雙向數(shù)據(jù)線,與系統(tǒng)的數(shù)據(jù)總線相連,傳送命令字,狀態(tài)信息和收發(fā)數(shù)據(jù)RESET:復(fù)位信號(hào),有效時(shí),將內(nèi)部寄存器和控制邏輯清0CS#(ChipSelect):片選信號(hào),來(lái)自CPU的I/O地址譯碼器RD#、WR#:讀、寫控制信號(hào),與系統(tǒng)的IOR、IOW相連CLK

:系統(tǒng)時(shí)鐘信號(hào),產(chǎn)生8251A內(nèi)部的時(shí)序信號(hào)C/D#:控制口/數(shù)據(jù)口選擇信號(hào);C/D#=1,選中控制/狀態(tài)端口C/D#=0,選中數(shù)據(jù)端口8251A的引腳功能與CPU連接信號(hào)46表9.2RD*、WR*、C/D*的編碼和對(duì)應(yīng)的操作D7~D0為高阻狀態(tài)×××1D7~D0為高阻狀態(tài)11×0向8251A寫控制命令0110讀取8251A的狀態(tài)1010向8251A輸出數(shù)據(jù)0100從8251A輸入數(shù)據(jù)1000操作WR#RD#C/D#CS#表9.2RD*、WR*、C/D*的編碼和對(duì)應(yīng)的操作D7~47與CPU連接信號(hào)TxRDY(transmitterReady):發(fā)送器準(zhǔn)備好信號(hào),輸出,高電平有效TxRDY有效的條件是:CTS#引腳是低電平,初始化命令字的TxEN=1,當(dāng)發(fā)送緩沖器為空時(shí),此信號(hào)有效它有效表明CPU可以向8251A發(fā)送數(shù)據(jù)在中斷方式下,TxRDY可作為中斷請(qǐng)求信號(hào)CPU向8251A寫入一個(gè)字符后,TxRDY自動(dòng)復(fù)位與CPU連接信號(hào)TxRDY(transmitterRead48與CPU連接信號(hào)TxE(TransmitterEmpty)發(fā)送器空信號(hào),輸出,高電平有效表示發(fā)送器中并串轉(zhuǎn)換器已空,發(fā)送過(guò)程已完成;8251A從CPU接收待發(fā)的數(shù)據(jù)后,自動(dòng)復(fù)位;字符發(fā)送完,TxE又變?yōu)楦?;TxRDY較TxE之前有效RxRDY(ReceiverReady)接收器準(zhǔn)備好信號(hào),輸出,高電平有效表示8251A已經(jīng)接收了一個(gè)數(shù)據(jù),正等待CPU取走;該信號(hào)可作為向CPU發(fā)出的中斷請(qǐng)求信號(hào);當(dāng)CPU讀取數(shù)據(jù)后,RxRDY自動(dòng)復(fù)位。與CPU連接信號(hào)TxE(TransmitterEmpty)49與CPU連接信號(hào)SRNDET(SynchronousDetect)同步檢驗(yàn)信號(hào),雙向,高電平有效。該信號(hào)僅用于同步方式,其輸入輸出由程序控制。內(nèi)同步方式:SRNDET端輸出。當(dāng)8251A檢測(cè)到同步字符時(shí),該信號(hào)為高電平,表示接收發(fā)送達(dá)到同步。外同步方式:SRNDET端輸入。當(dāng)片外電路檢測(cè)到同步字符時(shí)從該端輸入高電平,它使8251A在RxC時(shí)鐘下開始裝配字符。與CPU連接信號(hào)SRNDET(SynchronousDet50與調(diào)制/解調(diào)器的接口信號(hào)DTR#(DataTerminalReady)數(shù)據(jù)終端準(zhǔn)備好信號(hào),低電平有效。有效表示DTE設(shè)備已準(zhǔn)備好。DSR#(DataSetReady)數(shù)據(jù)裝置準(zhǔn)備好,輸入,低電平有效。它是MODEM對(duì)DTR信號(hào)的回答,表示MODEM已準(zhǔn)備好。RTS#(RequestToSend)請(qǐng)求發(fā)送信號(hào),輸出,低電平有效。用于通知MODEM,DTE設(shè)備要求發(fā)送數(shù)據(jù)與調(diào)制/解調(diào)器的接口信號(hào)DTR#(DataTerminal51與調(diào)制/解調(diào)器的接口信號(hào)CTS#(ClearToSend)允許發(fā)送信號(hào),輸入,低電平有效。是MODEM對(duì)RTS的響應(yīng)信號(hào),表示允許DTE設(shè)備發(fā)送數(shù)據(jù)TxD(TransmitterData)發(fā)送數(shù)據(jù)線RxD(ReceiverData)接收數(shù)據(jù)線與調(diào)制/解調(diào)器的接口信號(hào)CTS#(ClearToSend52傳輸速率控制線TxC(TransmitterClock)發(fā)送器時(shí)鐘,控制8251A發(fā)送字符的速率RxC(ReceiverClock)接收器時(shí)鐘,控制8251A接收字符的速率在同步方式下:TxC和RxC的頻率等于字符傳輸?shù)牟ㄌ芈试诋惒椒绞较拢篢xC和RxC的頻率可以是字符傳輸波特率的1倍、16倍或64倍,由初始化編程設(shè)定傳輸速率控制線TxC(TransmitterClock)539.3.38251A的編程使用工作方式字作用:設(shè)定8251A的工作方式,如異步/同步方式,字符格式,傳輸率等寫入次序工作方式字必須緊跟復(fù)位操作之后寫入工作方式字的格式為:9.3.38251A的編程使用工作方式字54No異步(D1D0

00)Yes(D1D0=00)/D0D1D2D3D4D5D6D711=異步×6410=異步×1601=異步×100=同步方式波特率系數(shù)11=8位10=7位01=6位00=5位字符長(zhǎng)度11=2個(gè)停止位10=1.5個(gè)停止位01=1個(gè)停止位00=不確定幀控制11=偶校驗(yàn)01=奇校驗(yàn)×0=無(wú)校驗(yàn)奇/偶校驗(yàn)1×=1個(gè)同步字符0×=2個(gè)同步字符×1=外同步×0=內(nèi)同步同步控制同步?工作方式字的格式No異步Y(jié)es/D0D1D2D3D4D5D6D711=異步×55工作方式字的格式說(shuō)明D1、D0:同步異步/波特率系數(shù)選擇D1D0=00,為同步方式控制字此時(shí)由D7D6位來(lái)選擇同步的方式D1D0≠00,是異步方式控制字D1D0=01、10、11,其波特率系數(shù)分別為:1、16、64TxC和RxC的頻率、波特率系數(shù)和波特率的關(guān)系為:工作方式字的格式說(shuō)明D1、D0:同步異步/波特率系數(shù)選擇56工作方式字的格式說(shuō)明D3、D2:字符長(zhǎng)度選擇D3D2=00、01、10、11,數(shù)據(jù)分為:5、6、7、8位D5、D4:奇/偶校驗(yàn)選擇D5D4=×0、10、11,分別為:無(wú)校驗(yàn)、奇校驗(yàn)、偶校驗(yàn)D7、D6:同步控制方式/停止位長(zhǎng)選擇當(dāng)D1D0=00,為同步控制方式設(shè)置D7D6=00、01、10、11,分別為雙/單同步下的內(nèi)/外同步;當(dāng)D1D0≠00,為停止位長(zhǎng)選擇D7D6=01、10、11,停止位長(zhǎng)分別為:1、1.5、2位工作方式字的格式說(shuō)明D3、D2:字符長(zhǎng)度選擇57例9.1設(shè)定8251A工作于異步方式,波特率系數(shù)是16,每個(gè)字符7位數(shù)據(jù)位,1位起始位,2位停止位,偶校驗(yàn)。則其工作方式字為:11111010B=0FAH設(shè)定工作方式程序段為:MOV DX,309H ;8251A的控制口MOV AL,0FAH

;工作方式字OUT DX,AL例9.1設(shè)定8251A工作于異步方式,波特率系數(shù)是16,58工作命令字作用:確定8251A的實(shí)際操作,使8251A進(jìn)入某種工作狀態(tài),以便發(fā)送或接收數(shù)據(jù)工作命令字的格式:TXENDTRRXESBRKERRTSIREHD0D1D2D3D4D5D6D7發(fā)送允許數(shù)據(jù)終端準(zhǔn)備好接收允許發(fā)中止字符錯(cuò)誤標(biāo)志復(fù)位發(fā)送請(qǐng)求內(nèi)部復(fù)位搜索同步字符工作命令字作用:TXENDTRRXESBRKERRTSIRE59工作命令字的格式:D0:發(fā)送允許D0=1,允許發(fā)送,D0=0,禁止發(fā)送D1:數(shù)據(jù)終端準(zhǔn)備就緒。D1=1,置引腳DTR#有效,表示數(shù)據(jù)終端準(zhǔn)備好D2:接收允許D2=1,允許接收,D2=0,禁止接收D3:發(fā)中止字符D3=1,使引腳TxD為低電平,輸出中止字符D3=0,正常工作情況工作命令字的格式:D0:發(fā)送允許60工作命令字的格式說(shuō)明D4:錯(cuò)誤標(biāo)志復(fù)位D4=1,使?fàn)顟B(tài)寄存器中出錯(cuò)標(biāo)志(FE、OE、PE)復(fù)位D5:發(fā)送請(qǐng)求D5=1,置引腳RTS#為低電平,向MODEM提出發(fā)送請(qǐng)求D6:內(nèi)部復(fù)位。D6=1,使8251A復(fù)位D7:搜索同步字符,只用于內(nèi)同步方式D7=1,8251A對(duì)RxD引腳輸入的信息進(jìn)行同步字符搜索,若搜索到,使SYNDET輸出高電平工作命令字的格式說(shuō)明D4:錯(cuò)誤標(biāo)志復(fù)位61例9.2要使8251A內(nèi)部復(fù)位,且允許接收和發(fā)送,應(yīng)先發(fā)復(fù)位字,再發(fā)允許收發(fā)字。程序段為:MOV DX,309H

;309H8251A命令口MOV AL,01000000B

;置D6=1,OUT DX,AL

;使內(nèi)部復(fù)位MOV AL,00000101B ;置D2=1,D0=1OUT DX,AL

;允許接收與發(fā)送例9.2要使8251A內(nèi)部復(fù)位,且允許接收和發(fā)送,應(yīng)先發(fā)復(fù)62狀態(tài)字8251A內(nèi)部設(shè)有狀態(tài)寄存器,CPU用IN指令讀入8251A的狀態(tài)字,查詢接口當(dāng)前的工作狀態(tài)。狀態(tài)字的格式:發(fā)送準(zhǔn)備好接收準(zhǔn)備好發(fā)送器空奇偶錯(cuò)溢出錯(cuò)格式錯(cuò)同步檢測(cè)數(shù)據(jù)設(shè)備準(zhǔn)備好TxRDYRxRDYTxEPEOEFESYNDETDSRD0D1D2D3D4D5D6D7狀態(tài)字8251A內(nèi)部設(shè)有狀態(tài)寄存器,CPU用IN指令讀入8263狀態(tài)字的格式說(shuō)明RxRDY(D1)、TxE(D2)和SYNDET(D6)的含義與同名引腳的含義和狀態(tài)相同DSR(D7)=1,表示DSR#引腳為低電平TxRDY(D0)=1,只表示輸出緩沖器已空,這與輸出引腳TxRDY的含義有所不同。僅當(dāng)狀態(tài)位TxRDY=1,引腳CTS#為低和命令字的TxEN位=1,三者同時(shí)滿足時(shí),輸出引腳TxRDY=1狀態(tài)字的格式說(shuō)明RxRDY(D1)、TxE(D2)和SYND64狀態(tài)字的格式說(shuō)明FE=1表示幀格式錯(cuò),即在異步方式下,當(dāng)一個(gè)字符結(jié)束而沒(méi)有檢測(cè)到規(guī)定的停止位的差錯(cuò)OE=1表示溢出錯(cuò),即CPU尚未讀取上一個(gè)字符而又接收了下一個(gè)字符的錯(cuò)誤PE=1表示當(dāng)前出現(xiàn)了奇偶校驗(yàn)錯(cuò)FE、OE和PE的有效并不影響8251A的操作,它們被工作命令字的ER位復(fù)位。狀態(tài)字的格式說(shuō)明FE=1表示幀格式錯(cuò),即在異步方式下,當(dāng)一個(gè)65例9.3查詢8251A接收器是否準(zhǔn)備好,可用以下程序段:MOV DX,309H ;309H:狀態(tài)口地址L:IN AL,DX

;讀狀態(tài)字AND AL,02H

;查D1(RxRDY)

=1?JZ L

;未準(zhǔn)備好,繼續(xù)查詢MOV DX,308H ;308H:數(shù)據(jù)口地址IN AL,DX

;已準(zhǔn)備好,讀取數(shù)據(jù)例9.3查詢8251A接收器是否準(zhǔn)備好,可用以下程序段:66例9.4在傳輸過(guò)程中要檢查出錯(cuò)信息MOVDX,309H

;309H為狀態(tài)口INAL,DX

;讀狀態(tài)字TESTAL,38H

;檢查D5D4D3三位(FE、OE、PE)JNZERROR

;若其中有一位為1,則出錯(cuò)…ERROR:例9.4在傳輸過(guò)程中要檢查出錯(cuò)信息MOVDX,67工作方式字和工作命令字的使用方式字、命令字、狀態(tài)字之間的關(guān)系方式字只約定了雙方通信的方式、數(shù)據(jù)格式、傳輸速率等參數(shù)數(shù)據(jù)的發(fā)送或接收,要靠命令字來(lái)確定要正確地接收/發(fā)送數(shù)據(jù),則需要CPU查詢狀態(tài)字來(lái)進(jìn)行控制工作方式字和工作命令字的使用方式字、命令字、狀態(tài)字之間的關(guān)68方式字和命令字的寫入8251A的工作方式字與操作命令字占有同一端口地址,寫入方式字和命令字時(shí)要按一定的順序先后寫入對(duì)8251A復(fù)位之前,最好先寫3個(gè)“0”,并作相應(yīng)的延時(shí)寫入順序:寫三個(gè)0→復(fù)位→工作方式字→工作命令字1→工作命令字2→…。圖示方式字和命令字的寫入8251A的工作方式字與操作命令字占有同698251A與CPU的信息交換方式查詢方式CPU先讀入8251A狀態(tài)字若狀態(tài)字的D0(TxRDY)=1,CPU可向8251A數(shù)據(jù)口寫入數(shù)據(jù),完成串行數(shù)據(jù)的發(fā)送若狀態(tài)字的D1(RxRDY)=1,CPU可從8251A數(shù)據(jù)口讀取數(shù)據(jù),完成一幀數(shù)據(jù)的接收8251A與CPU的信息交換方式查詢方式70中斷方式8251A沒(méi)有單獨(dú)的中斷請(qǐng)求引腳,TxRDY引腳可作為發(fā)送中斷求信號(hào)引腳RxRDY可作為接收中斷請(qǐng)求信號(hào);若數(shù)據(jù)發(fā)送與接收均采用中斷方式,則TxRDY和RxRDY可通過(guò)“或門”向CPU提出中斷請(qǐng)求,CPU轉(zhuǎn)入中斷程序后再查詢狀態(tài)字,分別轉(zhuǎn)向發(fā)送或接收處理程序中斷方式8251A沒(méi)有單獨(dú)的中斷請(qǐng)求引腳,TxRDY引腳可作718251A的編程舉例例9.5設(shè)定8251A工作于異步方式,波特率因子為64,每字符7個(gè)數(shù)據(jù)位,偶校驗(yàn),2個(gè)停止位,寫出初始化程序段,設(shè)數(shù)據(jù)口地址為50H,控制口地址為51H。工作方式字:11111011B=0FBH工作命令字:01000000B=40H

(內(nèi)部復(fù)位)工作命令字:00010111B=17H(清出錯(cuò)標(biāo)志,接收發(fā)送允許,使DTR有效)8251A的編程舉例例9.5設(shè)定8251A工作于異步方式,72初始化程序段:MOVAL,40H

;使內(nèi)部復(fù)位OUT51H,AL

;51H是8251A的控制口MOVAL,0FBH

;設(shè)定工作方式OUT51H,AL

MOVAL,17H

;設(shè)定工作命令字OUT51H,AL初始化程序段:MOVAL,40H ;使內(nèi)部復(fù)73例9.68251A工作于同步方式,雙同步,采用內(nèi)同步方式(SYNDET引腳為輸出),奇校驗(yàn),每個(gè)字符8個(gè)數(shù)據(jù)位,寫出初始化程序段。設(shè)8251A的數(shù)據(jù)口地址為308H,控制口地址為309H。工作方式字:00011100B=1CH同步字符:16H工作命令字:10000111B=97H例9.68251A工作于同步方式,雙同步,采用內(nèi)同步方式74工作程序段:MOVAL,40H

;使內(nèi)部復(fù)位MOVDX,309H

;309H是控制口地址OUTDX,ALMOVAL,1CH

;設(shè)定工作方式OUTDX,AL

MOVAL,16H

;輸出工作命令字OUTDX,AL ;連續(xù)輸出兩個(gè)同步字符OUTDX,ALMOVAL,97H

;寫工作命令字OUTDX,AL工作程序段:MOVAL,40H ;使內(nèi)部復(fù)位75例9.7

用8251A實(shí)現(xiàn)與終端(顯示器,鍵盤)的串行通信,即CPU接收鍵盤輸入字符,然后輸出到顯示器顯示。設(shè)8251A工作于異步方式,波特率因子為16,每字符7個(gè)數(shù)據(jù)位,奇校驗(yàn),1個(gè)停止位。8251A數(shù)據(jù)口地址為0D0H,控制口地址為0D1H。硬件連接:采用“自環(huán)”方式連接例9.7用8251A實(shí)現(xiàn)與終端(顯示器,鍵盤)的串行通76傳送單個(gè)字符到顯示器的程序段BEGIN:MOVAL,5AH

;寫方式字OUT

0D1H,AL ;

0D1H為控制口地址MOVAL,37H ;寫命令字,使錯(cuò)誤標(biāo)志復(fù)位OUT

0D1H,A;發(fā)送、接收允許,DTR和RTS輸出低電平STATE:INAL,0D1H

;讀狀態(tài)字TEST AL,01H ;檢查TxRDY=1?JZ STATE ;如不為1,則繼續(xù)查詢MOV AL,4AH ;輸出字符J的ASCII碼OUT 0D0H,AL ;0D0H為數(shù)據(jù)口地址HLT傳送單個(gè)字符到顯示器的程序段BEGIN:77字符回送到顯示器程序段,要求串行接口接收從鍵盤輸入的一個(gè)字符,并立即將該字符回送到顯示器顯示。BEGIN:MOV AL,5AH

;寫方式字OUT 0D1H,AL ;到控制口MOV AL,37H ;寫命令字,使錯(cuò)誤標(biāo)志復(fù)位OUT 0D1H,AL

;發(fā)送、接收允許,DTR和RTS輸出低電平STATE1:IN AL,

0D1H

;讀狀態(tài)字TEST AL,02H

;檢查RxRDY=1?JZ

STATE1

;不為1,則繼續(xù)查詢字符回送到顯示器程序段,要求串行接口接收從鍵盤輸入的一個(gè)字符78IN AL,

0D0H

;接收一個(gè)字符MOV BL,AL ;暫存于BL中STATE2:IN AL,0D1H

;讀狀態(tài)字TEST AL,01H

;檢查TxRDY=1?JZ STATE2

;不為1,則繼續(xù)查詢MOV AL,BL ;BL中暫存的字符送ALOUT 0D0H,AL

;字符輸出給顯示器JMP STATE1

;繼續(xù)準(zhǔn)備接收字符回送到顯示器程序段,要求串行接口接收從鍵盤輸入的一個(gè)字符,并立即將該字符回送到顯示器顯示。IN AL,0D0H ;接收一個(gè)字符字符回送到顯示器程79例9.8利用8251A實(shí)現(xiàn)雙機(jī)通信要求:甲,乙兩臺(tái)微機(jī)之間串行通信,甲發(fā),乙收,要把甲機(jī)上的一段程序(長(zhǎng)度為2DH)傳送到乙機(jī)中;采用異步方式,每個(gè)字符8個(gè)數(shù)據(jù)位,2個(gè)停止位,波特率因子為64,無(wú)校驗(yàn);CPU于8251A之間用查詢方式交換數(shù)據(jù);口地址分配是:309H命令口/狀態(tài)口,308H為數(shù)據(jù)口。硬件連接:用兩片8251A,經(jīng)電平轉(zhuǎn)換構(gòu)成RS-232C接口,最簡(jiǎn)方式連接。圖示例9.8利用8251A實(shí)現(xiàn)雙機(jī)通信要求:圖示80發(fā)送方(甲機(jī))初始化及控制程序段START:

MOVDX,309H

;命令口MOVAL,00HOUTDX,AL

;空操作MOVAL,40H

;內(nèi)部復(fù)位OUTDX,ALNOP

;空格延時(shí)MOV AL,0CFH

;方式字OUT DX,AL

MOV AL,11H ;命令字(ER和TXEN均置1)MOV CX,2DH ;傳送字節(jié)數(shù)

MOV SI,300H ;發(fā)送區(qū)首址為300H發(fā)送方(甲機(jī))初始化及控制程序段START:81L1:

MOV DX,309H

;狀態(tài)口

TEST AL,01H

;檢查TxRDY=1?

JZ L1

;發(fā)送未準(zhǔn)備好,繼續(xù)查詢

MOV DX,308H

;數(shù)據(jù)口

MOV AL,[SI] ;取一個(gè)字節(jié)數(shù)據(jù)

OUT DX,AL

;發(fā)出

INC SI ;修改地址指針

DEC CX ;字節(jié)數(shù)減1

JNZ L1

;未發(fā)完繼續(xù)發(fā)

HLT

發(fā)送方(甲機(jī))初始化及控制程序段(續(xù))L1:

MOV DX,309H ;狀態(tài)口

TEST82接收方(乙機(jī))初始化及控制程序段START:

MOVDX,309H

;命令口MOVAL,00HOUTDX,AL

;空操作MOVAL,40H

;內(nèi)部復(fù)位OUTDX,ALNOP

;空格延時(shí)MOVAL,0CFH

;工作方式字OUTDX,ALMOVAL,14H

;命令字(ER和RXE均置1)

OUTDX,AL

;錯(cuò)誤標(biāo)志復(fù)位,接收允許MOVCX,2DH

;接收字節(jié)數(shù)MOV DI,400H

;接收區(qū)首址為400H接收方(乙機(jī))初始化及控制程序段START:83L2:

MOV DX,309H

;狀態(tài)口

IN AL,DX

;查狀態(tài)字

TEST AL,02H

;查D1(RXRDY)=1?

JZ L2

;接收未準(zhǔn)備好,繼續(xù)查詢

TESTAL,38H

;查出錯(cuò)

JNZERR

;有錯(cuò)誤轉(zhuǎn)出錯(cuò)處理

MOVDX,308H

;數(shù)據(jù)口

INAL,DX ;接收準(zhǔn)備好,接收一個(gè)字符

MOV[DI],AL ;存入接收區(qū)

INCDI ;修改接收區(qū)地址指針

LOOPL2

;未接收完,繼續(xù)

HLT

接收方(乙機(jī))初始化及控制程序段(續(xù))L2:

MOV DX,309H ;狀態(tài)口

IN AL849.4通用異步接收發(fā)送器8250串行傳輸,需要并行到串行和串行到并行的轉(zhuǎn)換,并按照傳輸協(xié)議發(fā)送和接收每個(gè)字符(或數(shù)據(jù)塊)這些工作可由軟件實(shí)現(xiàn),也可用硬件實(shí)現(xiàn)通用異步接收發(fā)送器UART是串行異步通信的接口電路芯片IBMPC/XT機(jī)的UART芯片是INS8250后來(lái)使用NS165509.4通用異步接收發(fā)送器8250串行傳輸,需要并行到串行和859.4.18250的內(nèi)部結(jié)構(gòu)8250實(shí)現(xiàn)了起止式串行異步通信協(xié)議,支持全雙工通信通信字符可選擇數(shù)據(jù)位為5~8位停止位1、1.5或2位可進(jìn)行奇偶校驗(yàn)具有奇偶、幀和溢出錯(cuò)誤檢測(cè)電路8250支持的數(shù)據(jù)傳輸速率為50~9600bps9.4.18250的內(nèi)部結(jié)構(gòu)8250實(shí)現(xiàn)了起止式串行異步通868250的內(nèi)部結(jié)構(gòu)878250的內(nèi)部結(jié)構(gòu)87串行數(shù)據(jù)的發(fā)送串行數(shù)據(jù)CPU發(fā)送保持寄存器發(fā)送移位寄存器同步控制8250SOUT0/10/10/10/1雙緩沖寄存器結(jié)構(gòu)保證數(shù)據(jù)的連續(xù)發(fā)送并行數(shù)據(jù)加入起始位、校驗(yàn)位、停止位串行數(shù)據(jù)的發(fā)送串行數(shù)據(jù)CPU發(fā)送保持寄存器發(fā)送移位寄存器同步88起始位的檢測(cè)起始檢測(cè)確定已檢測(cè)到起始位采樣數(shù)據(jù)起始位時(shí)鐘(RCLK)數(shù)據(jù)線(SIN)T16T16T8T數(shù)據(jù)接收時(shí)鐘頻率是數(shù)據(jù)傳輸頻率的16倍正確識(shí)別起始位,防止因干擾引起的誤識(shí)別起始位的檢測(cè)起始檢測(cè)確定已檢測(cè)到起始位采樣數(shù)據(jù)起始位時(shí)鐘89串行數(shù)據(jù)的接收串行數(shù)據(jù)CPU接收緩沖寄存器接收移位寄存器同步控制8250SIN0/10/10/10/1雙緩沖寄存器結(jié)構(gòu)保證數(shù)據(jù)的連續(xù)接收并行數(shù)據(jù)檢測(cè)接收錯(cuò)誤刪除起始位、校驗(yàn)位、停止位串行數(shù)據(jù)的接收串行數(shù)據(jù)CPU接收緩沖寄存器接收移位寄存器同步90接收錯(cuò)誤的處理奇偶錯(cuò)誤PE(ParityError)若接收到的字符的“1”的個(gè)數(shù)不符合奇偶校驗(yàn)要求幀錯(cuò)誤FE(FrameError)若接收到的字符格式不符合規(guī)定(如缺少停止位)溢出錯(cuò)誤OE(OverrunError)若接收移位寄存器接收到一個(gè)數(shù)據(jù),并送至輸入緩沖器時(shí),CPU還未取走前一個(gè)數(shù)據(jù),就會(huì)出現(xiàn)數(shù)據(jù)溢出若接收緩沖器的級(jí)數(shù)多,則溢出錯(cuò)誤的幾率就少接收錯(cuò)誤的處理奇偶錯(cuò)誤PE(ParityError)919.4.28250的引腳分成連接CPU的部分和連接外設(shè)的部分注意:8250不是Intel公司的產(chǎn)品,所以該芯片引腳名稱與前面學(xué)習(xí)的8253、8255等Intel產(chǎn)品有所不同,但是引腳功能卻是類似的9.4.28250的引腳分成連接CPU的部分和連接外設(shè)的部929.4.28250的引腳9.4.28250的引腳93處理器接口引腳(1)數(shù)據(jù)線D0~D7:在CPU與8250之間交換信息地址線A0~A2:尋址8250內(nèi)部寄存器片選線:8250設(shè)計(jì)了3個(gè)片選輸入信號(hào)CS0、CS1、CS2#和一個(gè)片選輸出信號(hào)CSOUT。3個(gè)片選輸入都有效時(shí),才選中8250芯片,同時(shí)CSOUT輸出高電平有效。地址選通信號(hào)ADS#:當(dāng)該信號(hào)低有效時(shí),鎖存上述地址線和片選線的輸入狀態(tài),保證讀寫期間的地址穩(wěn)定處理器接口引腳(1)數(shù)據(jù)線D0~D7:94處理器接口引腳(2)讀控制線數(shù)據(jù)輸入選通DISTR(高有效)和DISTR#(低有效)有一個(gè)信號(hào)有效,CPU從8250內(nèi)部寄存器讀出數(shù)據(jù)相當(dāng)于I/O讀信號(hào)寫控制線數(shù)據(jù)輸出選通DOSTR(高有效)和DOSTR#(低有效)有一個(gè)有效,CPU就將數(shù)據(jù)寫入8250內(nèi)部寄存器相當(dāng)于I/O寫信號(hào)8250讀寫控制信號(hào)有兩對(duì),每對(duì)信號(hào)作用完全相同,只不過(guò)有效電平不同而己處理器接口引腳(2)讀控制線95處理器接口引腳(3)驅(qū)動(dòng)器禁止信號(hào)DDIS:CPU從8250讀取數(shù)據(jù)時(shí),DDIS引腳輸出低電平,用來(lái)禁止外部收發(fā)器對(duì)系統(tǒng)總線的驅(qū)動(dòng);其他時(shí)間,DDIS為高電平主復(fù)位線MR硬件復(fù)位信號(hào)RESET中斷請(qǐng)求線INTRPT:8250有4級(jí)共10個(gè)中斷源,當(dāng)任一個(gè)未被屏蔽的中斷源有請(qǐng)求時(shí),INTRPT輸出高電平向CPU請(qǐng)求中斷處理器接口引腳(3)驅(qū)動(dòng)器禁止信號(hào)DDIS:96時(shí)鐘信號(hào)時(shí)鐘輸入引腳XTAL1:8250的基準(zhǔn)工作時(shí)鐘時(shí)鐘輸出引腳XTAL2:基準(zhǔn)時(shí)鐘信號(hào)的輸出端波特率輸出引腳BAUDOUT#:基準(zhǔn)時(shí)鐘經(jīng)8250內(nèi)部波特率發(fā)生器分頻后產(chǎn)生發(fā)送時(shí)鐘接收時(shí)鐘引腳RCLK:接收外部提供的接收時(shí)鐘信號(hào);若采用發(fā)送時(shí)鐘作為接收時(shí)鐘,則只要將RCLK引腳和BAUDOUT#引腳直接相連時(shí)鐘信號(hào)時(shí)鐘輸入引腳XTAL1:97串行異步接口引腳8250數(shù)據(jù)裝置準(zhǔn)備好DSR#數(shù)據(jù)終端準(zhǔn)備好DTR#發(fā)送數(shù)據(jù)SOUT接收數(shù)據(jù)SIN請(qǐng)求發(fā)送RTS#允許發(fā)送CTS#信號(hào)地GND載波檢測(cè)RLSD#振鈴指示RI#串行異步接口引腳8250數(shù)據(jù)裝置準(zhǔn)備好DSR#數(shù)據(jù)終端準(zhǔn)備好98SIN:串行數(shù)據(jù)輸入。SOUT:串行數(shù)據(jù)輸出。DSR#:數(shù)據(jù)設(shè)備就緒,輸入線DTR#:數(shù)據(jù)終端就緒,輸出線RI#:振鈴指示,輸入線。RLSD#:接收線路信號(hào)檢測(cè),輸入線。RTS#:請(qǐng)求發(fā)送,輸出線。CTS#:清除發(fā)送,輸入線。串行異步接口引腳(續(xù))SIN:串行數(shù)據(jù)輸入。串行異步接口引腳(續(xù))99輸出線OUT1#和OUT2#:兩個(gè)一般用途的輸出信號(hào)由調(diào)制解調(diào)器控制寄存器的D2和D3使其輸出低電平有效信號(hào)復(fù)位使其恢復(fù)為高輸出線OUT1#和OUT2#:1009.4.38250的寄存器8250內(nèi)部有9種可訪問(wèn)的寄存器,除數(shù)寄存器是16位的,占用兩個(gè)連續(xù)的8位端口內(nèi)部寄存器用引腳A0~A2來(lái)尋址;同時(shí)還要利用通信線路控制寄存器的最高位,即除數(shù)寄存器訪問(wèn)位DLAB,來(lái)區(qū)別共用兩個(gè)端口地址的不同寄存器9.4.38250的寄存器8250內(nèi)部有9種可訪問(wèn)的寄存器101DLABA2A1A0被訪問(wèn)的寄存器0000接收緩沖寄存器(讀),發(fā)送保持寄存器(寫)0001中斷允許寄存器1000波特率除數(shù)寄存器(低字節(jié))1001波特率除數(shù)寄存器(高字節(jié))X010中斷識(shí)別寄存器(讀),F(xiàn)IFO控制器(寫)X011線路控制寄存器X100MODEM控制寄存器X101線路狀態(tài)寄存器X110MODEM狀態(tài)寄存器X111Scratch寄存器注:DLAB是線路控制寄存器的D7位。表9.28250內(nèi)部寄存器的訪問(wèn)控制DLABA2A1A0被訪問(wèn)的寄存器0000接收緩沖寄存器(讀102A2A1A0=011線路控制寄存器LCRD7D6D5D4D3D2D1D0DLABSBSPEPSPENSTBWLSIWLSO字符長(zhǎng)度選擇00—5位01—6位10—7位11—8位停止位選擇0—1位1—1.5位(D1D0=00)2位(D1D0≠00)附加奇偶標(biāo)志位選擇0—不附加1—附加1位奇偶校驗(yàn)選擇奇偶校驗(yàn)允許11—偶校驗(yàn)01—奇校驗(yàn)除數(shù)寄存器訪問(wèn)允許0—禁止1—允許中止設(shè)置1—中止0—正常A2A1A0=011線路控制寄存器LCRD7D6D5D103線路狀態(tài)寄存器LSR接收緩沖區(qū)滿接收奇偶錯(cuò)接收格式錯(cuò)(無(wú)正確的停止位)中止識(shí)別標(biāo)志發(fā)送移位器空A2A1A0=101

D7D6D5D4D3D2D1D0TSRETHREBIFEPEOEDR接收重疊錯(cuò)發(fā)送保持器空FIFO中接收數(shù)據(jù)錯(cuò)誤(16550)線路狀態(tài)寄存器LSR接收緩沖區(qū)滿接收奇偶錯(cuò)接收格式錯(cuò)(無(wú)正確104接收緩沖寄存器RBR存放串行接收后轉(zhuǎn)換成并行的數(shù)據(jù)CPU接收緩沖寄存器接收移位寄存器同步控制8250SINDLAB=0,A2A1A0=000接收緩沖寄存器RBR存放串行接收后轉(zhuǎn)換成并行的數(shù)據(jù)CPU接收105發(fā)送保持寄存器THR包含將要串行發(fā)送的并行數(shù)據(jù)CPU發(fā)送保持寄存器發(fā)送移位寄存器同步控制8250SOUTDLAB=0,A2A1A0=000發(fā)送保持寄存器THR包含將要串行發(fā)送的并行數(shù)據(jù)CPU發(fā)送保106這是軟件控制的分頻器,輸出的工作時(shí)鐘頻率為16倍的波特率。除數(shù)寄存器值=基準(zhǔn)時(shí)鐘頻率÷(16×波特率)INS8250芯片輸入的基準(zhǔn)時(shí)鐘頻率為1.8432MHz,若波特率為4800b/s,則波特率除數(shù)為0018H,DLH中應(yīng)填00H,DLL中應(yīng)填18H。注意:PC16550的基準(zhǔn)時(shí)鐘一般為18.432MHz。DLAB=1,A2A1A0=001(高)或000(低)波特率除數(shù)鎖存器DLH、DLL這是軟件控制的分頻器,輸出的工作時(shí)鐘頻率為16倍的波特率。D107中斷識(shí)別寄存器IIR中斷類型標(biāo)識(shí)A2A1A0=010(讀)D7D6D5D4D3D2D1D00ID2ID1IP未決中斷指示0—有1—無(wú)超時(shí)中斷0—不超時(shí)1—超時(shí)允許64字節(jié)FIFO(16750)0—禁止1—允許FIFO使用指示(16550)01—允許FIFO但不可用11—允許FIFO中斷識(shí)別寄存器IIR中斷類型標(biāo)識(shí)A2A1A0=010(讀)108ID2ID1中斷類型優(yōu)先權(quán)11接收出錯(cuò)(重疊、奇偶錯(cuò)、格式錯(cuò)和中止)最高10接收緩沖器滿次高01發(fā)送保持器空低00MODEM狀態(tài)(CTS、DSR、RI和RLSD)改變最低表9.38250的中斷類型控制ID2ID1中斷類型優(yōu)先權(quán)11接收出錯(cuò)(重疊、奇偶錯(cuò)、格式錯(cuò)109中斷允許寄存器IER進(jìn)入低功耗模式(16550)進(jìn)入睡眠模式(16750)DLAB=0,A2A1A0=001D7D6D5D4D3D2D1D000I0EI3EI1EI2E類型2中斷(接收緩沖器滿)1-允許0-屏蔽類型1中斷(發(fā)送保持器空)1-允許0-屏蔽類型3中斷(接收出錯(cuò))1-允許0-屏蔽類型0中斷(MODEM狀態(tài)改變)1-允許0-屏蔽中斷允許寄存器IER進(jìn)入低功耗模式(16550)進(jìn)入睡眠模110MODEM控制寄存器MCRA2A1A0=100數(shù)據(jù)終端就緒請(qǐng)求發(fā)送輔助輸出1自動(dòng)流量控制(16750)環(huán)路檢測(cè)(內(nèi)部自循環(huán))輔助輸出2,PC用做中斷注意:這里的OUTi位極性和OUTi引腳相反。D7D6D5D4D3D2D1D000LOOPOUT2OUT1RTCDTRMODEM控制寄存器MCRA2A1A0=100數(shù)據(jù)終端就緒111A2A1A0=110

CTS位發(fā)生改變DSR位發(fā)生改變收到“振鈴指示”后沿(下降沿)收到“數(shù)傳機(jī)就緒”收到“清除發(fā)送”RLSD位發(fā)生改變收到“振鈴指示”收到“接收線載波檢測(cè)”MODEM狀態(tài)寄存器MSRD7D6D5D4D3D2D1D0RLSDRIDSRCTSRLSDTERIDSRCTSA2A1A0=110CTS位發(fā)生改變DSR位發(fā)生改變收到“112FIFO控制寄存器(FCR)A2A1A0=010(寫)16550后才有允許FIFO緩沖器工作清除接收FIFO緩沖器清除發(fā)送FIFO緩沖器允許64字節(jié)FIFO(16750)保留DMA方式選擇接收端中斷觸發(fā)器水平(LSB)接收端中斷觸發(fā)器水平(MSB)D7D6D5D4D3D2D1D0FIFO控制寄存器(FCR)A2A1A0=010(寫)165113觸發(fā)器水平即是指示在中斷產(chǎn)生之前,接收緩沖器應(yīng)該裝滿多少個(gè)字節(jié)。D7D6觸發(fā)器水平001字節(jié)014字節(jié)108字節(jié)1112字節(jié)觸發(fā)器水平即是指示在中斷產(chǎn)生之前,接收緩沖器應(yīng)該裝滿多少個(gè)字1149.5異步通信適配器IBMPC/XT機(jī)的串行異步通信適配器以8250為核心完成發(fā)送時(shí)的并轉(zhuǎn)串和接收時(shí)的串轉(zhuǎn)并以及相應(yīng)的控制工作配置了TTL電平與EIA電平轉(zhuǎn)換電路等展開異步通信適配器的硬件電路軟件編程9.5異步通信適配器IBMPC/XT機(jī)的串行異步通信適配115RCLKBAUDOUT#IRQ4IRQ3RESET+5VA8AENA3~A7A9IOR#IOW#A0~A2MRXTAL1OUT1#OUT2#INTRPTDISTR#DOSTR#A0~A2CS2#8250LS245D0~D7D0~D7J9J10J11J12DIR1.8432MHzCS0CS1ADSDISTRDOSTR+5V9.5.1異步通信適配器的接口電路注意:J9~J11跨接器和OUT2#的作用RCLKIRQ4+5VA8AENIOR#MROUT1#DI116微機(jī)原理與接口串行通信接口課件1179.5.2異步通信適配器的初始化編程對(duì)8250的內(nèi)部控制寄存器進(jìn)行編程寫入寫入除數(shù)寄存器設(shè)置傳輸率寫入通信線路控制寄存器設(shè)置字符格式寫入調(diào)制解調(diào)器控制寄存器設(shè)置工作方式寫入中斷允許寄存器設(shè)置中斷允許或屏蔽位9.5.2異步通信適配器的初始化編程對(duì)8250的內(nèi)部控制118設(shè)置傳輸率mov al,80hmov dx,3fbhout dx,al ;寫入通信線路控制寄存器,使DLAB=1mov ax,96;分頻系數(shù):1.8432MHz÷(1200×16)=96=60Hmov dx,3f8hout dx,al ;寫入除數(shù)寄存器低8位mov al,ahinc dxout dx,al ;寫入除數(shù)寄存器高8位8250初始化編程舉例寫入除數(shù)寄存器設(shè)置傳輸率mov al,80h8250初始化編程舉例寫入除119設(shè)置字符格式mov al,00001010bmov dx,3fbhout dx,al ;寫入通信線路控制寄存器;這段程序同時(shí)使DLAB=08250初始化編程舉例寫入通信線路控制寄存器設(shè)置字符格式mov al,00001010b8250初始化120設(shè)置工作方式;設(shè)置查詢通信方式

mov al,03h ;控制OUT2#為高,DTR#和RTS#為低

mov dx,3fch out dx,al ;寫入調(diào)制解調(diào)器控制寄存器;設(shè)置中斷通信方式

mov al,0bh ;控制為OUT2#低,允許INTRPT產(chǎn)生請(qǐng)求

mov dx,3fch out dx,al寫入調(diào)制解調(diào)器控制寄存器8250初始化編程舉例設(shè)置工作方式;設(shè)置查詢通信方式寫入調(diào)制解調(diào)器控制寄存器825121設(shè)置中斷允許或屏蔽位mov al,0 ;禁止所有中斷mov dx,3f9hout dx,al ;寫入中斷允許寄存器(此時(shí)DLAB=0)寫入中斷允許寄存器8250初始化編程舉例設(shè)置中斷允許或屏蔽位mov al,0 ;禁止所有中斷寫入中1229.5.3異步通信程序舉例程序循環(huán)讀取8250的通信狀態(tài)寄存器數(shù)據(jù)傳輸錯(cuò)誤就顯示一個(gè)問(wèn)號(hào)“?”接收到數(shù)據(jù)就顯示出來(lái)可以發(fā)送數(shù)據(jù)就從鍵盤輸入發(fā)送字符(用戶沒(méi)有輸入字符就不發(fā)送)如果按下ESC鍵返回DOS9.5.3異步通信程序舉例程序循環(huán)讀取8250的通信狀態(tài)寄123statue:

mov dx,2fdh

;讀通信線路狀態(tài)寄存器in al,dxtest al,1eh

;接收有錯(cuò)誤否?jnz error

;有錯(cuò),則轉(zhuǎn)錯(cuò)誤處理test al,01h

;接收到數(shù)據(jù)嗎?jnz receive

;是,轉(zhuǎn)接收處理test al,20h

;保持寄存器空嗎?jz statue

;不能,循環(huán)查詢異步通信程序查詢通信線路狀態(tài)statue: 異步通信程序查詢通信線路狀態(tài)124

mov ah,0bh

;檢測(cè)鍵盤有無(wú)輸入字符

int 21h cmp al,0 jz statue

;無(wú)輸入字符,循環(huán)等待

mov ah,0

;有輸入字符,讀取字符

int 16h

;采用01號(hào)DOS功能調(diào)用,則有回顯

cmp al,1bh

jz done

;是ESC鍵,程序返回DOS檢測(cè)鍵盤輸入異步通信程序 mov ah,0bh ;檢測(cè)鍵盤有無(wú)輸入字符檢測(cè)鍵盤輸入125

mov dx,2f8h

;將字符輸出給發(fā)送保持寄存器

out dx,al

;串行發(fā)送數(shù)據(jù)

jmp statue

;繼續(xù)查詢發(fā)送數(shù)據(jù)異步通信程序 mov dx,2f8h ;將字符輸出給發(fā)送保持寄存器發(fā)送126receive: mov

dx,2f8h

;從輸入緩沖寄存器讀取字符in al,dxand al,7fh

;傳送標(biāo)準(zhǔn)ASCII碼(7個(gè)數(shù)據(jù)位),

僅取低7位push ax ;保存數(shù)據(jù)接收數(shù)據(jù)異步通信程序receive: 接收數(shù)據(jù)異步通信程序127

mov dl,al

;屏幕顯示該數(shù)據(jù)

mov ah,2 int 21h pop ax

;恢復(fù)數(shù)據(jù)

cmp al,0dh

;數(shù)據(jù)是回車符嗎? jnz statue

;不是,則循環(huán)

mov dl,0ah

;是,再進(jìn)行換行

mov ah,2 int 21h

jmp statue

;繼續(xù)查詢顯示數(shù)據(jù)異步通信程序 mov dl,al ;屏幕顯示該數(shù)據(jù)顯示數(shù)據(jù)異步通信程序128error: mov dx,2f8h

;讀出接收有誤的數(shù)據(jù),丟掉in al,dxmov dl,’?’

;顯示問(wèn)號(hào)mov ah,2int 21hjmp statue

;繼續(xù)查詢接收錯(cuò)誤處理異步通信程序error: 接收錯(cuò)誤處理異步通信程序1299.5.4中斷通信方式的編程方法關(guān)鍵解決主程序與中斷服務(wù)程序的數(shù)據(jù)傳遞注意處理好8250的4級(jí)10種中斷源簡(jiǎn)便方法只允許接收數(shù)據(jù)準(zhǔn)備好中斷9.5.4中斷通信方式的編程方法關(guān)鍵130中斷通信方式的循環(huán)隊(duì)列接收緩沖寄存器中斷服務(wù)程序主程序讀隊(duì)列送UART(保持寄存器空中斷)讀UART送隊(duì)列(接收數(shù)據(jù)準(zhǔn)備好中斷)發(fā)送處理:向隊(duì)列輸出字符接收處理:從隊(duì)列輸入字符接收隊(duì)列尾指針頭指針頭指針尾指針發(fā)送隊(duì)列UART發(fā)送保持寄存器中斷通信方式的循環(huán)隊(duì)列接收緩沖中斷服務(wù)程序主程序讀隊(duì)列送UA1318250自測(cè)試循環(huán)工作方式數(shù)據(jù)終端準(zhǔn)備好DTR#數(shù)據(jù)裝置準(zhǔn)備好DSR#發(fā)送數(shù)據(jù)SOUT接收數(shù)據(jù)SIN請(qǐng)求發(fā)送RTS#允許發(fā)送CTS#輸出OUT2載波檢測(cè)RLSD#振鈴指示RI#輸出OUT14個(gè)控制輸入信號(hào)和系統(tǒng)分離,并在芯片內(nèi)部與4個(gè)控制輸出信號(hào)相連發(fā)送的串行數(shù)據(jù)立即在內(nèi)部被接收可用來(lái)檢測(cè)8250發(fā)送和接收功能正確與否,而不必外連線8250自測(cè)試循環(huán)工作方式數(shù)據(jù)終端準(zhǔn)備好DTR#數(shù)據(jù)裝置132圖10.1異步通信數(shù)據(jù)格式圖9.1起至式串行通信協(xié)議的數(shù)據(jù)格式圖10.1異步通信數(shù)據(jù)格式圖9.1起至式串行通信協(xié)議的數(shù)133圖10.2RS-232C接口環(huán)境圖9.2RS-232C接口環(huán)境圖10.2RS-232C接口環(huán)境圖9.2RS-232C134圖10.3RS-232C的電平與邏輯值圖9.3RS-232C的電平與邏輯值圖10.3RS-232C的電平與邏輯值圖9.3RS-135圖10.4TTL和RS-232C之間的電平轉(zhuǎn)換圖9.4TTL和RS-232之間的電平轉(zhuǎn)換圖10.4TTL和RS-232C之間的電平轉(zhuǎn)換圖9.4136

圖10.58251A內(nèi)部結(jié)構(gòu)圖9.58251A的內(nèi)部結(jié)構(gòu)圖10.58251A內(nèi)部結(jié)構(gòu)圖9.58251A的內(nèi)部137圖10.6向8251A命令口寫入的順序

圖9.68251A命令字的寫入次序圖10.6向8251A命令口寫入的順序

圖9.6825138圖10.7用8251A實(shí)現(xiàn)與終端的串行通信圖9.7用8251實(shí)現(xiàn)與終端的串行通信圖10.7用8251A實(shí)現(xiàn)與終端的串行通信圖9.7用139圖10.8雙機(jī)串行通信硬件連接圖圖9.8雙機(jī)串行通信硬件連接圖圖10.8雙機(jī)串行通信硬件連接圖圖9.8雙機(jī)串行通信硬140圖10.9調(diào)制與解調(diào)圖9.9調(diào)制與解調(diào)圖10.9調(diào)制與解調(diào)圖9.9調(diào)制與解調(diào)141圖10.10傳輸制式圖9.10傳輸制式圖10.10傳輸制式圖9.10傳輸制式142傳輸制式傳輸制式143調(diào)制與解調(diào)調(diào)制與解調(diào)144不使用聯(lián)絡(luò)信號(hào)的3線相連方式為了交換信息,TxD和RxD應(yīng)當(dāng)交叉連接程序中不必使RTS和DTR

溫馨提示

  • 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)論