串行輸入輸出有關(guān)知識(shí).ppt
《串行輸入輸出有關(guān)知識(shí).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《串行輸入輸出有關(guān)知識(shí).ppt(74頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第八章串行輸入/輸出接口,概述串行通信的實(shí)現(xiàn)串行通信的基本術(shù)語可編程串行通訊接口芯片8251A簡(jiǎn)介串行通信RS-232CUSB總線簡(jiǎn)介,8.1概述,一、串行數(shù)據(jù)計(jì)算機(jī)與外部信息交換方式有兩種,一種是并行通信,另一種是串行通信。并行通信時(shí),數(shù)據(jù)各位同時(shí)傳送。而串行通信時(shí),數(shù)據(jù)和控制信息是一位接一位串行地傳送下去。這樣,雖然速度會(huì)慢一些,但傳送距離比并行通信長(zhǎng),硬件電路也相應(yīng)簡(jiǎn)單些。,現(xiàn)在的臺(tái)式PC機(jī)一般至少有兩個(gè)RS-232串行口COM1和COM2,通常COM1使用的是9針D形連接器,而COM2使用的是老式的DB25針連接器。,,二、串行通信的實(shí)現(xiàn),1、并行通信和串行通信的特點(diǎn):串行通信是逐位傳送數(shù)據(jù),所以一個(gè)多位數(shù)據(jù)需要多次傳送。比如一個(gè)8位的字節(jié)型數(shù)據(jù)至少需要8次傳送。它有如下特點(diǎn):速度較慢;引線少;距離長(zhǎng)。,,2、串行通信的硬件條件在硬件上,串行通信系統(tǒng)的核心部件是移位寄存器,其中在發(fā)端要有一個(gè)并入串出移位寄存器,在收端要有一個(gè)串入并出移位寄存器。,,,,001100000,000110000,000010001,D7,D0,3、串行通信的同步為了可靠的串行通信,同步信號(hào)起到至關(guān)重要的作用。在理想情況下,同步信號(hào)應(yīng)該在數(shù)據(jù)信號(hào)線上出現(xiàn)有效數(shù)據(jù)期間的中心點(diǎn)有效,因?yàn)檫@時(shí)數(shù)據(jù)線上的數(shù)據(jù)是最穩(wěn)定的。,,,但在典型的串行通信系統(tǒng)中,是不存在同步信號(hào)線的!如何實(shí)現(xiàn)串行通信的中數(shù)據(jù)傳送的同步呢?系統(tǒng)從軟件和硬件兩方面采取了如下三個(gè)措施:,,(1)設(shè)置波特率波特率是指單位時(shí)間內(nèi)傳送的位數(shù),單位是比特/秒。(2)設(shè)置數(shù)據(jù)的傳送格式,一般地串行通信在傳送數(shù)據(jù)時(shí),并不是單純地傳送數(shù)據(jù)位信息。為了使數(shù)據(jù)傳送可靠,還設(shè)定了其他一些輔助位。,,,(3)設(shè)置波特率因子在異步通信方式進(jìn)行通信時(shí),發(fā)送端需要用時(shí)鐘來決定每1位對(duì)應(yīng)的時(shí)間長(zhǎng)度,接收端也需要用一個(gè)時(shí)鐘來測(cè)定每1位的時(shí)間長(zhǎng)度,前一個(gè)時(shí)鐘叫發(fā)送時(shí)鐘,后一個(gè)時(shí)鐘叫接收時(shí)鐘。這兩個(gè)時(shí)鐘的頻率可以是波特率的數(shù)倍,一般取16倍、32倍或64倍。這個(gè)倍數(shù)就稱為波特率因子。,,,,,波特率,波特率因子,,采樣輸入信號(hào),,,,,8.2串行通信的基本技術(shù),一、串行通信方式1、異步通訊異步通信是指以字符為單位傳送數(shù)據(jù),用起始位和停止位標(biāo)識(shí)每個(gè)字符的開始和結(jié)束字符,兩次傳送時(shí)間隔不固定。2、同步通信異步通訊為了可靠地傳送數(shù)據(jù),在每次傳送數(shù)據(jù)的同時(shí),附加了一些標(biāo)志位。在大量數(shù)據(jù)傳送時(shí),為了提高速度,就去掉這些標(biāo)志,這就是同步通訊。采用同步傳送,在數(shù)據(jù)塊開始處要用同步字符來指示,并在發(fā)送端和接收端之間要用時(shí)鐘來實(shí)現(xiàn)同步。,,二、串行通訊中的數(shù)據(jù)傳送方向1、半雙工每次只能有一個(gè)站發(fā)送。2、完全雙工兩個(gè)站都能同時(shí)發(fā)送稱完全雙工。,,三、異步接收/發(fā)送器(UART)串行接口的基本結(jié)構(gòu)主要是異步接收/發(fā)送器(UART),它不僅包括并行數(shù)據(jù)和串行數(shù)據(jù)之間的相互轉(zhuǎn)換,還有檢測(cè)串行通信在傳送過程中可能發(fā)生錯(cuò)誤的邏輯部件。,,a.奇偶錯(cuò)誤如上所述,在接收時(shí),UART檢查接收到的每一個(gè)字符的“1”的個(gè)數(shù)這個(gè)標(biāo)志,發(fā)出奇偶校驗(yàn)出錯(cuò)信息。,b.幀錯(cuò)誤若接收到的字符格式不符合規(guī)定(如缺少停止位等),則置位該標(biāo)志,發(fā)出幀出錯(cuò)信息。,c.丟失(溢出)錯(cuò)誤UART是一種雙緩沖器結(jié)構(gòu)。例如,在接收時(shí),接收的數(shù)據(jù)先由移位寄存器移位,把串行數(shù)據(jù)變成并行數(shù)據(jù),然后送到接收數(shù)據(jù)寄存器,由輸入指令將數(shù)據(jù)送到CPU中。由于數(shù)據(jù)送到接收數(shù)據(jù)寄存器,所以即使CPU還沒取走這個(gè)數(shù)據(jù),UART也可以接收另一個(gè)新的字符。但若UABT接收到第二個(gè)字符的停止位,且要把第二個(gè)字符傳送到接收數(shù)據(jù)寄存器時(shí),CPU還沒取走上一個(gè)數(shù)據(jù),于是第一個(gè)數(shù)據(jù)會(huì)被丟失。如果UART出現(xiàn)這種情況就置位丟失(溢出)標(biāo)志,發(fā)出丟失出錯(cuò)信息。,,,,,,,,,,四、信號(hào)的調(diào)制和解調(diào)由于模擬信號(hào)的傳輸比數(shù)字信號(hào)傳輸更為有效,因而可將數(shù)字信號(hào)調(diào)制成模擬信號(hào)進(jìn)行傳輸,用解調(diào)器把接收的模擬信號(hào)再轉(zhuǎn)換成數(shù)字信號(hào)。,,8.3可編程串行通訊接口芯片8251A簡(jiǎn)介,8251A芯片是INTEL公司生產(chǎn)的大規(guī)模集成電路芯片,是與INTEL系列CPU兼容的可編程的串行通訊接口。雖然8251A功能較強(qiáng),但它需要外部時(shí)鐘電路。因此采用8251A作為接口電路時(shí)需要比較復(fù)雜的外圍電路。而目前流行的單片機(jī)如MCS51系列,CPU內(nèi)部就集成了串行接口部件及定時(shí)器/計(jì)數(shù)器,幾乎不需要外圍輔助電路,使用起來非常簡(jiǎn)單,性能價(jià)格比很高,因此現(xiàn)在越來越多的數(shù)字化儀器儀表電路中不再采用8251A而是使用單片機(jī)作為串行通信接口了。,一、主要基本性能1.可用于同步和異步傳送2.波特率,DC-19.2K(異步);DC-64K(同步)。3.完全雙工,雙緩沖發(fā)送和接收4.與8080/8085CPU完全兼容,二、內(nèi)部結(jié)構(gòu),,,發(fā)送和接收電路,調(diào)制解調(diào)控制電路,,總線接口部分,,,,,,1.發(fā)送器a.數(shù)據(jù)輸出線TxDb.發(fā)送時(shí)鐘TxCc.發(fā)送器準(zhǔn)備好TxRDYd.發(fā)送器空信號(hào)TxEMPY過程TxRDY有效?CPU寫數(shù)據(jù)到8251?8251發(fā)數(shù)據(jù)?發(fā)送完畢,TxEMPY有效2.接收器a.數(shù)據(jù)輸入線RxDb.接收時(shí)鐘RxCc.接收器準(zhǔn)備好RxRDY過程8251接數(shù)據(jù)?RxRDY有效?CPU讀8251,,,,,,,,3.調(diào)制解調(diào)控制電路/DTR——數(shù)據(jù)終端準(zhǔn)備好信號(hào)。是由825IA送往外設(shè)的,表示CPU當(dāng)前已經(jīng)準(zhǔn)備就緒。/DSR——數(shù)據(jù)設(shè)備準(zhǔn)備好。是外設(shè)送往825lA的,表示當(dāng)前外設(shè)已經(jīng)準(zhǔn)備好數(shù)據(jù)。,,,8251,Modem,,/DTR,,/DSR,,,,,,,,,,,,,,,/RTS——請(qǐng)求發(fā)送信號(hào)。是8251A送往外設(shè)的,表示CPU已經(jīng)準(zhǔn)備好發(fā)送。/CTS——清除請(qǐng)求發(fā)送信號(hào)。由外設(shè)送往825lA的,當(dāng)為低電平時(shí),允許825lA執(zhí)行發(fā)送操作。,,,,8251,Modem,,/RTS,,/CTS,,,,,,,,,,,,,,,4.讀/寫控制電路,,,,三、8251編程,1、方式選擇控制字,,三、8251編程,1、模式寄存器的格式(方式選擇控制字)時(shí)鐘頻率=波特率因子波特率,,RxCTxC,,,,,OUTCLKGATE,,,+5v,1MHz,8251,8253,如果波特率為1200,波特率因子為16,問計(jì)數(shù)初值?,120016,,,2.控制寄存器的格式(操作命令控制字),,,,,,,接收,發(fā)射,3.狀態(tài)寄存器的格式(狀態(tài)控制字(讀)),,四、舉例,例:編寫8251異步模式下的接收和發(fā)送程序,設(shè)端口地址:90H,92H,波特率因子16,1起始位,1停止位,無奇偶校驗(yàn),每字符8位。,RxCTxC,,,,,OUTCLKGATE,,,+5v,1.8432M,8251,8253,解:1、8253工作方式及計(jì)數(shù)初值工作方式mode38253輸出頻率:fout=9600*16=153600=153.6Kfclk=1MN=1000/153.6=~6.51(不能用!)fclk=1.8432MN=12,2、8251工作方式方式選擇控制字,,01001110=4EH,,,,,操作命令控制字,,00110111=37H,,3、程序8251初始化設(shè)置:a、先對(duì)825lA軟件復(fù)位,一般采用先送3個(gè)0,再送1個(gè)40H的方法,這也是8251A的編程約定,40H可以看成是使8251A執(zhí)行復(fù)位操作的實(shí)際代碼。b、對(duì)8251A進(jìn)行工作方式及操作命令設(shè)置,……MOVAL,00H;復(fù)位8251OUT92H,ALCALLDELAYOUT92H,ALCALLDELAYOUT92H,ALCALLDELAYMOVAL,40HOUT92H,ALCALLDELAY;等待8251復(fù)位MOVAL,4EH;置工作方式OUT92H,ALMOVAL,37H;操作命令OUT92H,AL……,發(fā)送:SENDDATPROC;DL:要發(fā)送的數(shù)據(jù)CHKTXR:INAL,92H;輸入狀態(tài)字ANDAL,01H;查TXRDYJZCHKTXRMOVAL,DLOUT90H,AL;發(fā)送RETSENDDATENDP接收:RECIDATPROC;AL:接收的數(shù)據(jù)CHKRXD:INAL,92H;輸入狀態(tài)字ANDAL02H;查RXRDY?JZCHKRXDIN90H,AL;發(fā)送RETRECIDATENDP,五、8250和16550速度8250:50~960016550:115200,RxCTxC,,,,,OUTCLKGATE,,,+5v,1.8432M,8251,8253,,,,,,,,,,,,,A0A1A2,,;允許訪問除數(shù)寄存器MOVDX,MY16550_3MOVAL,80HOUTDX,ALCALLDALLY;波特率9600;波特率=1.8432/(波特率因子16)MOVDX,MY16550_0;波特率低8位MOVAL,0CHOUTDX,ALCALLDALLYMOVDX,MY16550_1;波特率高8位MOVAL,00HOUTDX,ALCALLDALLY,;工作方式選擇MOVDX,MY16550_3MOVAL,1BH;偶校驗(yàn),1位停止位,8位數(shù)據(jù)OUTDX,ALCALLDALLY;modem設(shè)置MOVDX,MY16550_4;MCRMOVAL,03H;RTS,DTR有效OUTDX,ALCALLDALLY;中斷設(shè)置MOVDX,MY16550_1;中斷允許寄存器MOVAL,00H;中斷屏蔽OUTDX,ALCALLDALLY,00011011,;發(fā)送TR:MOVDX,MY16550_5;發(fā)送保持寄存器檢查L(zhǎng)SRINAL,DXANDAL,20HJZTRMOVDX,MY16550_0MOVAL,TXD_data;發(fā)送數(shù)據(jù)OUTDX,ALRET;接收REV:MOVDX,MY16550_5;查詢接收INAL,DXANDAL,01HJZREVMOVDX,MY16550_0;接收數(shù)據(jù)寄存器INAL,DXRET,8.4串行通信接口RS-232C,一、RS-232C電器特性及接口信號(hào)1.電氣特性在數(shù)據(jù)線TXD和RXD上:邏輯1=-3V~-15V邏輯0=+3V~+15V在控制線和狀態(tài)線RTS、CTS、DSR、DTR和DCD上:信號(hào)有效=+3V~+15V信號(hào)無效=-3V~-15V,2.RS-232C與TTL轉(zhuǎn)換RS-232C是用正負(fù)電壓來表示邏輯狀態(tài),與TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠使計(jì)算機(jī)接口與終端的TTL器件連接,必須在RS-232C與TTL電路之間進(jìn)行電平和邏輯關(guān)系變換。,,MAX232,3.RS-232C的接口信號(hào)可以用電纜線直接連接標(biāo)準(zhǔn)RS232端口,但通信距離較近(<12m)。若距離較遠(yuǎn),可附加調(diào)制解調(diào)器(MODEM)。RS-232C規(guī)標(biāo)準(zhǔn)接口有25條線,最常用的信號(hào)線有9根。,二、RS-232C應(yīng)用舉例1.RS-232C串口通信接線方法(三線制),,2.BIOS串行通信口功能IBMPC及其兼容機(jī)提供了比較靈活的關(guān)于串行口的BIOS中斷調(diào)用方法,即通過INT14H調(diào)用ROMBIOS串行通信口例行程序。該例行程序包括將串行口初始化為指定的字節(jié)結(jié)構(gòu)和傳輸速率,檢查控制器的狀態(tài),讀寫字符等功能,3.舉例設(shè)通信雙方有一臺(tái)計(jì)算機(jī)為PC機(jī),使用COM1端口。在串行通信中,必須首先設(shè)定通信雙方所使用字符串的數(shù)據(jù)結(jié)構(gòu),才能進(jìn)行軟件編程。這里我們?cè)O(shè)數(shù)據(jù)在接收和發(fā)送的字符串中,序號(hào)為0的字節(jié)為數(shù)據(jù)長(zhǎng)度,其后的字節(jié)為所接收的數(shù)據(jù)。,接收數(shù)據(jù)子程序:receiveprocfar;這是接收數(shù)據(jù)子程序,;出口AL,AHrec_check:movah,3;讀通訊口狀態(tài)字movdx,0int14htestah,20H;測(cè)試數(shù)據(jù)準(zhǔn)備好位jzrec_check;數(shù)據(jù)未準(zhǔn)備好,再讀狀態(tài)字movah,2;讀通信端口數(shù)據(jù)movdx,0int14hretreceiveendp,發(fā)送數(shù)據(jù)子程序:sendprocfar;這是發(fā)送數(shù)據(jù)子程序,;輸入?yún)?shù):AL,輸出參數(shù):AL,AHpushaxsend_check:movah,3;讀通訊口狀態(tài)字movdx,0int14htestah,20h;測(cè)試“發(fā)送保存寄存器空”位jzsend_check;發(fā)送保存寄存器滿,再讀狀態(tài)字popaxmovah,2;發(fā)送數(shù)據(jù)movdx,0int14hretsendendp,8.5USB總線簡(jiǎn)介,一、USB的定義USB是UniversalSerialBus的縮寫,中文意思就是“通用串行總線”,是連接有USB接口的計(jì)算機(jī)外圍設(shè)備到計(jì)算機(jī)的一種計(jì)算機(jī)外部總線結(jié)構(gòu),,二、USB的開發(fā)背景制定了USB的規(guī)范:1.連接PC與電話。2.Plug-and-Play(即插即用)。3.端口擴(kuò)展。USB提供雙向低成本低速到中速(USB2.0可達(dá)480Mb/s)的通用外設(shè)總線適用于連接各種各樣的外設(shè)并且易于擴(kuò)展。,三、USB的變革至目前為止,USB共經(jīng)歷以下幾次重大變革:0.7版本于1994年11月11日發(fā)布。是USB的最早版本。1.0版本于1995年11月13日制定發(fā)布了,規(guī)定USB具有2種傳輸速度Low-speed1.5Mb/s,Full-speed12Mb/s。1.1版本于1998年9月23日制定了1.1規(guī)格版本,速度不變。2.0(草案)版本于1999年10月5日發(fā)布。制定了High-speed的概念,規(guī)格。2.0版本于2000年4月27日發(fā)布。,四.USB系統(tǒng)拓?fù)浣Y(jié)構(gòu),,五.USB的特點(diǎn)1.USB為所有的USB外設(shè)提供了單一的、易于操作的標(biāo)準(zhǔn)的連接類型。2.USB整個(gè)的系統(tǒng)只有一個(gè)端口和一個(gè)中;3.USB支持熱插拔(hotplug);4.USB支持PNP;5.USB在設(shè)備供電方面提供了靈活性;6.USB提供全速12Mbps的速率和低速1.5Mbps的速率來適應(yīng)各種不同類型的外設(shè);USB2.0還支持480Mbps的高速傳輸速率;,7.USB2.0的High-speed模式支持音頻和視頻設(shè)備,可以保證其固定帶寬;8.為了適應(yīng)各種不同類型外圍設(shè)備的要求USB提供了四種不同的數(shù)據(jù)傳輸類型:控制傳輸,Bulk數(shù)據(jù)傳輸,中斷數(shù)據(jù)傳輸,同步數(shù)據(jù)傳輸。同步數(shù)據(jù)傳輸可為音頻和視頻等實(shí)時(shí)設(shè)備的實(shí)時(shí)數(shù)據(jù)傳輸提供固定帶寬。9.USB的端口具有很靈活的擴(kuò)展性。一個(gè)USB端口串接上一個(gè)USBHub就可以擴(kuò)展為多個(gè)USB端口。規(guī)范中說,USB可以擴(kuò)展到127個(gè)外設(shè)端口。,六、USB工作原理,1、NRZI編碼,,2、分組傳送USB技術(shù)和IP技術(shù)一樣,都是基于分組傳送方式的。對(duì)USB總線來講,當(dāng)要傳送一個(gè)文件時(shí),程序按照USB協(xié)議,首先把數(shù)據(jù)分成若干塊,然后在每塊數(shù)據(jù)前面添上同步信號(hào)、包標(biāo)識(shí),后面添上CRC校驗(yàn),就形成了USB封包。一個(gè)文件可能可能有多個(gè)封包。全速USB總線把1毫秒作為一個(gè)時(shí)間幀,總線在一個(gè)幀內(nèi)依次傳送不同文件的封包。因此從宏觀上,就仿佛總線同時(shí)對(duì)不同的USB外設(shè)進(jìn)行數(shù)據(jù)傳送。,3、USB封包根據(jù)信息包所實(shí)現(xiàn)的功能可分為3種類型:令牌包、數(shù)據(jù)包和握手包。令牌包定義了數(shù)據(jù)傳送的類型。比如圖所示。,七、USB傳輸方式,1、USB的四種傳輸方式(1)同步(isochronous)方式傳輸同步傳輸提供了確定的帶寬和間隔時(shí)間,以固定的傳輸速率,連續(xù)不斷地在主機(jī)與USB設(shè)備之間傳輸數(shù)據(jù),在傳送數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),USB并不處理這些錯(cuò)誤,而是繼續(xù)傳送新的數(shù)據(jù),它被用于時(shí)間嚴(yán)格并具有較強(qiáng)容錯(cuò)性的流數(shù)據(jù)傳輸或者用于要求恒定的數(shù)據(jù)傳輸率的即時(shí)應(yīng)用中。,(2)中斷傳輸方式(Interrupt)該方式傳送的數(shù)據(jù)量很小,但這些數(shù)據(jù)需要及時(shí)處理,以達(dá)到實(shí)時(shí)效果。此方式主要用于定時(shí)查詢?cè)O(shè)備是否有中斷數(shù)據(jù)要傳輸。(3)控制傳輸方式(Control)控制傳輸是雙向傳輸,數(shù)據(jù)量通常較小,用來處理主機(jī)到USB設(shè)備的數(shù)據(jù)傳輸。包括設(shè)備控制指令、設(shè)備狀態(tài)查詢及確認(rèn)命令。(4)批(Bulk)傳輸方式主要應(yīng)用在數(shù)據(jù)大量傳輸和接受數(shù)據(jù)上,同時(shí)又沒有帶寬和間隔時(shí)間要求的情況下,要求保證傳輸正確無誤的數(shù)據(jù)。,2、USB設(shè)備類型,,八、USB設(shè)備列舉,在USB規(guī)范中有一個(gè)非常重要的“動(dòng)作”或“過程”。這個(gè)動(dòng)作將會(huì)讓PC機(jī)知道何種USB設(shè)備剛接上以及其所含的各種信息。這樣,PC機(jī)就可以與這個(gè)USB設(shè)備開始進(jìn)行數(shù)據(jù)傳輸?shù)墓ぷ髁?。這個(gè)動(dòng)作稱之為設(shè)備列舉(enumeration)。,1、USB描述符在設(shè)備列舉過程中,USB設(shè)備向主機(jī)傳送了一個(gè)重要的信息,使主機(jī)知道了這個(gè)設(shè)備是“誰”,并啟動(dòng)了該設(shè)備的驅(qū)動(dòng)程序。這個(gè)信息就是USB描述符,2、設(shè)備列舉設(shè)備列舉包含兩方面的功能,一是主機(jī)搜集USB設(shè)備的信息,也就是USB描述符。另一個(gè)是主機(jī)根據(jù)USB描述符對(duì)設(shè)備進(jìn)行配置,比如USB設(shè)備地址設(shè)置,USB設(shè)備各端點(diǎn)數(shù)據(jù)傳輸方式設(shè)置。,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 串行 輸入輸出 有關(guān) 知識(shí)
鏈接地址:http://m.jqnhouse.com/p-11515602.html