版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第六章串行通信接口串行通信的基本概念串行通信接口標(biāo)準(zhǔn)INTEL8251的功能及應(yīng)用編程微型計(jì)算機(jī)串行通信程序的編制計(jì)算機(jī)的CPU與其外部設(shè)備之間常常要進(jìn)行信息的交換,一臺計(jì)算機(jī)與其他的計(jì)算機(jī)之間有時(shí)也要交換信息。所有這些信息交換均可稱為“通信”。通信的基本方式可分為并行通信和串行通信兩種。并行通信是指數(shù)據(jù)的各位同時(shí)進(jìn)行傳送的通信方式。串行通信是指數(shù)據(jù)是一位一位地按順序傳送的通信方式。6、1串行通信的基本概念6、1、1.串行通信的分類按照串行數(shù)據(jù)的同步方式,串行通信可分為異步傳送和同步傳送兩類。同步通信是靠識別同步字符來實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收的,而異步通信是一種利用字符的再同步技術(shù)的通信方式。1.1異步傳送方式
異步傳送的特點(diǎn)是數(shù)據(jù)在線路上的傳送是不連續(xù)。數(shù)據(jù)以一個(gè)字(或稱字符)為單位來傳送。異步傳送時(shí),各個(gè)字符間可以是連續(xù)傳送的.也可以是間斷傳送的,這完全由發(fā)送方根據(jù)需要來決定。異步傳送時(shí),同步時(shí)鐘脈沖并不發(fā)送到接收方,即雙方各用自己的時(shí)鐘源來控制發(fā)送和接收。字符的發(fā)送是隨機(jī)進(jìn)行的,因此,對于接收方來說就有一個(gè)判別何時(shí)有字符達(dá)到,何時(shí)是新的一個(gè)字符開始的問題。因此,在異步通信時(shí),對字符必須規(guī)定一定的格式。起止式異步通信數(shù)據(jù)格式①每個(gè)字符總是以起始位開始(“0”),以停止位(“1”)結(jié)束。11000010111000空閑位起始位數(shù)據(jù)位0低高校驗(yàn)位停止位②字符之間沒有時(shí)間間隔要求③字符后一位校驗(yàn)位(可沒有)2.特點(diǎn):是一個(gè)字符一個(gè)字符傳輸異步傳輸方式中的每個(gè)字符由4個(gè)部分組成:起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位。一個(gè)字符由起始位開始,停止位結(jié)束。①起始位:1位,低電平;②數(shù)據(jù)位:5~8位,低位在前,高位在后;③校驗(yàn)位:1位,對數(shù)據(jù)進(jìn)行校驗(yàn),奇校驗(yàn)和偶校驗(yàn);④停止位:1~2位,高電平。停止位后不定長度的高電平部分稱為空閑位,多少不限。停止位和空閑位都規(guī)定為高電平(邏輯1),這樣就能保證起始位開始處一定有一個(gè)下降沿,指出一個(gè)字符的開始。異步通信的時(shí)鐘定時(shí)方法數(shù)據(jù)(62H)000011停止位異步傳輸先發(fā)送低位(LSB)發(fā)送方利用發(fā)送時(shí)鐘來決定發(fā)送每個(gè)位的時(shí)刻接收方檢測起始位的下降沿,并用它來同步接收時(shí)鐘,然后利用接收時(shí)鐘從每一位的中間接收該位1起始位LSBMSB0奇偶校驗(yàn)位00/111接收/發(fā)送時(shí)鐘波特率波特率是指單位時(shí)間內(nèi)傳送二進(jìn)制數(shù)據(jù)的位數(shù),其單位是bps(位/秒),簡稱波特。波特率是衡量串行通信數(shù)據(jù)速度快慢的一個(gè)技術(shù)指標(biāo)。有時(shí)也用“位周期”來表示傳輸速率,位周期是波特率的倒數(shù)。最常用的標(biāo)準(zhǔn)波特率是110、300、600、1200、2400、4800、9600和19200bps。并行通信中,傳輸速率是以每秒傳送多少字節(jié)來表示。串行通信中,傳輸速率是以波特率來表示假如每傳送一個(gè)8位字符,共有12位格式(其中有1個(gè)起始位,8個(gè)數(shù)據(jù)位,1個(gè)校驗(yàn)位,2個(gè)停止位),如果波特率是1200bps。則每秒鐘傳送的字符數(shù)是1200/12=100個(gè)。波特率和時(shí)鐘頻率在串行通信時(shí),接口電路的發(fā)送端需要用一個(gè)時(shí)鐘來決定每一位對應(yīng)的時(shí)間長度,同樣接收端也需要由一個(gè)時(shí)鐘確定每一位數(shù)據(jù)所對應(yīng)的時(shí)間長度。為了實(shí)現(xiàn)這一目的,通常串行接口電路各有一個(gè)獨(dú)立的時(shí)鐘信號,發(fā)送器時(shí)鐘和接收器時(shí)鐘。收/發(fā)時(shí)鐘頻率與波特率之間的關(guān)系:收/發(fā)時(shí)鐘頻率=波特率×波特因子一般n取1,16,32和64等。對于異步通信,常采用n=16;對于同步通信,則必須取n=1。例1某一串行接口電路的發(fā)送器時(shí)鐘頻率為19200Hz,波特率因子的值為16,則發(fā)送波特率Fd=Ftxc/Kt=19200/16=1200(bps)例2要完成從A站到B站的串行數(shù)據(jù)通信,A站的發(fā)送器時(shí)鐘頻率Ftxc為38400Hz,波特率因子為16;B站的接收器電路規(guī)定波特率因子為64,則B站的接收器時(shí)鐘頻率應(yīng)為多少?根據(jù)A點(diǎn)的發(fā)送器電路規(guī)定,數(shù)據(jù)傳輸?shù)牟ㄌ芈剩篎d=Ftxc/Kt=38400/16=2400(bps)收發(fā)雙方應(yīng)該使用相同的波特率,接收器時(shí)鐘頻率應(yīng)為:Frxc=Fd
×Kr=2400×64=153600(Hz)異步通信中,收發(fā)雙方的約定在異步通信中。收發(fā)雙方必須事先約定兩件事:一是規(guī)定字符格式即規(guī)定字符各部分所占的位數(shù),是否采用奇偶校驗(yàn),以及校驗(yàn)的方式(偶校驗(yàn)還是奇校驗(yàn))。二是規(guī)定所采用的波特率以及時(shí)鐘頻率和波特率間的比例關(guān)系。異步傳送由于不傳送同步時(shí)鐘脈沖,所以設(shè)備比較簡單,實(shí)現(xiàn)起來方便。它還可根據(jù)需要連續(xù)地或有間隙地傳送數(shù)據(jù),對各字符間的間隙長度沒有限制。缺點(diǎn):是在數(shù)據(jù)字符串中要加上起同步作用的起始位和停讓位,降低了有效數(shù)據(jù)位的傳送速率,僅適合于低速通信的場合。1.2同步傳送方式同步傳送是以許多字符或許多比特組織成的數(shù)據(jù)塊為傳輸單位,它是一種連續(xù)傳送數(shù)據(jù)的方式。在通信開始以后,發(fā)送端連續(xù)發(fā)送字符,接收端也連續(xù)接收字符,直到一個(gè)數(shù)據(jù)塊傳送結(jié)束。同步傳送時(shí),字符與字符之間沒有間隙,也不用起始位和停止位,僅在數(shù)據(jù)塊開始時(shí)用同步字符SYNC來指示。2.同步通信以一個(gè)數(shù)據(jù)塊(幀)為傳輸單位,每個(gè)數(shù)據(jù)塊附加1個(gè)或2個(gè)同步字符,最后以校驗(yàn)字符結(jié)束同步通信的數(shù)據(jù)傳輸效率和傳輸速率較高,但硬件電路比較復(fù)雜串行同步通信主要應(yīng)用在網(wǎng)絡(luò)當(dāng)中最常使用高級數(shù)據(jù)鏈路控制協(xié)議HDLC~~~~同步字符數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)校驗(yàn)字符同步通信可以分為單同步字符方式和雙同步字符方式。同步字符可以由用戶約定,當(dāng)然也可以采用用ASCII碼中規(guī)定的SYN代碼,即16H。按同步方式通信時(shí),在發(fā)送時(shí)要插入同步字符,接收方檢測到同步字符時(shí),即準(zhǔn)備開始接收,因此,在硬件設(shè)備上需要有插入同步字符和相應(yīng)的檢測手段,設(shè)備較復(fù)雜。在同步傳送時(shí),無論接收或發(fā)送,都要求統(tǒng)一時(shí)鐘.即時(shí)鐘頻率和波特率一致。為了保證接收正確無誤,發(fā)送方除了傳送數(shù)據(jù)外,還要把時(shí)鐘信號同時(shí)傳送出去。同步傳送的優(yōu)點(diǎn)是傳送速率較高,可達(dá)56K波特或更高。6、1、2串行通信的制式按照數(shù)據(jù)流的方式可分為單工、半雙工和全雙工三種基本傳送方式1、單工傳送方式在接收器和發(fā)送器之間只有一條傳輸線,只能進(jìn)行單一方向的傳輸發(fā)送器接收器數(shù)據(jù)流2、半雙工傳送方式當(dāng)使用同一根傳輸線既作輸入又作輸出時(shí),雖然數(shù)據(jù)可以在兩個(gè)方向上傳送,但通信雙方不能同時(shí)進(jìn)行收發(fā)數(shù)據(jù)發(fā)送器接收器數(shù)據(jù)流3、全雙工傳送方式當(dāng)數(shù)據(jù)的接收和發(fā)送分流,分別由兩根不同的傳輸線傳送時(shí),通信雙方都能在同一刻時(shí)行發(fā)送和接收數(shù)據(jù)發(fā)送器接收器數(shù)據(jù)流示例6、1、3串行通信的調(diào)制解調(diào)調(diào)制(Modulating)把數(shù)字信號轉(zhuǎn)換為電話線路傳送的模擬信號解調(diào)(Demodulating)將電話線路的模擬信號轉(zhuǎn)換為數(shù)字信號調(diào)制解調(diào)器MODEM具有調(diào)制和解調(diào)功能的器件合制在一個(gè)裝置示例數(shù)據(jù)終端設(shè)備DTE——數(shù)據(jù)源和目的地?cái)?shù)據(jù)通信設(shè)備DCE——使數(shù)據(jù)符合線路要求
6、1、4串行口的基本功能和硬件支持1、異步串行通信接口也稱為通用異步接受器/發(fā)送器UART。硬件由3部分組成:接收部分、發(fā)送部分和控制部分2)錯(cuò)誤校驗(yàn)奇偶校驗(yàn)是最常用的一種校驗(yàn)數(shù)據(jù)傳送錯(cuò)誤的方法。UART常設(shè)置3種出錯(cuò)標(biāo)志:①奇偶校驗(yàn)錯(cuò):接收方式在進(jìn)行奇偶校驗(yàn)時(shí)發(fā)現(xiàn)的錯(cuò)誤,即“1”的個(gè)數(shù)不符合規(guī)定,則為奇偶校驗(yàn)錯(cuò);②幀格式錯(cuò):接收方在收到字符時(shí)發(fā)現(xiàn)字符格式不符合規(guī)定,如缺少停止位,則說明幀格式出錯(cuò)。③溢出錯(cuò):接收方在接收數(shù)據(jù)時(shí),要將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)供CPU讀取。若接收方已經(jīng)接收了第二個(gè)字符,但CPU還沒有將前一個(gè)字符取走,于是出現(xiàn)數(shù)據(jù)丟失,這就是溢出錯(cuò)。2同步串行接口組成
FIFO(先入先出緩沖器):它是由多個(gè)寄存器組成的,因此發(fā)送時(shí),cPu一次可以將幾個(gè)字符預(yù)先裝入。接收時(shí),允許cPu—次連續(xù)取出幾個(gè)字符。輸出移位寄存器:它從發(fā)送FIFO取得并行數(shù)據(jù),以發(fā)送時(shí)鐘的速率串行發(fā)送數(shù)據(jù)信息。輸入移位寄存器:它從串行輸入線上以時(shí)鐘分離器提取出來的時(shí)鐘速率接收串行數(shù)據(jù)流,每接收完—’個(gè)字符數(shù)據(jù)將其送往接收FIFO。CRC發(fā)生器:它從發(fā)送數(shù)據(jù)流信息中獲得CRC校驗(yàn)碼。CRC校驗(yàn)器:它從接收數(shù)據(jù)流信息中提取cRc校驗(yàn)碼,并與接收到的校驗(yàn)碼相比較??偩€緩沖器:它是CPU與FIFO(發(fā)送和接收)交換數(shù)據(jù)的雙向緩沖器,用來傳送cPu對端口的控制信息和端口返回給cPu的狀態(tài)信息。時(shí)鐘分離器和鎖相環(huán):用來從串行輸入數(shù)據(jù)中提取時(shí)鐘信號以保證接收時(shí)鐘與發(fā)送時(shí)鐘的同頻同相。6、2串行通信接口標(biāo)準(zhǔn)6.2.1RS-232C接口標(biāo)準(zhǔn)美國電子工業(yè)協(xié)會EIA制定的通用標(biāo)準(zhǔn)串行接口1962年公布,1969年修訂1987年1月正式改名為EIA-232D設(shè)計(jì)目的是用于連接調(diào)制解調(diào)器現(xiàn)已成為數(shù)據(jù)終端設(shè)備DTE(例如計(jì)算機(jī))與數(shù)據(jù)通信設(shè)備DCE(例如調(diào)制解調(diào)器)的標(biāo)準(zhǔn)接口可實(shí)現(xiàn)遠(yuǎn)距離通信,也可近距離連接兩臺微機(jī)屬于網(wǎng)絡(luò)層次結(jié)構(gòu)中的最低層:物理層1、RS-232C的電氣特性232C接口采用EIA電平高電平為+3V~+15V低電平為-3V~-15V實(shí)際常用±12V或±15V標(biāo)準(zhǔn)TTL電平高電平:+2.4V~+5V低電平:0V~0.4V相互轉(zhuǎn)換1.機(jī)械特性(1)連接器(Connector)常用二種:
①DB-25型,25腳,只用9個(gè)信號(2個(gè)數(shù)據(jù)線,6個(gè)控制線,1個(gè)地址),如圖所示。1234DB-25型連接器5678911132522201814DCDGNDDSRCTSRTSRXDTXD
②DB-9型9針,9針全用,如下圖。123456789DSRRTSCTSRIDCDRXDTXDDTRGNDDB-9型連接器2、主要引腳的功能TxD2:發(fā)送數(shù)據(jù)串行數(shù)據(jù)的發(fā)送端RxD3:接收數(shù)據(jù)串行數(shù)據(jù)的接收端RTS4:請求發(fā)送當(dāng)數(shù)據(jù)終端設(shè)備準(zhǔn)備好送出數(shù)據(jù)時(shí),就發(fā)出有效的RTS信號,用于通知數(shù)據(jù)通信設(shè)備準(zhǔn)備接收數(shù)據(jù)CTS5:清除發(fā)送(允許發(fā)送)當(dāng)數(shù)據(jù)通信設(shè)備已準(zhǔn)備好接收數(shù)據(jù)終端設(shè)備的傳送數(shù)據(jù)時(shí),發(fā)出CTS有效信號來響應(yīng)RTS信號RTS和CTS是數(shù)據(jù)終端設(shè)備與數(shù)據(jù)通信設(shè)備間一對用于數(shù)據(jù)發(fā)送的聯(lián)絡(luò)信號3、RS-232C標(biāo)準(zhǔn)信號線說明“發(fā)送”和“接收”都是站在DTE立場上DSR6:數(shù)傳機(jī)就緒表明Modem處于可使用的狀態(tài)SG7:信號地為所有的信號提供一個(gè)公共的參考電平DCD8:數(shù)據(jù)載體檢出當(dāng)本地調(diào)制解調(diào)器接收到來自對方的載波信號時(shí),該引腳向數(shù)據(jù)終端設(shè)備提供有效信號DTR20:數(shù)據(jù)終端就緒數(shù)據(jù)終端可使用。RI22:振鈴指示當(dāng)調(diào)制解調(diào)器接收到對方的撥號信號期間,該引腳信號作為電話鈴響的指示、保持有效4、RS-232C總線接口的常用接法微機(jī)利用232C接口直接連接進(jìn)行短距離通信。這種連接不使用調(diào)制解調(diào)器,所以被稱為零調(diào)制解調(diào)器(NullModem)連接微機(jī)利用232C接口連接調(diào)制解調(diào)器,用于實(shí)現(xiàn)通過電話線路的遠(yuǎn)距離通信不使用聯(lián)絡(luò)信號的3線相連方式微機(jī)ATxDRxDGND微機(jī)B為了交換信息,TxD和RxD應(yīng)當(dāng)交叉連接程序中不必使RTS和DTR有效也不應(yīng)檢測CTS和DSR是否有效
RxDTxD1)近距離通信的連接電話線MODEM微機(jī)2345678202223456782022MODEM23456782022數(shù)傳機(jī)就緒DSR數(shù)據(jù)終端就緒DTR發(fā)送數(shù)據(jù)TxD接收數(shù)據(jù)RxD請求發(fā)送RTS允許發(fā)送CTS信號地GND載波檢測DCD振鈴指示RI微機(jī)23456782022連接調(diào)制解調(diào)器2)具有MODEM設(shè)備的遠(yuǎn)距離通信1.特點(diǎn):
(1)采用平衡發(fā)送器和差動接收器,由于是雙線傳輸,大大提高了抗共模干擾的能力。因?yàn)槭莾蓷l傳輸線的電位差決定邏輯電平
AA′-BB′>200mV,表示“1”AA′-BB′<200mV,表示“0”(2)傳輸速率10Mbps(<15m時(shí))
90Kbps(<1200m時(shí))6.2.2、RS-422接口標(biāo)準(zhǔn)2.連接MC3487MC3486BTTLRS-422A電平平衡發(fā)送器差動接收器B′
AA′
6.2.3RS-485接口標(biāo)準(zhǔn)特點(diǎn):(1)兼容RS-422A,擴(kuò)展RS-422A的功能;(2)允許在電路中有多個(gè)發(fā)送器和允許一個(gè)發(fā)送器驅(qū)動多個(gè)接收器,多達(dá)32個(gè)收/發(fā)器;(3)抗干擾能力強(qiáng),傳送距離遠(yuǎn),傳輸速率高。數(shù)傳率:100Kbps<1.2Km不用MODEM9.6Kbps<15Km10Mbps<15m9.4串行通信接口的任務(wù)及組成1、串行通信接口的基本任務(wù)實(shí)現(xiàn)數(shù)據(jù)格式化進(jìn)行串-并轉(zhuǎn)換控制數(shù)據(jù)傳輸速率進(jìn)行錯(cuò)誤檢測進(jìn)行TTL與EIA電平轉(zhuǎn)換提供符合EIA-RS-232C接口標(biāo)準(zhǔn)所要求的信號線2、串行通信接口電路的組成可編程串行接口芯片、波特率發(fā)生器、EIA與TTL電平轉(zhuǎn)換器以及地址譯碼電路組成。6.3可編程串行通信接口芯片8251A8251A的基本性能①可用于同步傳送和異步傳送;異步傳送:也可用5、6、7或8位來代表一個(gè)字符,自動為每個(gè)數(shù)據(jù)增加一個(gè)起始位,并可根據(jù)編程要求為每個(gè)數(shù)據(jù)添加1、1.5或2個(gè)停止位。同步傳送:可用5、6、7或8位來代表字符,可使用內(nèi)部或外部字符同步、單同步或雙同步,自動插入同步字符,并自動控制檢測和處理同步字符??稍O(shè)定奇偶校驗(yàn)方式,也可以不設(shè)定②同步方式波特率為0~64K,異步方式波特率為0~19.2K;③具有全雙工、雙緩沖器發(fā)送和接收器;④具有奇偶、幀錯(cuò)誤和溢出等檢測電路。
8251A的內(nèi)部結(jié)構(gòu)8251A由五個(gè)主要部分組成:接收器、發(fā)送器、數(shù)據(jù)總線緩沖器、調(diào)制控制部件和讀/寫控制部件組成。在8251A內(nèi)部由內(nèi)部數(shù)據(jù)總線實(shí)現(xiàn)這些部件之間的通信。接收器(s->p)接收緩沖器接收控制發(fā)送器(p->s)發(fā)送緩沖器發(fā)送控制TxDTxRDYTxETxCTxRDYSYNDETRxCRxD調(diào)制控制讀/寫控制CLKRESETC/DWRRDCSDTRDSRRTSCTS發(fā)送數(shù)據(jù)/命令緩沖器接收數(shù)據(jù)緩沖器狀態(tài)緩沖器⑴接收器接收器的功能是接收RxD引腳上送來的串行數(shù)據(jù),并按規(guī)定的格式把它轉(zhuǎn)換成為并行數(shù)據(jù),存放在數(shù)據(jù)總線緩沖器中。⑵發(fā)送器發(fā)送器接收CPU送來的并行數(shù)據(jù),經(jīng)加工處理后由TxD引腳發(fā)出。⑶數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器是三態(tài)雙向8位緩沖器,它使8251A與系統(tǒng)數(shù)據(jù)總線連接起來。它含有數(shù)據(jù)緩沖器和命令緩沖器。CPU可以對它讀/寫數(shù)據(jù),也可以寫入命令字。另外,執(zhí)行命令所產(chǎn)生的各種信息也是從數(shù)據(jù)總線緩沖器讀出。⑷調(diào)制控制部件產(chǎn)生或接收與MODEM的聯(lián)絡(luò)信號,實(shí)現(xiàn)對MODEM的控制。⑸讀/寫控制部件讀/寫控制邏輯對CPU輸出的控制信號進(jìn)行譯碼以實(shí)現(xiàn)讀/寫功能。6、3、28251A的外部引腳8251A的接口信號可分為4組:與CPU的接口信號、狀態(tài)信號線、時(shí)鐘信號線和與外設(shè)(或調(diào)制解調(diào)器)接口的信號線。
RxRDYRDC/DCSWRTxCD7D6D5D4GNDRxD14131211109876543212715161718192021222324252628D3D2D1CLKD0VCCRxCDTRRESETRTSDSRTxETxDCTSSYDENT/BDTxRDY⑴與CPU接口信號①D7~D0②CS③C/D:控制/數(shù)據(jù)信號。為高電平,CPU對芯片寫入控制字或讀出狀態(tài)字;為低電平,對芯片讀寫的是數(shù)據(jù)。④WR⑤RD⑥RESET表
6-48251A讀/寫操作C/D功
能實(shí)驗(yàn)板0001CPU從8251A讀數(shù)據(jù)308H0101CPU從8251A讀狀態(tài)309H0010CPU寫數(shù)據(jù)到8251A308H0110CPU寫命令到8251A309H1×××總線浮空(無操作)——CSRDWR⑵狀態(tài)信號①TxRDY(TransmitterReady):發(fā)送器準(zhǔn)備好,高電平有效。如果該信號有效,就表示發(fā)送緩沖器已空,通知CPU可以向芯片送入新的數(shù)據(jù)。②TxE(TransmitterEmpty):發(fā)送緩沖器空,高電平有效。不管發(fā)送時(shí)是處于等待狀態(tài)還是發(fā)送狀態(tài),只要發(fā)送緩沖器中沒有再要發(fā)送的字符,這個(gè)信號就為高電平。當(dāng)從CPU送入一個(gè)數(shù)據(jù)時(shí),該信號被復(fù)位。③RxRDY(ReceiverReady):接收器準(zhǔn)備好,高電平有效。如果RxRDY為高,表示接收緩沖器中已經(jīng)有組裝好了的一個(gè)數(shù)據(jù)字符,通知CPU讀取數(shù)據(jù)。④SYNDET(SynchronousDetection)/BD(BreakDetection):同步檢測信號,雙功能引腳。⑶時(shí)鐘信號①TxC(TransmitterClock):發(fā)送器時(shí)鐘,由外部提供,用來控制8251A的發(fā)送數(shù)據(jù)的速率。在異步方式下,TxC的頻率可以是波特率的1、16或64倍;在同步方式下,TxC的頻率與數(shù)據(jù)速率相同。②RxC(ReceiverClock):接收器時(shí)鐘,由外部提供,用來控制8251A的接收數(shù)據(jù)的速率。其頻率的選擇與TxC相同。實(shí)際應(yīng)用時(shí),TxC和RxC往往連在一起,使用同一個(gè)時(shí)鐘源。③CLK:工作時(shí)鐘,由外部時(shí)鐘源提供,為芯片內(nèi)部電路提供定時(shí),并非是發(fā)送或接收數(shù)據(jù)的時(shí)鐘。⑷與外設(shè)的接口信號①TxD:發(fā)送數(shù)據(jù)線。②RxD:接收數(shù)據(jù)線。③DTR(DataTerminalReady):數(shù)據(jù)終端準(zhǔn)備好,一個(gè)用于連接調(diào)制解調(diào)器的控制信號,輸出,低電平有效。④RTS(RequestTosend):請求發(fā)送,一個(gè)用于連接調(diào)制解調(diào)器的控制信號,輸出,低電平有效。用于通知Modem,CPU已準(zhǔn)備好,可由命令字設(shè)置。⑤DSR(DataSetReady):數(shù)據(jù)設(shè)備準(zhǔn)備好,一個(gè)用于連接調(diào)制解調(diào)器的控制信號,輸入,低電平有效。⑥CTS(ClearToSend):允許發(fā)送,一個(gè)用于連接調(diào)制解調(diào)器的控制信號,輸入,低電平有效。這是Modem對8251A的信號的響應(yīng),當(dāng)其有效時(shí),8251A方可發(fā)送數(shù)據(jù)。6.3.38251A的控制字和狀態(tài)字1控制字寄存器控制字寄存器分為方式控制字和命令控制字
1)方式控制字寄存器:用來指定8251A的通信工作方式以及在該方式下的數(shù)據(jù)格式,即指定8251A工作在異步方式還是同步方式,并按照其通信方式約定幀數(shù)據(jù)格式。S1S0EPPENL1L0B1B000同步方式01異步方式110異步方式1611異步方式64字符碼位數(shù)00=5位01=6位10=7位11=8位奇偶校驗(yàn)X0=無校驗(yàn)10=奇校驗(yàn)11=偶校驗(yàn)同步方式異步方式00雙同步,內(nèi)同步01雙同步,外同步10單同步,內(nèi)同步11單同步,外同步00不使用011位停止位101.5位…..112位停止位例1:設(shè)在異步通信中,數(shù)據(jù)格式采用8個(gè)數(shù)據(jù)位,2個(gè)停止位,奇校驗(yàn),波特率因子是16。方式選擇控制字為11011110B=DEH,把該命令寫入控制口,則程序段為:MOVDX,309H ;8251A控制口MOVAL,0DEH;異步方式選擇控制字OUTDX,AL例2:在同步通信中,如果幀數(shù)據(jù)格式為:字符長度8位,兩個(gè)同步字符,內(nèi)同步,偶校驗(yàn).方式選擇控制字為00111100B=3CH。把該命令寫入控制口,則程序段為:
MOVDX,309H ;8251A控制口
MOVAL,3CH ;同步方式選擇控制字
OUTDX,AL2)工作命令控制字工作命令控制字又稱為工作命令字,用來指定8251A進(jìn)行某種操作(如發(fā)送、接收、內(nèi)部復(fù)位和同步字符檢測等)或處于某種工作狀態(tài),以便接收或發(fā)送數(shù)據(jù)。EHIRRTSERSBRKRxEDTRTxEN發(fā)送允許0=禁止1=允許數(shù)據(jù)終端就緒1=就緒0=無效允許接收0=禁止1=允許送間斷字符1=輸出連續(xù)空號0=正常錯(cuò)誤標(biāo)志復(fù)位1=FE(幀格式錯(cuò))、OE(溢出錯(cuò))、PE(奇偶校驗(yàn)錯(cuò))的出錯(cuò)標(biāo)志復(fù)位0=不內(nèi)部復(fù)位請求發(fā)送1=有效0=無效內(nèi)部復(fù)位1=復(fù)位搜索同步字符1=搜索0=不搜索例3:如果要使8251A進(jìn)行內(nèi)部復(fù)位MOVDX,309H ;8251A控制口MOVAL,01000000B ;置D6=1OUTDX,AL例4:在異步通信時(shí),設(shè)置8251A允許接收,同時(shí)允許發(fā)送MOVDX,309H ;8251A控制口MOVAL,00000101B ;置D2=1,置D0=1OUTDX,AL2、狀態(tài)字D7D6D5D4D3D2D1D0DSRSYNDETFEOEPETxERxRDYTxRDY數(shù)據(jù)設(shè)備就緒同步檢測幀格式錯(cuò)溢出錯(cuò)校驗(yàn)錯(cuò)發(fā)送器空接受準(zhǔn)備好發(fā)送準(zhǔn)備好例5:異步串行通信,采用查詢傳送方式,發(fā)送一個(gè)字節(jié),然后再接收一個(gè)字節(jié)
MOVDX,309H ;8251A控制口L1:
INAL,DX ;讀狀態(tài)字
ANDAL,01H ;檢查發(fā)送器是否就緒
JZL1 ;未就緒,轉(zhuǎn)L1等待
MOVAL,[SI] ;取發(fā)送字節(jié)
DECDX ;指向8251A數(shù)據(jù)口
OUTDX,AL INCDX ;指向8251A控制口L2:
INAL,DX ;讀狀態(tài)字
ANDAL,02H ;檢查接收器是否就緒
JZL2 ;未就緒,轉(zhuǎn)L2等待
DECDX ;指向8251A數(shù)據(jù)口
INAL,DX ;讀取接收的字節(jié)
MOV[DI],AL在接收程序中,若要檢查出錯(cuò)信息MOVDX,309H ;8251A控制口
INAL,DX ;讀狀態(tài)字TESTAL,38H ;檢查D5D4D3三個(gè)位JNZERROR ;如果其中有一位為1,則出錯(cuò),轉(zhuǎn)錯(cuò)誤處理程序例6:8251A的方式選擇控制字、工作命令字和狀態(tài)字這三者之間的關(guān)系方式控制字只是約定了通信雙方實(shí)行的通信方式(同步/異步)及其數(shù)據(jù)格式(數(shù)據(jù)位和停止位的長度,校驗(yàn)特性,同步字符特性等)、傳送速率(波特率因子)等參數(shù),但并沒有規(guī)定數(shù)據(jù)傳送的方向是發(fā)送還是接收工作命令字來控制其發(fā)送與接受。何時(shí)才能發(fā)送/接收?這就取決于8251A的狀態(tài)字。只有當(dāng)8251A進(jìn)入發(fā)送/接收準(zhǔn)備好的狀態(tài),才能真正開始數(shù)據(jù)的傳送。6.3.48251A的初始化流程①芯片復(fù)位以后,第一次向奇地址端口寫入的字節(jié)作為方式控制字進(jìn)入方式寄存器。②如果方式控制字中規(guī)定了8251A工作在同步模式,那么,CPU接著往奇地址端口寫入的1個(gè)或2個(gè)字節(jié)就是同步字符,同步字符被送往同步字符寄存器。如果是雙同步方式,則會按先后分別寫入第一個(gè)同步字符寄存器和第二個(gè)同步字符寄存器。③在這之后,只要不是復(fù)位命令,不管是同步方式還是異步方式,由CPU向奇地址端口寫入的字節(jié)將作為工作命令字送到控制寄存器,而向偶地址寫入的字節(jié)將作為數(shù)據(jù)送到數(shù)據(jù)輸出緩沖寄存器。
例6-1異步方式下初始化程序8251A端口地址為300H~301H,
1)通信字符采用8位二進(jìn)制數(shù)表示,帶1個(gè)偶校驗(yàn)位,1個(gè)停止位。設(shè)波特率因子為64。則方式選擇控制字為01111111B=7FH。
2)允許發(fā)送和接收,使錯(cuò)誤位全部復(fù)位
工作命令字為00010101B=15H。3)查詢8251狀態(tài)字,當(dāng)接收準(zhǔn)備就緒時(shí),則從8251輸入數(shù)據(jù),否則等待MOVDX,301H ;8251A控制口MOVAL,7FH ;設(shè)置方式控制字:異步方式,波特率因子為64;8個(gè)數(shù)據(jù)位;OUTDX,AL ;偶校驗(yàn);1個(gè)停止位。MOVAL,15H ;設(shè)置工作命令字:使發(fā)送啟動;接收啟動;出錯(cuò)標(biāo)志復(fù)位;OUTDX,AL WAIT:INAL,DX;讀入狀態(tài)字
ANDAL,02H;接收準(zhǔn)備好?
JZWAIT;接收未準(zhǔn)備好則等待
MOVDX,300HINAL,DX;接收已準(zhǔn)備好則讀入數(shù)據(jù)6、3、58251A應(yīng)用實(shí)例試用8251A為8086CPU與CRT終端設(shè)計(jì)一個(gè)串行通信接口。要求異步傳送方式,數(shù)據(jù)格式為1位停止位,8位數(shù)據(jù)位,奇校驗(yàn);波特率因子為16CPU用查詢方式將顯示緩沖區(qū)(首地址為2000H)的字符”GOOD“送CRT顯示。1)硬件連接2)軟件設(shè)計(jì)DATASEGMENTORG2000HDISBUFDB47H,4FH,44H,0DH,OAH;COUNTDB$-DISBUFDATAENDS………MAINMOVDX,301HMOVAL,01011110BOUTDX,ALMOVAL,00110011BOUTDX,ALMOVBX,OFFSETDISBUFMOVCXCOUNTWAIT:MOVDX,301HINAL,DXTESTAL,80HJZWAITMOVDX,300HMOVAL,[BX]OUTDX,ALINCBXDECCXJNZWAITHLT3.兩臺微機(jī)之間進(jìn)行雙機(jī)串行通信的舉例例【8-10】通過8251A實(shí)現(xiàn)兩臺微機(jī)相互通信的硬件連接圖如圖8-25所示。利用兩片8251A通過標(biāo)準(zhǔn)串行接口RS-232C實(shí)現(xiàn)兩臺8086微機(jī)之間的異步串行通信。設(shè)兩臺微機(jī)中8251A的命令端口地址為均3F9H,數(shù)據(jù)端口地址均為3F8H。
分析:設(shè)系統(tǒng)采用查詢方式控制串行通信的過程。初始化程序由兩部分組成:①將一方定義為發(fā)送方,發(fā)送方CPU查詢到TxRDY有效時(shí),則CPU向8251A并行輸出一個(gè)待發(fā)送的字節(jié)數(shù)據(jù);②將對方定義為接收方,接收方CPU查詢到RxRDY有效時(shí),則從8251A輸入一個(gè)已接收到的字節(jié)數(shù)據(jù),直到全部數(shù)據(jù)傳送完畢為止。START:MOV
DX,3F9HMOV
AL,7FH
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球一次性使用體外血液循環(huán)管路行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025-2030全球易碎紙不干膠標(biāo)簽行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025年全球及中國教育用交互式LED顯示屏行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 養(yǎng)殖場家禽合作合同書
- 醫(yī)療器械銷售勞動合同書
- 石膏買賣合同書樣本年
- 企業(yè)之間借款合同范本
- 維修承包合同
- 2025股份制辦廠合同范本
- 泵車租賃合同范本
- (八省聯(lián)考)云南省2025年普通高校招生適應(yīng)性測試 物理試卷(含答案解析)
- 春節(jié)節(jié)后安全教育培訓(xùn)
- 2025年新高考數(shù)學(xué)一輪復(fù)習(xí)第5章重難點(diǎn)突破02向量中的隱圓問題(五大題型)(學(xué)生版+解析)
- 印刷品質(zhì)量保證協(xié)議書
- 2023年浙江省公務(wù)員錄用考試《行測》題(A類)
- CQI-23模塑系統(tǒng)評估審核表-中英文
- 二年級數(shù)學(xué)上冊100道口算題大全(每日一練共12份)
- 南方日報(bào)圖片管理系統(tǒng)開發(fā)項(xiàng)目進(jìn)度管理研究任務(wù)書
- 《建筑工程設(shè)計(jì)文件編制深度規(guī)定》(2022年版)
- 我國大型成套設(shè)備出口現(xiàn)狀、發(fā)展前景及政策支持研究
- 河南省鄭州市2023-2024學(xué)年高一下學(xué)期6月期末數(shù)學(xué)試題(無答案)
評論
0/150
提交評論