微機技術(shù)第11章8250_第1頁
微機技術(shù)第11章8250_第2頁
微機技術(shù)第11章8250_第3頁
微機技術(shù)第11章8250_第4頁
微機技術(shù)第11章8250_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第11 11章章 串行通信接口串行通信接口教學重點n 異步通信協(xié)議和異步通信協(xié)議和RS232C接口接口n 8250的內(nèi)部結(jié)構(gòu)和編程的內(nèi)部結(jié)構(gòu)和編程 n 異步通信程序異步通信程序11.1 串行通信基礎(chǔ)n串行通信:將數(shù)據(jù)分解成二進制位用一條串行通信:將數(shù)據(jù)分解成二進制位用一條信號線,一位一位順序傳送的方式信號線,一位一位順序傳送的方式n串行通信的優(yōu)勢:用于通信的線路少,因串行通信的優(yōu)勢:用于通信的線路少,因而在遠距離通信時可以極大地降低成本而在遠距離通信時可以極大地降低成本n串行通信適合于遠距離數(shù)據(jù)傳送,也常用串行通信適合于遠距離數(shù)據(jù)傳送,也常用于速度要求不高的近距離數(shù)據(jù)傳送于速度要求不高的近距

2、離數(shù)據(jù)傳送nPC系列機上有兩個串行異步通信接口、鍵系列機上有兩個串行異步通信接口、鍵盤、鼠標器與主機間采用串行數(shù)據(jù)傳送盤、鼠標器與主機間采用串行數(shù)據(jù)傳送1. 異步通信n串行通信時的數(shù)據(jù)、控制和狀態(tài)信息都使串行通信時的數(shù)據(jù)、控制和狀態(tài)信息都使用同一根信號線傳送用同一根信號線傳送n收發(fā)雙方必須遵守共同的通信協(xié)議(通信收發(fā)雙方必須遵守共同的通信協(xié)議(通信規(guī)程),才能解決傳送速率、信息格式、規(guī)程),才能解決傳送速率、信息格式、位同步、字符同步、數(shù)據(jù)校驗等問題位同步、字符同步、數(shù)據(jù)校驗等問題n串行異步通信以字符為單位進行傳輸,其串行異步通信以字符為單位進行傳輸,其通信協(xié)議是通信協(xié)議是起止式異步通信協(xié)議起

3、止式異步通信協(xié)議起止式異步通信協(xié)議起始位起始位每個字符開始傳送的標志,每個字符開始傳送的標志,起始位采用邏輯起始位采用邏輯0電平電平起始位起始位校驗位校驗位停止位停止位空閑位空閑位數(shù)據(jù)位數(shù)據(jù)位低位低位高位高位字符字符0/10/1 0/10/10/10/10/10/11 10 01 11 11 1數(shù)據(jù)位數(shù)據(jù)位數(shù)據(jù)位緊跟著起始位傳送。數(shù)據(jù)位緊跟著起始位傳送。由由58個二進制位組成,低位先傳送個二進制位組成,低位先傳送校驗位校驗位用于校驗是否傳送正確;可用于校驗是否傳送正確;可選擇奇檢驗、偶校驗或不傳送校驗位選擇奇檢驗、偶校驗或不傳送校驗位停止位停止位表示該字符傳送結(jié)束。停止表示該字符傳送結(jié)束。停止

4、位采用邏輯位采用邏輯1電平,可選擇電平,可選擇1、1.5或或2位位空閑位空閑位傳送字符之間的邏輯傳送字符之間的邏輯1電平,電平,表示沒有進行傳送表示沒有進行傳送數(shù)據(jù)傳輸速率n數(shù)據(jù)傳輸速率也稱比特率(數(shù)據(jù)傳輸速率也稱比特率(Bit Rate)n每秒傳輸?shù)亩M制位數(shù)每秒傳輸?shù)亩M制位數(shù)bpsn字符中每個二進制位持續(xù)的時間長度都一樣,為數(shù)據(jù)字符中每個二進制位持續(xù)的時間長度都一樣,為數(shù)據(jù)傳輸速率的倒數(shù)傳輸速率的倒數(shù)n當進行二進制數(shù)碼傳輸,且每位時間長度相等時,當進行二進制數(shù)碼傳輸,且每位時間長度相等時,比特率還等于波特率(比特率還等于波特率(Baud Rate)n過去,串行異步通信的數(shù)據(jù)傳輸速率限制在

5、過去,串行異步通信的數(shù)據(jù)傳輸速率限制在50 bps到到9600 bps之間。現(xiàn)在,可以達到之間。現(xiàn)在,可以達到115200 bps或更高或更高2. 同步通信n以一個數(shù)據(jù)塊(幀)為傳輸單位,每個數(shù)據(jù)塊附以一個數(shù)據(jù)塊(幀)為傳輸單位,每個數(shù)據(jù)塊附加加1個或個或2個同步字符,最后以校驗字符結(jié)束個同步字符,最后以校驗字符結(jié)束n同步通信的數(shù)據(jù)傳輸效率和傳輸速率較高,但硬同步通信的數(shù)據(jù)傳輸效率和傳輸速率較高,但硬件電路比較復(fù)雜件電路比較復(fù)雜n串行同步通信主要應(yīng)用在網(wǎng)絡(luò)當中串行同步通信主要應(yīng)用在網(wǎng)絡(luò)當中n最常使用高級數(shù)據(jù)鏈路控制協(xié)議最常使用高級數(shù)據(jù)鏈路控制協(xié)議HDLC同步字符同步字符數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)

6、校驗字符校驗字符3. 傳輸制式全雙工全雙工站站A站站B站站A站站B站站A站站B半雙工半雙工單工單工示例示例4. 調(diào)制解調(diào)器n調(diào)制(調(diào)制(Modulating)n把數(shù)字信號轉(zhuǎn)換為電話線路傳送的模擬信號把數(shù)字信號轉(zhuǎn)換為電話線路傳送的模擬信號n解調(diào)(解調(diào)(Demodulating)n將電話線路的模擬信號轉(zhuǎn)換為數(shù)字信號將電話線路的模擬信號轉(zhuǎn)換為數(shù)字信號n調(diào)制解調(diào)器調(diào)制解調(diào)器MODEMn具有調(diào)制和解調(diào)功能的器件合制在一個裝置具有調(diào)制和解調(diào)功能的器件合制在一個裝置示例示例11.2 串行接口標準RS-232Cn美國電子工業(yè)協(xié)會美國電子工業(yè)協(xié)會EIA制定的制定的通用標準串行接口通用標準串行接口n1962年公布

7、,年公布,1969年修訂年修訂n1987年年1月正式改名為月正式改名為EIA-232Dn設(shè)計目的是用于連接調(diào)制解調(diào)器設(shè)計目的是用于連接調(diào)制解調(diào)器n現(xiàn)已成為數(shù)據(jù)終端設(shè)備現(xiàn)已成為數(shù)據(jù)終端設(shè)備DTE(例如計算機)與數(shù)(例如計算機)與數(shù)據(jù)通信設(shè)備據(jù)通信設(shè)備DCE(例如調(diào)制解調(diào)器)的標準接口(例如調(diào)制解調(diào)器)的標準接口n可實現(xiàn)遠距離通信,也可近距離連接兩臺微機可實現(xiàn)遠距離通信,也可近距離連接兩臺微機n屬于網(wǎng)絡(luò)層次結(jié)構(gòu)中的最低層:物理層屬于網(wǎng)絡(luò)層次結(jié)構(gòu)中的最低層:物理層11.2.1 RS-232C的引腳定義n232C接口標準使用一個接口標準使用一個25針連接器針連接器n絕大多數(shù)設(shè)備只使用其中絕大多數(shù)設(shè)備只

8、使用其中9個信號,所以個信號,所以就有了就有了9針連接器針連接器n232C包括兩個信道:主信道和次信道包括兩個信道:主信道和次信道n次信道為輔助串行通道提供數(shù)據(jù)控制和通次信道為輔助串行通道提供數(shù)據(jù)控制和通道,但其傳輸速率比主信道要低得多,其道,但其傳輸速率比主信道要低得多,其他跟主信道相同,通常較少使用他跟主信道相同,通常較少使用RS-232C的引腳(1)nTxD:發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)n串行數(shù)據(jù)的發(fā)送端串行數(shù)據(jù)的發(fā)送端nRxD:接收數(shù)據(jù)接收數(shù)據(jù)n串行數(shù)據(jù)的接收端串行數(shù)據(jù)的接收端RS-232C的引腳(2)nRTS:請求發(fā)送:請求發(fā)送n當數(shù)據(jù)終端設(shè)備準備好送出數(shù)據(jù)時,就發(fā)出有效的當數(shù)據(jù)終端設(shè)備準備好送

9、出數(shù)據(jù)時,就發(fā)出有效的RTS信號,用于通知數(shù)據(jù)通信設(shè)備準備接收數(shù)據(jù)信號,用于通知數(shù)據(jù)通信設(shè)備準備接收數(shù)據(jù)nCTS:清除發(fā)送(允許發(fā)送):清除發(fā)送(允許發(fā)送)n當數(shù)據(jù)通信設(shè)備已準備好接收數(shù)據(jù)終端設(shè)備的傳送數(shù)當數(shù)據(jù)通信設(shè)備已準備好接收數(shù)據(jù)終端設(shè)備的傳送數(shù)據(jù)時,發(fā)出據(jù)時,發(fā)出CTS有效信號來響應(yīng)有效信號來響應(yīng)RTS信號信號nRTS和和CTS是數(shù)據(jù)終端設(shè)備與數(shù)據(jù)通信設(shè)備間一是數(shù)據(jù)終端設(shè)備與數(shù)據(jù)通信設(shè)備間一對用于數(shù)據(jù)發(fā)送的聯(lián)絡(luò)信號對用于數(shù)據(jù)發(fā)送的聯(lián)絡(luò)信號RS-232C的引腳(3)nDTR:數(shù)據(jù)終端準備好數(shù)據(jù)終端準備好n通常當數(shù)據(jù)終端設(shè)備一加電,該信號就有效,表明數(shù)通常當數(shù)據(jù)終端設(shè)備一加電,該信號就有效,

10、表明數(shù)據(jù)終端設(shè)備準備就緒據(jù)終端設(shè)備準備就緒nDSR:數(shù)據(jù)裝置準備好數(shù)據(jù)裝置準備好n通常表示數(shù)據(jù)通信設(shè)備(即數(shù)據(jù)裝置)已接通電源連通常表示數(shù)據(jù)通信設(shè)備(即數(shù)據(jù)裝置)已接通電源連到通信線路上,并處在數(shù)據(jù)傳輸方式到通信線路上,并處在數(shù)據(jù)傳輸方式nDTR和和DSR也可用做數(shù)據(jù)終端設(shè)備與數(shù)據(jù)通信設(shè)也可用做數(shù)據(jù)終端設(shè)備與數(shù)據(jù)通信設(shè)備間的聯(lián)絡(luò)信號,例如應(yīng)答數(shù)據(jù)接收備間的聯(lián)絡(luò)信號,例如應(yīng)答數(shù)據(jù)接收RS-232C的引腳(4)nGND:信號地信號地n為所有的信號提供一個公共的參考電平為所有的信號提供一個公共的參考電平nCD:載波檢測(載波檢測(DCD)n當本地調(diào)制解調(diào)器接收到來自對方的載波信當本地調(diào)制解調(diào)器接收到

11、來自對方的載波信號時,該引腳向數(shù)據(jù)終端設(shè)備提供有效信號號時,該引腳向數(shù)據(jù)終端設(shè)備提供有效信號nRI:振鈴指示振鈴指示n當調(diào)制解調(diào)器接收到對方的撥號信號期間,當調(diào)制解調(diào)器接收到對方的撥號信號期間,該引腳信號作為電話鈴響的指示、保持有效該引腳信號作為電話鈴響的指示、保持有效RS-232C的引腳(5)n保護地保護地(機殼地)(機殼地)n起屏蔽保護作用的接地端,一般應(yīng)參照設(shè)備起屏蔽保護作用的接地端,一般應(yīng)參照設(shè)備的使用規(guī)定,連接到設(shè)備的外殼或大地的使用規(guī)定,連接到設(shè)備的外殼或大地nTxC:發(fā)送器時鐘:發(fā)送器時鐘n控制數(shù)據(jù)終端發(fā)送串行數(shù)據(jù)的時鐘信號控制數(shù)據(jù)終端發(fā)送串行數(shù)據(jù)的時鐘信號nRxC:接收器時鐘:

12、接收器時鐘n控制數(shù)據(jù)終端接收串行數(shù)據(jù)的時鐘信號控制數(shù)據(jù)終端接收串行數(shù)據(jù)的時鐘信號11.2.2 RS-232C的連接n微機利用微機利用232C接口接口連接調(diào)制解調(diào)器連接調(diào)制解調(diào)器,用于,用于實現(xiàn)通過電話線路的遠距離通信實現(xiàn)通過電話線路的遠距離通信n微機利用微機利用232C接口接口直接連接直接連接進行短距離通進行短距離通信。這種連接不使用調(diào)制解調(diào)器,所以被信。這種連接不使用調(diào)制解調(diào)器,所以被稱為零調(diào)制解調(diào)器(稱為零調(diào)制解調(diào)器(Null Modem)連接)連接連接調(diào)制解調(diào)器電話線電話線MODEM微機微機2345678202223456782022MODEM23456782022數(shù)據(jù)裝置準備好數(shù)據(jù)裝置

13、準備好DSRDSR數(shù)據(jù)終端準備好數(shù)據(jù)終端準備好DTRDTR發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)TxDTxD接收數(shù)據(jù)接收數(shù)據(jù)RxDRxD請求發(fā)送請求發(fā)送RTSRTS允許發(fā)送允許發(fā)送CTSCTS信號地信號地GNDGND載波檢測載波檢測CDCD振鈴指示振鈴指示RIRI微機微機23456782022不使用聯(lián)絡(luò)信號的3線相連方式微機微機TxDRxDGND微機微機為了交換信息,為了交換信息,TxD和和RxD應(yīng)當交叉連接應(yīng)當交叉連接程序中不必使程序中不必使RTS和和DTR有效有效也不應(yīng)檢測也不應(yīng)檢測CTS和和DSR是否有效是否有效 “偽”使用聯(lián)絡(luò)信號的3線相連方式RTS和和CTS各自互接,各自互接,DTR和和DSR各自互接各自

14、互接表明請求傳送總是允許、數(shù)據(jù)裝置總準備好表明請求傳送總是允許、數(shù)據(jù)裝置總準備好微機微機DSRDTRTxDRxDRTSCTSGND微機微機使用聯(lián)絡(luò)信號的多線相連方式通信比較可靠通信比較可靠所用連線較多,不如前者經(jīng)濟所用連線較多,不如前者經(jīng)濟微機微機DSRDTRTxDRxDRTSCTSGND微機微機11.2.3 RS-232C的電氣特性n232C接口采用接口采用EIA電平電平n高電平為高電平為3V15Vn低電平為低電平為3V15Vn實際常用實際常用12V或或15Vn標準標準TTL電平電平n高電平:高電平:2.4V5Vn低電平:低電平:0V0.4V相互轉(zhuǎn)換相互轉(zhuǎn)換11.3 通用異步接收發(fā)送器825

15、0n串行傳輸,需要并行到串行和串行到并行串行傳輸,需要并行到串行和串行到并行的轉(zhuǎn)換,并按照傳輸協(xié)議發(fā)送和接收每個的轉(zhuǎn)換,并按照傳輸協(xié)議發(fā)送和接收每個字符(或數(shù)據(jù)塊)字符(或數(shù)據(jù)塊)n這些工作可由軟件實現(xiàn),也可用硬件實現(xiàn)這些工作可由軟件實現(xiàn),也可用硬件實現(xiàn)n通用異步接收發(fā)送器通用異步接收發(fā)送器UART是串行異步通是串行異步通信的接口電路芯片信的接口電路芯片nIBM PC/XT機的機的UART芯片是芯片是INS 8250n后來使用后來使用NS1655011.3.1 8250的內(nèi)部結(jié)構(gòu)n8250實現(xiàn)了起止式串行異步通信協(xié)議,支實現(xiàn)了起止式串行異步通信協(xié)議,支持全雙工通信持全雙工通信n通信字符可選擇數(shù)

16、據(jù)位為通信字符可選擇數(shù)據(jù)位為58位位n停止位停止位1、1.5或或2位位n可進行奇偶校驗可進行奇偶校驗n具有奇偶、幀和溢出錯誤檢測電路具有奇偶、幀和溢出錯誤檢測電路n8250支持的數(shù)據(jù)傳輸速率為支持的數(shù)據(jù)傳輸速率為509600bps1. 串行數(shù)據(jù)的發(fā)送并行數(shù)據(jù)并行數(shù)據(jù)加入起始位、加入起始位、校驗位、停止位校驗位、停止位串行數(shù)據(jù)串行數(shù)據(jù)CPU發(fā)送保持寄存器發(fā)送保持寄存器發(fā)送移位寄存器發(fā)送移位寄存器同步控制同步控制8250SOUT0/10/1 0/10/10/10/10/10/1雙緩沖寄存器結(jié)構(gòu)雙緩沖寄存器結(jié)構(gòu)保證數(shù)據(jù)的連續(xù)發(fā)送保證數(shù)據(jù)的連續(xù)發(fā)送2. 起始位的檢測起始檢測起始檢測確定已檢測到起始位確

17、定已檢測到起始位采樣數(shù)據(jù)采樣數(shù)據(jù)起起 始始 位位時鐘時鐘(RCLK)數(shù)據(jù)線數(shù)據(jù)線(SIN)T16 T16 T8 T數(shù)據(jù)接收時鐘頻率是數(shù)據(jù)傳輸頻率的數(shù)據(jù)接收時鐘頻率是數(shù)據(jù)傳輸頻率的16倍倍正確識別起始位,防止因干擾引起的誤識別正確識別起始位,防止因干擾引起的誤識別3. 串行數(shù)據(jù)的接收并行數(shù)據(jù)并行數(shù)據(jù)檢測接收錯誤檢測接收錯誤刪除起始位、刪除起始位、校驗位、停止位校驗位、停止位串行數(shù)據(jù)串行數(shù)據(jù)CPU接收緩沖寄存器接收緩沖寄存器接收移位寄存器接收移位寄存器同步控制同步控制8250SIN0/10/1 0/10/10/10/10/10/1雙緩沖寄存器結(jié)構(gòu)雙緩沖寄存器結(jié)構(gòu)保證數(shù)據(jù)的連續(xù)接收保證數(shù)據(jù)的連續(xù)接收

18、4. 接收錯誤的處理n奇偶錯誤奇偶錯誤PE(Parity Error)n若接收到的字符的若接收到的字符的“1”的個數(shù)不符合奇偶校驗要求的個數(shù)不符合奇偶校驗要求n幀錯誤幀錯誤FE(Frame Error)n若接收到的字符格式不符合規(guī)定(如缺少停止位)若接收到的字符格式不符合規(guī)定(如缺少停止位)n溢出錯誤溢出錯誤OE(Overrun Error)n若接收移位寄存器接收到一個數(shù)據(jù),并送至輸入緩沖若接收移位寄存器接收到一個數(shù)據(jù),并送至輸入緩沖器時,器時,CPU還未取走前一個數(shù)據(jù),就會出現(xiàn)數(shù)據(jù)溢出還未取走前一個數(shù)據(jù),就會出現(xiàn)數(shù)據(jù)溢出n若接收緩沖器的級數(shù)多,則溢出錯誤的幾率就少若接收緩沖器的級數(shù)多,則溢出

19、錯誤的幾率就少11.3.2 8250的引腳n分成連接分成連接CPU的部分和連接外設(shè)的部分的部分和連接外設(shè)的部分n注意:注意:8250不是不是Intel公司的產(chǎn)品,所以公司的產(chǎn)品,所以該芯片引腳名稱與前面學習的該芯片引腳名稱與前面學習的8253、8255等等Intel產(chǎn)品有所不同,但是引腳功產(chǎn)品有所不同,但是引腳功能卻是類似的能卻是類似的1. 處理器接口引腳(1)n數(shù)據(jù)線數(shù)據(jù)線D0D7:在:在CPU與與8250之間交換信息之間交換信息n地址線地址線A0A2:尋址:尋址8250內(nèi)部寄存器內(nèi)部寄存器n片選線:片選線:8250設(shè)計了設(shè)計了3個片選輸入信號個片選輸入信號CS0、CS1、CS2*和一個片選

20、輸出信號和一個片選輸出信號CSOUT。3個片個片選輸入都有效時,才選中選輸入都有效時,才選中8250芯片,同時芯片,同時CSOUT輸出高電平有效。輸出高電平有效。n地址選通信號地址選通信號ADS*:當該信號低有效時,鎖存:當該信號低有效時,鎖存上述地址線和片選線的輸入狀態(tài),保證讀寫期間上述地址線和片選線的輸入狀態(tài),保證讀寫期間的地址穩(wěn)定的地址穩(wěn)定1. 處理器接口引腳(2)n讀控制線讀控制線n數(shù)據(jù)輸入選通數(shù)據(jù)輸入選通DISTR(高有效)和(高有效)和DISTR*(低有效)(低有效)有一個信號有效,有一個信號有效,CPU從從8250內(nèi)部寄存器讀出數(shù)據(jù)內(nèi)部寄存器讀出數(shù)據(jù)n相當于相當于I/O讀信號讀信

21、號n寫控制線寫控制線n數(shù)據(jù)輸出選通數(shù)據(jù)輸出選通DOSTR(高有效)和(高有效)和DOSTR*(低有(低有效)有一個有效,效)有一個有效,CPU就將數(shù)據(jù)寫入就將數(shù)據(jù)寫入8250內(nèi)部寄存器內(nèi)部寄存器n相當于相當于I/O寫信號寫信號n8250讀寫控制信號有兩對,每對信號作用完全相讀寫控制信號有兩對,每對信號作用完全相同,只不過有效電平不同而己同,只不過有效電平不同而己1. 處理器接口引腳(3)n驅(qū)動器禁止信號驅(qū)動器禁止信號DDIS:CPU從從8250讀取數(shù)讀取數(shù)據(jù)時,據(jù)時,DDIS引腳輸出低電平,用來禁止外引腳輸出低電平,用來禁止外部收發(fā)器對系統(tǒng)總線的驅(qū)動;其他時間,部收發(fā)器對系統(tǒng)總線的驅(qū)動;其他時

22、間,DDIS為高電平為高電平n主復(fù)位線主復(fù)位線MR:硬件復(fù)位信號:硬件復(fù)位信號RESETn中斷請求線中斷請求線INTRPT:8250有有4級共級共10個中個中斷源,當任一個未被屏蔽的中斷源有請求斷源,當任一個未被屏蔽的中斷源有請求時,時,INTRPT輸出高電平向輸出高電平向CPU請求中斷請求中斷2. 時鐘信號n時鐘輸入引腳時鐘輸入引腳XTAL1:8250的基準工作時鐘的基準工作時鐘n時鐘輸出引腳時鐘輸出引腳XTAL2:基準時鐘信號的輸出端基準時鐘信號的輸出端n波特率輸出引腳波特率輸出引腳BAUDOUT*:基準時鐘經(jīng):基準時鐘經(jīng)8250內(nèi)部波特率發(fā)生器分頻后產(chǎn)生發(fā)送時鐘內(nèi)部波特率發(fā)生器分頻后產(chǎn)生

23、發(fā)送時鐘n接收時鐘引腳接收時鐘引腳RCLK:接收外部提供的接收時鐘接收外部提供的接收時鐘信號;若采用發(fā)送時鐘作為接收時鐘,則只要將信號;若采用發(fā)送時鐘作為接收時鐘,則只要將RCLK引腳和引腳和BAUDOUT*引腳直接相連引腳直接相連3. 串行異步接口引腳8250數(shù)據(jù)裝置準備好數(shù)據(jù)裝置準備好DSR*數(shù)據(jù)終端準備好數(shù)據(jù)終端準備好DTR*發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)SOUT接收數(shù)據(jù)接收數(shù)據(jù)SIN請求發(fā)送請求發(fā)送RTS*允許發(fā)送允許發(fā)送CTS*信號地信號地GND載波檢測載波檢測RLSD*振鈴指示振鈴指示RI*4. 輸出線nOUT1*和和OUT2*:n兩個一般用途的輸出信號兩個一般用途的輸出信號n由調(diào)制解調(diào)器控制寄

24、存器的由調(diào)制解調(diào)器控制寄存器的D2和和D3使其輸出使其輸出低電平有效信號低電平有效信號n復(fù)位使其恢復(fù)為高復(fù)位使其恢復(fù)為高11.3.3 8250的寄存器n8250內(nèi)部有內(nèi)部有9種可訪問的寄存器,除數(shù)寄種可訪問的寄存器,除數(shù)寄存器是存器是16位的,占用兩個連續(xù)的位的,占用兩個連續(xù)的8位端口位端口n內(nèi)部寄存器用引腳內(nèi)部寄存器用引腳A0A2來尋址;同時還來尋址;同時還要利用通信線路控制寄存器的最高位,即要利用通信線路控制寄存器的最高位,即除數(shù)寄存器訪問位除數(shù)寄存器訪問位DLAB,來區(qū)別共用兩,來區(qū)別共用兩個端口地址的不同寄存器(表個端口地址的不同寄存器(表11.3)1. 接收緩沖寄存器RBR存放串行接

25、收后轉(zhuǎn)換成并行的數(shù)據(jù)存放串行接收后轉(zhuǎn)換成并行的數(shù)據(jù)CPU接收緩沖寄存器接收緩沖寄存器接收移位寄存器接收移位寄存器同步控制同步控制8250SIN2. 發(fā)送保持寄存器THR包含將要串行發(fā)送的并行數(shù)據(jù)包含將要串行發(fā)送的并行數(shù)據(jù) CPU發(fā)送保持寄存器發(fā)送保持寄存器發(fā)送移位寄存器發(fā)送移位寄存器同步控制同步控制8250SOUT3. 除數(shù)寄存器除數(shù)寄存器保存設(shè)定的分頻系數(shù)除數(shù)寄存器保存設(shè)定的分頻系數(shù)分頻系數(shù)基準時鐘頻率分頻系數(shù)基準時鐘頻率(16比特率)比特率)起起 始始 位位時鐘時鐘(RCLK)數(shù)據(jù)線數(shù)據(jù)線(SIN)T16 T16 T8 T4. 通信線路控制寄存器LCRDLABD6 D5 D4 D3D2D1

26、 D0寄存器選擇寄存器選擇0 正常值正常值1 除數(shù)寄存器除數(shù)寄存器中止字符中止字符0 無作用無作用1 發(fā)送中止字發(fā)送中止字符符校驗位設(shè)置校驗位設(shè)置0 無校驗無校驗位位001 設(shè)置奇校設(shè)置奇校驗驗011 設(shè)置偶校驗設(shè)置偶校驗101 校驗位為校驗位為1111 校驗位為校驗位為0停止位個數(shù)停止位個數(shù)0 1位位1 1.5位(數(shù)據(jù)位為位(數(shù)據(jù)位為5位時)位時)1 2位(數(shù)據(jù)位為位(數(shù)據(jù)位為68位時)位時)數(shù)據(jù)位個數(shù)數(shù)據(jù)位個數(shù)00 5位位01 6位位10 7位位11 8位位指定串行異步通信的字符格式指定串行異步通信的字符格式5. 通信線路狀態(tài)寄存器LSR0D6 D5 D4 D3D2D1 D0為為1,表示發(fā)

27、送移位寄存器空;,表示發(fā)送移位寄存器空;當數(shù)據(jù)由發(fā)送保持寄存器移入當數(shù)據(jù)由發(fā)送保持寄存器移入發(fā)送移位寄存器時,該位為發(fā)送移位寄存器時,該位為0提供串行異步通信的當前狀態(tài)提供串行異步通信的當前狀態(tài)供供CPU讀取和處理讀取和處理為為1,表示發(fā)送保持寄存器空,表示發(fā)送保持寄存器空,當當CPU將字符寫入發(fā)送保持將字符寫入發(fā)送保持寄存器后,該位為寄存器后,該位為0為為1,表示正在傳輸中止字符,表示正在傳輸中止字符為為1,表示出現(xiàn)幀錯誤,表示出現(xiàn)幀錯誤為為1,表示出現(xiàn)奇偶錯,表示出現(xiàn)奇偶錯為為1,表示出現(xiàn)溢出錯,表示出現(xiàn)溢出錯為為1,表示接收數(shù)據(jù)緩沖器收到,表示接收數(shù)據(jù)緩沖器收到一個數(shù)據(jù),既接收數(shù)據(jù)準備好

28、;一個數(shù)據(jù),既接收數(shù)據(jù)準備好;當當CPU讀走數(shù)據(jù)后,該位為讀走數(shù)據(jù)后,該位為0為為1使使DTR*引腳為低引腳為低否則為高否則為高 6. 調(diào)制解調(diào)器控制寄存器MCR設(shè)置設(shè)置8250與數(shù)據(jù)通信設(shè)備之間與數(shù)據(jù)通信設(shè)備之間聯(lián)絡(luò)應(yīng)答的輸出信號聯(lián)絡(luò)應(yīng)答的輸出信號0 0 0LOOP OUT2OUT1RTS DTR為為1使使RTS*引腳為低引腳為低否則為高否則為高 為為1使使OUT1*引腳為低引腳為低否則為高否則為高 為為1使使OUT2*引腳為低引腳為低否則為高否則為高 為為1使使8250為為循環(huán)工作方式循環(huán)工作方式否則為正常工作方式否則為正常工作方式7. 調(diào)制解調(diào)器狀態(tài)寄存器MSRn反映反映4個控制輸入信號

29、的當前狀態(tài)及其變化個控制輸入信號的當前狀態(tài)及其變化nMSR高高4位中某位為位中某位為1,說明相應(yīng)輸入信號當前,說明相應(yīng)輸入信號當前為低有效,否則為高電平為低有效,否則為高電平nMSR低低4位中某位為位中某位為1,則說明從上次,則說明從上次CPU讀取讀取該狀態(tài)字后,相應(yīng)輸入信號已發(fā)生改變,從高變該狀態(tài)字后,相應(yīng)輸入信號已發(fā)生改變,從高變低或反之低或反之nMCR低低4位任一位置位任一位置1,均產(chǎn)生調(diào)制解調(diào)器狀態(tài),均產(chǎn)生調(diào)制解調(diào)器狀態(tài)中斷,當中斷,當CPU讀取該寄存器或復(fù)位后,低讀取該寄存器或復(fù)位后,低4位被位被清零清零4級中斷n接收線路狀態(tài)中斷接收線路狀態(tài)中斷n奇偶錯、溢出錯、幀錯和中止字符奇偶錯

30、、溢出錯、幀錯和中止字符n接收器數(shù)據(jù)準備好中斷接收器數(shù)據(jù)準備好中斷n發(fā)送保持寄存器空中斷發(fā)送保持寄存器空中斷n調(diào)制解調(diào)器狀態(tài)中斷調(diào)制解調(diào)器狀態(tài)中斷n清除發(fā)送狀態(tài)改變清除發(fā)送狀態(tài)改變n數(shù)據(jù)終端準備好狀態(tài)改變數(shù)據(jù)終端準備好狀態(tài)改變n振鈴接通變成斷開振鈴接通變成斷開n接收線路信號檢測狀態(tài)改變接收線路信號檢測狀態(tài)改變優(yōu)先權(quán)高優(yōu)先權(quán)高優(yōu)先權(quán)高優(yōu)先權(quán)高優(yōu)先權(quán)低優(yōu)先權(quán)低8. 中斷允許寄存器IERn8250設(shè)計有設(shè)計有2個中斷寄存器和個中斷寄存器和4級中斷級中斷n4級中斷的優(yōu)先權(quán),是按照串行通信過程級中斷的優(yōu)先權(quán),是按照串行通信過程中事件的緊迫程度安排的、是固定不變的中事件的緊迫程度安排的、是固定不變的n用戶

31、可利用中斷允許或禁止進行控制用戶可利用中斷允許或禁止進行控制n中斷允許寄存器的低中斷允許寄存器的低4位控制位控制8250這這4級中級中斷是否被允許斷是否被允許n某位為某位為1,則對應(yīng)的中斷被允許,則對應(yīng)的中斷被允許n否則,被禁止否則,被禁止9. 中斷識別IIR保存正在請求中斷的優(yōu)先權(quán)最高保存正在請求中斷的優(yōu)先權(quán)最高的中斷級別編碼的中斷級別編碼0 0 0 0 0ID1 ID0IP0 有中斷有中斷1 無中斷無中斷ID1ID0優(yōu)先權(quán)優(yōu)先權(quán)中斷類型中斷類型1 11 00 10 01234 接收線路狀態(tài)接收線路狀態(tài) 接收數(shù)據(jù)準備好接收數(shù)據(jù)準備好 發(fā)送保持寄存器空發(fā)送保持寄存器空 調(diào)制解調(diào)器狀態(tài)調(diào)制解調(diào)器

32、狀態(tài)11.4 異步通信適配器nIBM PC/XT機的串行異步通信適配器機的串行異步通信適配器n以以8250為核心為核心n完成發(fā)送時的并轉(zhuǎn)串和接收時的串轉(zhuǎn)并以及完成發(fā)送時的并轉(zhuǎn)串和接收時的串轉(zhuǎn)并以及相應(yīng)的控制工作相應(yīng)的控制工作n配置了配置了TTL電平與電平與EIA電平轉(zhuǎn)換電路等電平轉(zhuǎn)換電路等n展開異步通信適配器的展開異步通信適配器的n硬件電路硬件電路n軟件編程軟件編程RCLKRCLKBAUDOUTBAUDOUTIRQIRQ4 4IRQIRQ3 3RESETRESET+5V+5VA A8 8AENAENA A3 3A A7 7A A9 9IOR IOR IOWIOWA A0 0A A2 2MRMR

33、XTAL1XTAL1OUTOUT1 1OUTOUT2 2INTRPTINTRPTDISTRDISTRDOSTRDOSTRA A0 0A A2 2CS2CS282508250LS245LS245D D0 0D D7 7D D0 0D D7 7J9J9J10J10J11J11J12J12DIRDIR1.8432MHz1.8432MHzCS0CS0CS1CS1ADSADSDISTRDISTRDOSTRDOSTR5V5V11.4.1 異步通信適配器的接口電路注意:注意:J9J11跨接器跨接器和和OUT2*的作用的作用11.4.2 異步通信適配器的初始化編程n對對8250的內(nèi)部控制寄存器進行編程寫入的內(nèi)

34、部控制寄存器進行編程寫入 寫入除數(shù)寄存器寫入除數(shù)寄存器n設(shè)置傳輸率設(shè)置傳輸率 寫入通信線路控制寄存器寫入通信線路控制寄存器n設(shè)置字符格式設(shè)置字符格式 寫入調(diào)制解調(diào)器控制寄存器寫入調(diào)制解調(diào)器控制寄存器n設(shè)置工作方式設(shè)置工作方式 寫入中斷允許寄存器寫入中斷允許寄存器n設(shè)置中斷允許或屏蔽位設(shè)置中斷允許或屏蔽位設(shè)置傳輸率mov al,80hmov dx,3fbhout dx,al;寫入通信線路控制寄存器,使寫入通信線路控制寄存器,使DLAB1mov ax,96;分頻系數(shù):分頻系數(shù):1.8432MHz(120016)9660Hmov dx,3f8hout dx,al ;寫入除數(shù)寄存器低寫入除數(shù)寄存器低8

35、位位mov al,ah inc dxout dx,al ;寫入除數(shù)寄存器高寫入除數(shù)寄存器高8位位寫入除數(shù)寄存器設(shè)置字符格式mov al,00001010bmov dx,3fbh out dx,al;寫入通信線路控制寄存器寫入通信線路控制寄存器;這段程序同時使這段程序同時使DLAB0寫入通信線路控制寄存器設(shè)置工作方式n設(shè)置查詢通信方式設(shè)置查詢通信方式mov al,03h;控制控制OUT2*為高,為高,DTR*和和RTS*為低為低 mov dx,3fchout dx,al;寫入調(diào)制解調(diào)器控制寄存器寫入調(diào)制解調(diào)器控制寄存器n設(shè)置中斷通信方式設(shè)置中斷通信方式mov al,0bh;控制為控制為OUT2*

36、低,允許低,允許INTRPT產(chǎn)生請求產(chǎn)生請求mov dx,3fchout dx,al寫入調(diào)制解調(diào)器控制寄存器設(shè)置中斷允許或屏蔽位mov al,0;禁止所有中斷禁止所有中斷 mov dx,3f9hout dx,al;寫入中斷允許寄存器(此時寫入中斷允許寄存器(此時DLAB0)寫入中斷允許寄存器11.4.3 異步通信程序n程序循環(huán)讀取程序循環(huán)讀取8250的通信狀態(tài)寄存器的通信狀態(tài)寄存器n數(shù)據(jù)傳輸錯誤就顯示一個問號數(shù)據(jù)傳輸錯誤就顯示一個問號“?”n接收到數(shù)據(jù)就顯示出來接收到數(shù)據(jù)就顯示出來n可以發(fā)送數(shù)據(jù)就從鍵盤輸入發(fā)送字符(用戶可以發(fā)送數(shù)據(jù)就從鍵盤輸入發(fā)送字符(用戶沒有輸入字符就不發(fā)送)沒有輸入字符就

37、不發(fā)送)n如果按下如果按下ESC鍵返回鍵返回DOS查詢通信線路狀態(tài)statue:mov dx,2fdh;讀通信線路狀態(tài)寄存器讀通信線路狀態(tài)寄存器in al,dxtest al,1eh;接收有錯誤否接收有錯誤否?jnz error;有錯,則轉(zhuǎn)錯誤處理有錯,則轉(zhuǎn)錯誤處理test al,01h;接收到數(shù)據(jù)嗎接收到數(shù)據(jù)嗎?jnz receive;是,轉(zhuǎn)接收處理是,轉(zhuǎn)接收處理test al,20h;保持寄存器空嗎保持寄存器空嗎?jz statue;不能,循環(huán)查詢不能,循環(huán)查詢異步通信程序檢測鍵盤輸入mov ah,0bh;檢測鍵盤有無輸入字符檢測鍵盤有無輸入字符int 21hcmp al,0jz statue;無輸入字符,循環(huán)等待無輸入字符,循環(huán)等待mov ah,0;有輸入字符,讀取字符有輸入字符,讀取字符int 16h;采用采用01號號DOS功能調(diào)用,則有回顯功能調(diào)用,則有回顯cmp al,1bhjz done;是是ESC鍵,程序返回鍵,程序返回DOS異步通信程序發(fā)送數(shù)據(jù)mov dx,2f8h;將字符輸出給發(fā)送保持寄存器將字符輸出給發(fā)送保持寄存器out dx,al;串行發(fā)送數(shù)據(jù)串行發(fā)送數(shù)據(jù)jmp statue;繼續(xù)查詢繼續(xù)查詢異步通信程序接收數(shù)據(jù)receive: mov dx,2f8h;從輸入緩沖寄存器讀取字符從輸入緩沖寄存器讀取字符in al,dx

溫馨提示

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

評論

0/150

提交評論