第10章串行通信_(tái)第1頁(yè)
第10章串行通信_(tái)第2頁(yè)
第10章串行通信_(tái)第3頁(yè)
第10章串行通信_(tái)第4頁(yè)
第10章串行通信_(tái)第5頁(yè)
已閱讀5頁(yè),還剩100頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第十章串行通信技術(shù)1第十章串行通信技術(shù)1、串行通信技術(shù)概述2、串行通信芯片8251A3、常見(jiàn)串行通信接口4、I2C串行總線(xiàn)技術(shù)21、串行通信技術(shù)概述并行通信回顧每一位數(shù)據(jù)用一根數(shù)據(jù)線(xiàn),要求通信線(xiàn)多;通信速度快,通信距離短;為了協(xié)調(diào)通信雙方的同步工作,需若干根狀態(tài)、控制線(xiàn),協(xié)調(diào)信號(hào)傳送。系統(tǒng)內(nèi)部通信,如計(jì)算機(jī)系統(tǒng)內(nèi)的數(shù)據(jù)總線(xiàn)與各外圍芯片之間數(shù)據(jù)傳送;或與相近設(shè)備之間通信,如打印機(jī)等。31、串行通信技術(shù)概述并行通信回顧以8255A為例,三種工作方式:方式0:簡(jiǎn)單并行接口,外設(shè)是簡(jiǎn)單對(duì)象,時(shí)刻處于就緒狀態(tài)。只需要數(shù)據(jù)線(xiàn)。方式1:?jiǎn)蜗蛲ㄐ挪⑿薪涌冢仨氈缹?duì)方的狀態(tài),和向?qū)Ψ缴暾?qǐng)。除了數(shù)據(jù)線(xiàn)外,增加表示狀態(tài)和控制讀、寫(xiě)的選通線(xiàn)(握手信號(hào)),兩根。

向CPU的中斷線(xiàn)原則上不屬于并行通信接口組成部分。方式2:雙向通信并行接口:兩個(gè)方向狀態(tài)信號(hào)與控制讀、寫(xiě)的選通線(xiàn),四根。要求接口具有三態(tài)功能.16位并行接口、32位并行接口,數(shù)據(jù)線(xiàn)數(shù)量增加,控制線(xiàn)保持不變。41、串行通信技術(shù)概述并行通信回顧計(jì)算機(jī)內(nèi)部總線(xiàn):地址總線(xiàn),數(shù)據(jù)總線(xiàn),控制總線(xiàn)。地址總線(xiàn):確定數(shù)據(jù)來(lái)源和目的地(片選信號(hào)和片內(nèi)單元)。數(shù)據(jù)傳送:數(shù)據(jù)總線(xiàn)。其它信號(hào)大都屬于控制總線(xiàn)。在計(jì)算機(jī)內(nèi)部,數(shù)據(jù)傳送由CPU確定與控制。內(nèi)存、外圍接口電路(8259、8255、8237、8253)等,都處于從屬地位。外圍接口電路是否有數(shù)據(jù)交換要求,以及能否進(jìn)行數(shù)據(jù)傳送,必須由CPU確定。CPU對(duì)外設(shè)的服務(wù)分查詢(xún)方式和中斷方式。DMA51、串行通信技術(shù)概述并行通信回顧計(jì)算機(jī)內(nèi)部總線(xiàn):數(shù)據(jù)總線(xiàn):CPU與內(nèi)存關(guān)系最緊密。8088、8086、80486,數(shù)據(jù)總線(xiàn)根數(shù)越來(lái)越多(總線(xiàn)越來(lái)越寬),單位時(shí)間內(nèi)可傳送數(shù)據(jù)多??刂菩盘?hào)數(shù)量保持不變。系統(tǒng)內(nèi)部傳送數(shù)據(jù)速率越高,系統(tǒng)能力越強(qiáng)。計(jì)算機(jī)內(nèi)部都采用并行傳送(并行通信)為了加快信息傳送速度采用并行傳送,如打印機(jī)接口。61、串行通信技術(shù)概述串行通信的基本概念當(dāng)收、發(fā)雙方距離遠(yuǎn)時(shí),若采用并行通信,需要較多的數(shù)據(jù)線(xiàn),投資大。兩個(gè)相距較遠(yuǎn)的系統(tǒng),一般相互關(guān)系也不會(huì)太緊密。速度不是關(guān)鍵因素,投資成本成關(guān)鍵因素。使用較少的線(xiàn)路實(shí)現(xiàn)通信。串行通信的特點(diǎn):通信速度慢,通信距離遠(yuǎn)。經(jīng)常用于系統(tǒng)之間信息交換。USB接口、SATA接口:高速串行接口,距離近。71、串行通信技術(shù)概述串行通信的組成并行接口,數(shù)據(jù)線(xiàn)越多,同時(shí)傳送的數(shù)據(jù)位越多,但控制(狀態(tài))線(xiàn)數(shù)量不變。若將數(shù)據(jù)線(xiàn)減到最少(1根),表示狀態(tài)與控制線(xiàn)不能少,至少2根(單向)。串行接口要解決的問(wèn)題成為,如何取消狀態(tài)與控制線(xiàn)。只用一根數(shù)據(jù)線(xiàn)(和一根地線(xiàn)),就能完成數(shù)據(jù)傳送,協(xié)調(diào)傳送過(guò)程。串行數(shù)據(jù)通信沒(méi)有控制線(xiàn),所有通信控制信號(hào)也必須通過(guò)這根信號(hào)線(xiàn)傳送。串行數(shù)據(jù)傳送比并行數(shù)據(jù)傳送控制要復(fù)雜。為了正確傳送數(shù)據(jù),通信雙方要遵守一定的規(guī)約——協(xié)議。81、串行通信技術(shù)概述串行通信必須解決的問(wèn)題以何種速率進(jìn)行數(shù)據(jù)的發(fā)送和接收(波特率);采用何種數(shù)據(jù)格式(幀格式);包含的控制信息的定義;接收方如何得知數(shù)據(jù)的開(kāi)始和結(jié)束(幀同步);接收方如何從位流中正確地得到每位數(shù)據(jù)(位同步);如何判斷收到的數(shù)據(jù)的正確性(數(shù)據(jù)校驗(yàn));若發(fā)生錯(cuò)誤,如何處理(出錯(cuò)處理)。91、串行通信技術(shù)概述串行通信的波特率雙方事先約定的數(shù)據(jù)發(fā)送和接收的速度。每一位數(shù)據(jù)在通信線(xiàn)上持續(xù)的時(shí)間。110,220,300,600,1200,2400,4800,9600,19200等。在傳輸時(shí)、接收端必須有與發(fā)送端相同的時(shí)鐘頻率。兩端的相位保持在允許的范圍內(nèi)。接收端使時(shí)鐘脈沖在頻率和相位上與發(fā)送端保持一致的機(jī)制稱(chēng)為同步,實(shí)現(xiàn)這種同步的技術(shù)稱(chēng)為同步方式。101、串行通信技術(shù)概述串行通信的位同步與幀同步接收端從位流中正確地分離出每位數(shù)據(jù),稱(chēng)為位同步,根據(jù)雙方約定波特率,實(shí)現(xiàn)位同步。幀:一次完整的通信過(guò)程,稱(chēng)為幀。幀包括了開(kāi)始、結(jié)束和通信過(guò)程中所有的數(shù)據(jù)位。幀同步:從開(kāi)始到結(jié)束,完成一次完整的通信過(guò)程的同步。幀同步不僅要求雙方約定相同波特率,并且要求雙方約定傳送數(shù)據(jù)每一位的含義,包括開(kāi)始和結(jié)束。111、串行通信技術(shù)概述串行通信的傳輸方式不同的串行通信約定,有不同的幀格式。異步傳輸方式:以字符為單位進(jìn)行傳輸,每一次傳送一個(gè)字符,(一幀一個(gè)字符)。用起始位進(jìn)行同步。同步傳輸方式:以二進(jìn)制流(多于一個(gè)字符)為單位進(jìn)行傳輸。(一幀可以多個(gè)字符)接收端要求數(shù)據(jù)位與時(shí)鐘脈沖在頻率和相位上與發(fā)送方保持一致。121、串行通信技術(shù)概述串行通信的異步傳輸模式以字符為基本通信單位起始位標(biāo)志著每一個(gè)字符的開(kāi)始停止位標(biāo)志著每一個(gè)字符的結(jié)束

131、串行通信技術(shù)概述串行通信的異步傳輸模式平時(shí)通信線(xiàn)處于空閑狀態(tài)(“1”狀態(tài)),當(dāng)有數(shù)據(jù)發(fā)送時(shí),發(fā)送方首先發(fā)一“0”,稱(chēng)為起始位;接著發(fā)送數(shù)據(jù)位,數(shù)據(jù)位可有5~8位組成。然后是校驗(yàn)位,校驗(yàn)分奇校驗(yàn)、偶校驗(yàn)、置0、置1、無(wú)校驗(yàn)等各種情況。其中無(wú)校驗(yàn)情況,沒(méi)有該位。最后為停止位,有1、1.5、2位停止位。所謂停止位,其實(shí)不是發(fā)送數(shù)據(jù)編碼,而是線(xiàn)路在兩個(gè)數(shù)據(jù)傳送之間必需的至少的時(shí)間間隔。比如2位停止位,是說(shuō)發(fā)送完一個(gè)字符后,至少要間隔兩個(gè)一位數(shù)據(jù)傳送持續(xù)時(shí)間。多余兩個(gè)間隔均允許。141、串行通信技術(shù)概述異步傳輸模式的特點(diǎn)起始位為同步信號(hào)。接收端在每個(gè)字符開(kāi)始時(shí),進(jìn)行一次重新定位。因此每傳送一個(gè)字符都有一次同步過(guò)程。然后通信雙方按照約定的波特率發(fā)送和采樣對(duì)應(yīng)數(shù)據(jù)位。只要在一個(gè)字符傳送期間,積累的誤差不大于一位數(shù)據(jù)傳送時(shí)間。就不會(huì)發(fā)生錯(cuò)誤。因此,異步傳輸允許發(fā)送器和接收器不必用同一個(gè)時(shí)鐘,而是可以各有各的時(shí)鐘(局部時(shí)鐘),只要有同一個(gè)標(biāo)稱(chēng)頻率即可,且對(duì)頻率的精度要求也較低。

兩次發(fā)送字符之間必須要有間隔時(shí)間(停止位),并且每次字符傳輸,必須有一位同步信號(hào)(起始位)。異步傳輸效率低。151、串行通信技術(shù)概述串行通信的同步傳輸模式161、串行通信技術(shù)概述串行通信的同步傳輸模式的特點(diǎn)同步傳輸方式無(wú)法區(qū)分字符之間的界限。在傳輸時(shí)不能從一個(gè)二進(jìn)制位串中提取正確的字符信息。發(fā)送方需要在一組數(shù)據(jù)前附加1個(gè)或2個(gè)稱(chēng)為同步字符的特殊代碼,通知接收方串行數(shù)據(jù)第一位何時(shí)到達(dá)。字符之間沒(méi)有像異步傳輸那樣的間隙,必須以連續(xù)的形式發(fā)送。利用編碼機(jī)制將時(shí)鐘信息和數(shù)據(jù)放在一起發(fā)送給接收端,以保證每一位的正確性。171、串行通信技術(shù)概述串行通信的同步傳輸模式字符之間沒(méi)有空隙,以連續(xù)的形式發(fā)送,每個(gè)時(shí)鐘周期發(fā)送一位數(shù)據(jù)。數(shù)據(jù)信息后是錯(cuò)誤校驗(yàn)字符(通常為兩個(gè)字節(jié))。接收方在收到同步字符后立即按事先約定的長(zhǎng)度(5、6、7或8位)從二進(jìn)制流中逐個(gè)提出字符。同步通信采用的同步手段和同步字符的個(gè)數(shù)不同,存在著不同的格式結(jié)構(gòu)。單同步數(shù)據(jù)格式。雙同步數(shù)據(jù)格式。它對(duì)時(shí)鐘同步的要求特別高,硬件電路比較復(fù)雜。181、串行通信技術(shù)概述幾種不同的編碼191、串行通信技術(shù)概述幾種不同的編碼不歸零編碼(NRZ):0和1用兩種電平一一對(duì)應(yīng)。不歸零1制(NRZI):0,在每位數(shù)據(jù)傳送起始時(shí)沒(méi)有跳變,1,在數(shù)據(jù)傳送起始時(shí)有跳變,。曼徹斯特編碼:0:每位數(shù)據(jù)傳送的中間有下跳;1:每數(shù)據(jù)傳送的中間有上跳。跳變同時(shí)具有定時(shí)功能。差分曼徹斯特編碼:在每位數(shù)據(jù)傳輸?shù)闹虚g位置總有跳變(定時(shí)),0:在每個(gè)數(shù)據(jù)起始時(shí)有跳變;1:在數(shù)據(jù)的起始位置沒(méi)有跳變。201、串行通信技術(shù)概述同步與異步方式的比較異步方式:傳輸效率低,對(duì)系統(tǒng)要求低,實(shí)現(xiàn)方法簡(jiǎn)單。在數(shù)據(jù)量不大的應(yīng)用中獲得廣泛應(yīng)用。同步方式:傳輸效率高,對(duì)系統(tǒng)要求高,實(shí)現(xiàn)方法復(fù)雜。適合大量數(shù)據(jù)傳送。在簡(jiǎn)單的控制系統(tǒng)中,大都采用異步方式。在許多對(duì)數(shù)據(jù)交換量不大的系統(tǒng),也采用異步方式。數(shù)據(jù)通信系統(tǒng)中采用同步方式。211、串行通信技術(shù)概述串行異步通信的傳輸制式單工:僅在一個(gè)方向上的數(shù)據(jù)傳送。半雙工:兩個(gè)方向上交替地傳送數(shù)據(jù),同一時(shí)間只能在一個(gè)方向上。全雙工:可在兩個(gè)方向上同時(shí)傳送數(shù)據(jù)。221、串行通信技術(shù)概述串行異步通信的同步串行異步通信根據(jù)傳送的波特率確定發(fā)送時(shí)鐘和接收時(shí)鐘的頻率。傳送數(shù)據(jù)中不包括時(shí)鐘信號(hào)。雙方要事先約定好。發(fā)送一位數(shù)據(jù)的時(shí)間由發(fā)送端的時(shí)鐘決定,接收一位數(shù)據(jù)的時(shí)間由接收端的時(shí)鐘決定。雙方采用不同的時(shí)鐘源,用起始位同步。雙方時(shí)鐘頻率不一定完全相同,并且一般相位也不會(huì)同步,但只要兩者在傳送1個(gè)字符的時(shí)間內(nèi),誤差不超過(guò)傳送一位時(shí)間,就可以正確通信。由于這個(gè)特點(diǎn),異步串行通信盡管效率不高,還是獲得了廣泛的應(yīng)用。231、串行通信技術(shù)概述串行通信的校驗(yàn)----奇偶校驗(yàn)在異步通信的格式中,可以包含一位校驗(yàn)位(奇、偶校驗(yàn))。設(shè)置為奇校驗(yàn)時(shí),數(shù)據(jù)中1的個(gè)數(shù)加校驗(yàn)位之和為奇數(shù)個(gè)1;設(shè)置為偶校驗(yàn)時(shí),數(shù)據(jù)中1的個(gè)數(shù)與校驗(yàn)位之和為偶數(shù)個(gè)1。發(fā)、收雙方按同樣方式設(shè)置和進(jìn)行校驗(yàn),若二者不一致,則說(shuō)明傳送過(guò)程中出現(xiàn)了差錯(cuò)。校驗(yàn)位根據(jù)指定的方式,由硬件自動(dòng)加入。并且也由硬件自動(dòng)校驗(yàn)。若采用無(wú)校驗(yàn)通信方式,則相對(duì)應(yīng)發(fā)送校驗(yàn)位的時(shí)間也自動(dòng)取消。241、串行通信技術(shù)概述串行通信的校驗(yàn)----縱橫校驗(yàn)奇偶校驗(yàn)可以發(fā)現(xiàn)奇數(shù)個(gè)位錯(cuò)誤,但不能發(fā)現(xiàn)偶數(shù)個(gè)位的錯(cuò)誤。當(dāng)發(fā)現(xiàn)錯(cuò)誤后,也不能確定發(fā)生錯(cuò)誤的位置??v橫校驗(yàn):發(fā)送方將所發(fā)送的數(shù)據(jù)不僅按字節(jié)進(jìn)行奇偶校驗(yàn),并且將數(shù)據(jù)分塊,逐個(gè)字節(jié)按位求和(異或),產(chǎn)生一個(gè)字節(jié)的校驗(yàn)字符(校驗(yàn)和),附加到數(shù)據(jù)塊末尾。接收方接收數(shù)據(jù)時(shí)也同樣對(duì)數(shù)據(jù)塊求和,將所得結(jié)果與發(fā)送方的“校驗(yàn)和”進(jìn)行比較(異或),相同(=0)則無(wú)差錯(cuò),否則有差錯(cuò)。251、串行通信技術(shù)概述串行通信的校驗(yàn)----縱橫校驗(yàn)例:將傳送的數(shù)據(jù)按每8個(gè)字節(jié)為一塊,按偶校驗(yàn),得到校驗(yàn)字節(jié)。261、串行通信技術(shù)概述串行通信的校驗(yàn)----縱橫校驗(yàn)縱橫校驗(yàn)不僅能發(fā)現(xiàn)錯(cuò)誤,在有的情況下還可以糾正錯(cuò)誤。發(fā)生錯(cuò)誤的交叉點(diǎn),若在同一行或同一列發(fā)生偶數(shù)個(gè)錯(cuò),只能檢出錯(cuò),但無(wú)法糾正。奇偶校驗(yàn)由硬件自動(dòng)完成,縱校驗(yàn)字節(jié)要通過(guò)硬件(軟件)對(duì)傳輸?shù)淖止?jié)進(jìn)行異或運(yùn)算產(chǎn)生。然后附加到發(fā)送數(shù)據(jù)后。校驗(yàn)字節(jié)的校驗(yàn)位,仍由硬件自動(dòng)完成。縱橫校驗(yàn)不一定是按8個(gè)字符為單位,可以按發(fā)送數(shù)據(jù)幀為單位。271、串行通信技術(shù)概述串行通信的校驗(yàn)----CRC冗余校驗(yàn)循環(huán)冗余碼校驗(yàn)是目前一種最常用的,也是最有效的差錯(cuò)檢測(cè)編碼。對(duì)一個(gè)K比特的數(shù)據(jù)塊(或稱(chēng)報(bào)文),發(fā)送方生成一個(gè)N比特的序列,稱(chēng)為幀檢驗(yàn)序列(FCS),這個(gè)序列與原K比特的數(shù)據(jù)塊組成一個(gè)長(zhǎng)為K+N比特的新序列(幀),一起發(fā)送。當(dāng)接收方收到這個(gè)K+N比特的新序列(幀)后,用同樣運(yùn)算方法,若余數(shù)為0,則認(rèn)為沒(méi)有差錯(cuò);否則有差錯(cuò)。281、串行通信技術(shù)概述串行通信的校驗(yàn)----CRC冗余校驗(yàn)幀檢驗(yàn)序列(FCS)采用原始發(fā)送數(shù)據(jù)塊除以某些預(yù)定的數(shù)值(模二除)。這種預(yù)定的數(shù)值稱(chēng)為生成多項(xiàng)式。291、串行通信技術(shù)概述串行通信的校驗(yàn)----CRC冗余校驗(yàn)發(fā)送端,用數(shù)據(jù)報(bào)文整除生成多項(xiàng)式,得到幀檢驗(yàn)序列,附加到發(fā)送的數(shù)據(jù)報(bào)文后,一起發(fā)送。這個(gè)過(guò)程稱(chēng)為“生成”。在接收端,對(duì)接收到的報(bào)文(包括幀檢驗(yàn)序列),用“生成多項(xiàng)式”再次進(jìn)行整除,這個(gè)過(guò)程稱(chēng)為“校驗(yàn)”?!罢辈捎冒次怀ú粠нM(jìn)位)。301、串行通信技術(shù)概述串行通信的校驗(yàn)----CRC碼算法生成在數(shù)據(jù)報(bào)文后添入與CRC校驗(yàn)位數(shù)相同個(gè)0。根據(jù)數(shù)據(jù)的最高位的狀態(tài),若為1,進(jìn)行異或運(yùn)算;若為0,不進(jìn)行異或運(yùn)算。然后將整個(gè)數(shù)據(jù)報(bào)文連同添加的0一起左移一位。對(duì)剩余的報(bào)文繼續(xù)第2步運(yùn)算和左移過(guò)程,直到添加的0也經(jīng)異或運(yùn)算完成。產(chǎn)生的余數(shù)即為生成的CRC碼,作為報(bào)文的添加字節(jié),一起發(fā)送。31例:發(fā)送數(shù)據(jù)序列:1010001101,生成多項(xiàng)式:110101。發(fā)送數(shù)據(jù)序列*25:100000000000000x5x4x2x0101000110100000--1110101

010110--70111011--2101100--8

110101

110101

0011101--30110010--9111010--4110101

110101

0001110--10

0011111--5發(fā)送序列:

111110--6101000110101110

110101

00101132接收端:101000110101110100000000001110--1

110101

101111--8

0111011--2110101110101

0110101--9

0011101–3110101

111010--40000000

110101

000000--余數(shù)為0

0011111--5

111110--6

110101

0010111--7331、串行通信技術(shù)概述串行通信的校驗(yàn)----常用生成多項(xiàng)式CRC-12:P(x)=x12+x11+x3+x2+x1+x0

CRC-16:P(x)=x16+x15+x2+x0CRC-CCITT:P(x)=x16+x12+x5+x0CRC-32:P(x)=x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x1+x0341、串行通信技術(shù)概述串行通信的校驗(yàn)----硬件生成算法351、串行通信技術(shù)概述串行通信的校驗(yàn)----軟件生成CRC-16=x16+x15+x2+1

將發(fā)送數(shù)據(jù)最高兩字節(jié)送移位寄存器。在其后添兩字節(jié)0。移位寄存器中內(nèi)容左移一位,最低位補(bǔ)發(fā)送信息下一位。1.若移出位為1,則移位寄存器內(nèi)容與生成多項(xiàng)式進(jìn)行異或運(yùn)算,結(jié)果仍在移位寄存器中。2.若移出位為0,則不進(jìn)行異或運(yùn)算。繼續(xù)上述移位和計(jì)算過(guò)程,直到添加的兩字節(jié)在移位寄存器中,它就是生成的CRC碼。361、串行通信技術(shù)概述串行通信的校驗(yàn)----軟件生成接收到的最高兩字節(jié)送移位寄存器。移位寄存器中內(nèi)容左移一位,最低位補(bǔ)入下一位數(shù)據(jù)。1.若移出位為1,則移位寄存器內(nèi)容與生成多項(xiàng)式進(jìn)行異或運(yùn)算,結(jié)果仍在移位寄存器中。2.若移出位為0,則不進(jìn)行異或運(yùn)算。繼續(xù)上述移位和計(jì)算過(guò)程,直到CRC碼兩字節(jié)在移位寄存器中,若為0,正確;否則,有錯(cuò)。371、串行通信技術(shù)概述串行通信的校驗(yàn)----軟件編程所有生成多項(xiàng)式比生成的冗余碼階次高一。實(shí)際上最高位在計(jì)算機(jī)中不存在。CRC校驗(yàn)碼生成運(yùn)算,數(shù)據(jù)流采用帶C左移,判C狀態(tài)。C=1時(shí),進(jìn)行異或運(yùn)算;C=0,不進(jìn)行異或運(yùn)算。然后,左移一位。左移次數(shù)與發(fā)送數(shù)據(jù)位數(shù)相同。將最后余數(shù)附加在發(fā)送數(shù)據(jù)后,一起發(fā)送。CRC校驗(yàn),將接收到的數(shù)據(jù)流(連同校驗(yàn)碼)采用相同方式運(yùn)算。編制一CRC校驗(yàn)通用子程序。38391.檢查出全部單個(gè)錯(cuò)。2.能檢查出全部離散的二位錯(cuò)3.能檢查出全部奇數(shù)個(gè)錯(cuò)。4.能檢查出全部長(zhǎng)度小于或等于n位的突發(fā)錯(cuò)。(n為生成多項(xiàng)式的階次)5.能以1-(1/2)n-1的概率檢查出長(zhǎng)度為n+1位的突發(fā)錯(cuò)。例如,如果n=16,則該CRC校驗(yàn)碼能全部檢查出小于或等于16位長(zhǎng)度的突發(fā)錯(cuò),并能以1-(1/2)n-1=99.997%的概率檢查出長(zhǎng)度為17位的突發(fā)錯(cuò),漏檢概率為0.0003%。1、串行通信技術(shù)概述串行通信的校驗(yàn)----CRC1、串行通信技術(shù)概述串行通信的校驗(yàn)----三種校驗(yàn)的對(duì)比奇偶校驗(yàn):簡(jiǎn)單,實(shí)現(xiàn)容易,(事實(shí)上已在硬件中包括)。能判斷出一位錯(cuò),但對(duì)二位錯(cuò)不能判斷。不能判斷哪一位錯(cuò),因此不能糾正錯(cuò)誤。縱橫校驗(yàn):可以糾正一位錯(cuò),并能判斷出兩位錯(cuò),但不能糾正。其代價(jià)是要增加檢驗(yàn)字節(jié)。CRC校驗(yàn),在整個(gè)數(shù)據(jù)串后附加兩個(gè)字節(jié)校驗(yàn)碼(CRC-16),效率高。402、串行通信芯片8251通用的同步/異步、接收/發(fā)送器芯片。它可通過(guò)編程選用一種串行通信形式。能夠以單工、半雙工或全雙工方式進(jìn)行通信,提供了一些基本的控制信號(hào),方便與MODEM連接。在同步模式下,可選5~8位字符;奇校驗(yàn)/偶校驗(yàn)/無(wú)校驗(yàn)。內(nèi)同步方式或外同步方式;自動(dòng)插入同步字符。412、串行通信芯片8251在異步模式下,825lA同樣可以傳送5~8位字符;可選擇校驗(yàn)方式:奇、偶、無(wú);可設(shè)置波特率系數(shù);可設(shè)置停止位的位數(shù)等。422、串行通信芯片8251接收CPU來(lái)的要發(fā)送的字節(jié)數(shù)據(jù),根據(jù)設(shè)置的工作模式,轉(zhuǎn)換成相應(yīng)的發(fā)送二位式序列,生成校驗(yàn)位,從發(fā)送端發(fā)送。(并轉(zhuǎn)串)從接收端接受二位式序列,轉(zhuǎn)換成字節(jié)數(shù)據(jù),并進(jìn)行校驗(yàn)。(串轉(zhuǎn)并)等待CPU讀取。只完成了數(shù)據(jù)格式轉(zhuǎn)換(并-串、串-并),以及根據(jù)設(shè)置的波特率接收和發(fā)送。在其外還要加接口驅(qū)動(dòng)電路。432、串行通信芯片8251引腳和結(jié)構(gòu)圖442、串行通信芯片8251引腳和結(jié)構(gòu)發(fā)送寄存器和接收寄存器都為雙緩沖寄存器方式。發(fā)送:其中一個(gè)將并行數(shù)據(jù)轉(zhuǎn)為串行數(shù)據(jù),從TXD腳發(fā)出,另一個(gè)用來(lái)保存下一個(gè)要發(fā)送的數(shù)據(jù)。接收:一個(gè)接收RXD腳來(lái)的串行數(shù)據(jù),并轉(zhuǎn)為并行數(shù)據(jù),并送到輸入寄存器,等待CPU讀取。采用雙緩沖寄存器在發(fā)送時(shí),可以數(shù)據(jù)未發(fā)送完時(shí),就接受下一要發(fā)送數(shù)據(jù)。同樣在接收時(shí),不等CPU讀取上一數(shù)據(jù)時(shí),就可接收新的數(shù)據(jù)。452、串行通信芯片8251引腳信號(hào)TxD/RxD:數(shù)據(jù)發(fā)送端(輸出)/接收端(輸入)。

TxRDY/RxRDY

:發(fā)送緩沖器/接收緩沖器就緒信號(hào),輸出。對(duì)發(fā)送來(lái)講是發(fā)送緩沖器空,對(duì)接收來(lái)講是接收緩沖器滿(mǎn)。TxEMPTY:發(fā)送移位寄存器空信號(hào),輸出。只有該信號(hào)有效,才表示數(shù)據(jù)真正發(fā)送完。TxC/RxC:發(fā)送/接收時(shí)鐘信號(hào),輸入。同步方式,即為波特率。異步方式時(shí),可通過(guò)軟件設(shè)置波特率。462、串行通信芯片8251引腳信號(hào)SYNDET/BRKDET:同步方式時(shí)用,雙向。雙功能檢測(cè)信號(hào),高電平有效。既可為輸入,也可為輸出。復(fù)位時(shí)置為輸出。異步方式無(wú)定義。內(nèi)同步工作時(shí),該信號(hào)為輸出。當(dāng)SYNDET=1時(shí),表示8251A已經(jīng)監(jiān)測(cè)到所要求的同步字符。外同步工作時(shí),該信號(hào)為輸入。SYNDET端的上升沿,使接收電路從下一RxC上升沿開(kāi)始組裝數(shù)據(jù)。在異步方式時(shí),該引腳定義為BRKDET,為間斷檢測(cè)信號(hào),輸出。當(dāng)接收器持續(xù)接到低電平,輸出變高,表示接收到對(duì)方發(fā)來(lái)的間斷碼。472、串行通信芯片8251引腳信號(hào)DTR:輸入,數(shù)據(jù)終端就緒信號(hào)。DSR:輸出,數(shù)據(jù)裝置就緒信號(hào)。RTS:輸出,發(fā)送方請(qǐng)求發(fā)送信號(hào)。

CTS:輸入,清除發(fā)送信號(hào),(8251可以向 MODEM發(fā)送數(shù)據(jù))。

這4個(gè)信號(hào)與MODEM連接,用于檢測(cè)調(diào)制解調(diào)器狀態(tài)。如沒(méi)有接MODEM,這4個(gè)信號(hào)無(wú)作用。這四個(gè)信號(hào)也是通信雙方的兩對(duì)握手信號(hào)。482、串行通信芯片8251與CPU的接口數(shù)據(jù)總線(xiàn):D7~D0讀、寫(xiě)信號(hào):RD、WR片選信號(hào):CS命令/數(shù)據(jù)信號(hào)(C/D#):相當(dāng)于地址線(xiàn),區(qū)別命令還是數(shù)據(jù)。一片8251占兩個(gè)地址單元。CLK:時(shí)鐘信號(hào),芯片內(nèi)部工作時(shí)序信號(hào)。與芯片的輸入、輸出信號(hào)無(wú)關(guān),但應(yīng)高于設(shè)置波特率30倍以上。492、串行通信芯片8251與CPU的接口CLK頻率比波特率高得越多,雙方相位差越小。如下圖,假定每次在頻率中點(diǎn)采樣,若CLK與波特率相同,則最大相位誤差為180。502、串行通信芯片82518251的編程8251A芯片必須先初始化,才能工作。8251A有二個(gè)控制字:工作模式控制字和操作命令控制字,以及一個(gè)只讀的狀態(tài)字。8251A只有一個(gè)命令口(C/D=1),因此必須按順序?qū)懭雰蓚€(gè)控制字。初始化后,處于寫(xiě)工作模式控制字狀態(tài)。寫(xiě)工作模式控制字后,成為寫(xiě)操作命令控制字狀態(tài)。并且一直處于寫(xiě)操作命令控制字狀態(tài)。操作命令控制字的D6位(IR)置1,可以回到寫(xiě)工作模式控制字狀態(tài)。512、串行通信芯片82518251的工作模式控制字522、串行通信芯片82518251的工作模式控制字最低兩位(D1、D0)定義工作模式。在異步模式下,定義數(shù)據(jù)速率與發(fā)送/接收時(shí)鐘TXC/RXC的比率。1,1/16,1/64D3、D2兩位定義發(fā)送數(shù)據(jù)位數(shù)。D4為是否有校驗(yàn)位。=0,沒(méi)有。則發(fā)送數(shù)據(jù)時(shí),不添加校驗(yàn)位(沒(méi)有該時(shí)間)。D5為奇、偶校驗(yàn)設(shè)置,發(fā)送時(shí),它由8251A根據(jù)發(fā)送數(shù)據(jù)自動(dòng)生成;接收時(shí),自動(dòng)進(jìn)行校驗(yàn)。D7、D6在異步模式下,為停止位個(gè)數(shù)。實(shí)際是兩個(gè)數(shù)據(jù)發(fā)送中間至少間隔時(shí)間。同步模式下,為同步方式和同步字符個(gè)數(shù)。S1確定內(nèi)同步還是外同步,S2確定同步字符個(gè)數(shù)。532、串行通信芯片82518251的工作模式控制字典型的數(shù)據(jù)塊格式:第一條指令為模式指令,然后為兩個(gè)(或一個(gè)同步字符)。接下來(lái)是命令指令。隨后是數(shù)據(jù)塊。542、串行通信芯片82518251的操作命令控制字552、串行通信芯片82518251的操作命令控制字EH:進(jìn)入搜索模式命令(D7):同步模式時(shí),使8251A進(jìn)入搜索模式,即檢測(cè)同步字符。異步模式時(shí),本位無(wú)定義。IR:內(nèi)部復(fù)位(D6):置1,回到寫(xiě)工作模式控制字狀態(tài)。隨后寫(xiě)控制字為寫(xiě)工作模式控制字。RTS(D5)、DTR(D1):請(qǐng)求發(fā)送、就緒RXE(D2)、TXEN(D0):允許接收、發(fā)送數(shù)據(jù)SBRK(D3):是否發(fā)送斷缺字符,=1,強(qiáng)制TXD=0;正常情況SBRK=0。ER(D4):清錯(cuò)誤標(biāo)志命令。562、串行通信芯片82518251的狀態(tài)字572、串行通信芯片82518251的異步模式下的狀態(tài)字DSR(D7):無(wú)MODEM時(shí)無(wú)用。D6:異步模式下一般不用。OE(D4):錯(cuò)誤標(biāo)志。當(dāng)發(fā)送寄存器非空時(shí),又寫(xiě)入數(shù)據(jù);或接收寄存器滿(mǎn),未讀出,又接收到新數(shù)據(jù)。PE(D3):奇偶校驗(yàn)錯(cuò),接收數(shù)據(jù)有錯(cuò)。FE:異步模式下若未收到停止位。582、串行通信芯片82518251的異步模式下的狀態(tài)字TXEMPTY:發(fā)送移位寄存器空。當(dāng)它為1,表示所有數(shù)據(jù)位發(fā)送完成。RXRDY:接收緩沖器滿(mǎn),表示有接收數(shù)據(jù)。TXRDY:發(fā)送緩沖器滿(mǎn)。CPU寫(xiě)入的待數(shù)據(jù),當(dāng)發(fā)送移位寄存器空,將數(shù)據(jù)送入發(fā)送移位寄存器,發(fā)送緩沖器變成空,可以接下一數(shù)據(jù)。RXRDY、和TXRDY常用作向CPU請(qǐng)求中斷。592、串行通信芯片82518251的異步通信數(shù)據(jù)格式602、串行通信芯片82518251的異步通信數(shù)據(jù)格式起始位標(biāo)志著每一個(gè)字符的開(kāi)始停止位標(biāo)志著每一個(gè)字符的結(jié)束612、串行通信芯片82518251的同步通信數(shù)據(jù)格式622、串行通信芯片8251632、串行通信芯片8251642、串行通信芯片8251652、串行通信芯片825166672、串行通信芯片8251實(shí)驗(yàn):編制程序?qū)崿F(xiàn)雙機(jī)通訊,注意使用用戶(hù)串口,而不是仿真器串口3、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C:較早的一種標(biāo)準(zhǔn),全雙工。單端輸入、輸出,傳輸距離短。RS-423A:從RS-232C改進(jìn)的一種標(biāo)準(zhǔn),差分輸入,單端輸出,全雙工。RS-422A:差分輸入,差分輸出,全雙工。RS-485:差分輸入,差分輸出,半雙工工作。這些串口工作標(biāo)準(zhǔn),與8251A無(wú)關(guān),而是與采用的驅(qū)動(dòng)芯片有關(guān)。68電信通信,接MODEM。RS-232C采用負(fù)邏輯,以+3V~+25V之間的任意電壓表示邏輯0,以

-3V~-25V之間的任意電壓表示邏輯1,在實(shí)際應(yīng)用中,電平常為±12V或±15V。通信距離≧50英尺(16.7米)。3、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C693、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C標(biāo)準(zhǔn)引腳定義703、常見(jiàn)串行通信標(biāo)準(zhǔn)PC機(jī)串行口定義713、常見(jiàn)串行通信標(biāo)準(zhǔn)PC機(jī)串行口定義2(3)TXD:發(fā)送數(shù)據(jù)線(xiàn),輸出。(括號(hào)內(nèi)9芯)3(2)RXD:接收數(shù)據(jù)線(xiàn),輸入。7(5)GND:邏輯地。4(7)RTS:請(qǐng)求發(fā)送信號(hào),輸出,高電平有效。RTS=1,表示終端要向MODEM或其它通信設(shè)備發(fā)送數(shù)據(jù)。5(8)CTS:清除發(fā)送信號(hào),輸入,高電平有效。當(dāng)MODEM或外設(shè)巳準(zhǔn)備好接收終端發(fā)送來(lái)的數(shù)據(jù)時(shí),時(shí)CTS=l,通知終端可以開(kāi)始發(fā)送數(shù)據(jù),也可以認(rèn)為是對(duì)請(qǐng)求發(fā)送信號(hào)RTS的回答信號(hào)。723、常見(jiàn)串行通信標(biāo)準(zhǔn)PC機(jī)串行口定義20(4)DTR:數(shù)據(jù)終端準(zhǔn)備就緒信號(hào),輸出,高電平有效。DTR=1,表示終端準(zhǔn)備好接收來(lái)自MODEM,或其它設(shè)備的數(shù)據(jù)。6(6)DSR:數(shù)據(jù)裝置準(zhǔn)備就緒信號(hào)。輸入,高電平有效。它表示MODEM和設(shè)備準(zhǔn)備好發(fā)送數(shù)據(jù),實(shí)際上是對(duì)DTR的回答信號(hào)。8(1)CD:載波檢測(cè),輸出。CD=1,表示MODEM巳接收到通信線(xiàn)路另一端MODEM送來(lái)的信號(hào)。22(9)RI:振鈴指示,輸入,高電平有效。RI=1,表明MODEM收到了交換臺(tái)送來(lái)的振鈴信號(hào),用它來(lái)通知終端。733、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C總線(xiàn)RS-232C最少只要三根線(xiàn)就可實(shí)現(xiàn)全雙工通信。

9D25DTXD:發(fā)送數(shù)據(jù)線(xiàn),輸出。32RXD:接收數(shù)據(jù)線(xiàn),輸入。23地線(xiàn):57743、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C總線(xiàn)753、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C接口RS-232C總線(xiàn):收發(fā)端共地。由于地電位的差異要求較高的信號(hào)電平。通信速度不高,距離短。763、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C接口773、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C接口1488、1489芯片每一片內(nèi)有4路驅(qū)動(dòng)器或接收器,電源電壓高于TTL電路。MAX1488VEE要外接>-14V,VCC要外接<+14V電壓。MAX1489VCC要外接<+7V電壓。要用兩個(gè)芯片才能組成全雙工接口。要不同的電源,不方便。MAX232E芯片內(nèi)集成了兩路發(fā)送器和兩路接收器。片內(nèi)還集成了電源倍壓電路和負(fù)電源產(chǎn)生電路。因此只需單5V電源供電。783、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-232C接口793、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-423A標(biāo)準(zhǔn)對(duì)RS-232C接口的改進(jìn)。發(fā)送端仍采用單端方式,而接收端采用差分方式。提高了通信速度和通信距離。降低了電壓。實(shí)現(xiàn)全雙工通信,要5根通信線(xiàn)。

803、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-422A標(biāo)準(zhǔn)收發(fā)兩端均采用差分方式,取消了收發(fā)雙方的公共參考點(diǎn)(地線(xiàn))??构材8蓴_的能力進(jìn)一步提高。傳送電壓降為5V,進(jìn)一步提高了通信速度和通信距離。RS-422A實(shí)現(xiàn)全雙工通信,要4根通信線(xiàn)。

813、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-422A標(biāo)準(zhǔn)823、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-485標(biāo)準(zhǔn)兩根通信線(xiàn)實(shí)現(xiàn)雙向通信(半雙工通信)??梢詫?shí)現(xiàn)總線(xiàn)通信。在RS-485總線(xiàn)上,任一時(shí)間只能有一個(gè)發(fā)送器處于發(fā)送狀態(tài)。其它均處于接收狀態(tài)。83RS-485芯片在內(nèi)部將發(fā)送器與接收器環(huán)接。并有收發(fā)控制端。3、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-485標(biāo)準(zhǔn)843、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-485總線(xiàn)式網(wǎng)絡(luò),半雙工853、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-485總線(xiàn)式網(wǎng)絡(luò),半雙工所有節(jié)點(diǎn)平等,初始化后處于接收狀態(tài),任何節(jié)點(diǎn)當(dāng)有數(shù)據(jù)發(fā)送時(shí),改為發(fā)送狀態(tài),隨時(shí)可發(fā)送。所有在網(wǎng)絡(luò)中的節(jié)點(diǎn)都可以收到,若有兩個(gè)以上節(jié)點(diǎn)同時(shí)發(fā)送數(shù)據(jù),將發(fā)生沖突。沖突檢測(cè),“載波偵聽(tīng)/重發(fā)”863、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-485總線(xiàn)式網(wǎng)絡(luò),全雙工,主從式873、常見(jiàn)串行通信標(biāo)準(zhǔn)RS-485總線(xiàn)式網(wǎng)絡(luò),全雙工,主從式分主節(jié)點(diǎn)和從節(jié)點(diǎn)。所有從節(jié)點(diǎn)的輸入和輸出分別并聯(lián)通信由主節(jié)點(diǎn)的輸出與從節(jié)點(diǎn)的輸入聯(lián),主節(jié)點(diǎn)的輸入與從節(jié)點(diǎn)的輸出聯(lián)。兩個(gè)從節(jié)點(diǎn)之間不能直接通信。平時(shí)所有從節(jié)點(diǎn)輸出處于“斷開(kāi)”狀態(tài)。883、常見(jiàn)串行通信標(biāo)準(zhǔn)總線(xiàn)網(wǎng)絡(luò)通信“沖突”的避免。所有網(wǎng)絡(luò)中的節(jié)點(diǎn)都會(huì)收到數(shù)據(jù),除了“廣播式”數(shù)據(jù),大多數(shù)據(jù)只有一個(gè)接收者。對(duì)其它節(jié)點(diǎn),成為干擾。奇偶校驗(yàn)位??梢灾谩?”,置“1”。利用奇偶校驗(yàn)位(第9位)進(jìn)行多機(jī)通信控制。當(dāng)?shù)?位=1,所有節(jié)點(diǎn)都收到數(shù)據(jù),當(dāng)?shù)?位=0,只有相應(yīng)節(jié)點(diǎn)收到數(shù)據(jù)。894、I2C總線(xiàn)Inter-IntegratedCircuit:由PHILIPS公司開(kāi)發(fā)的兩線(xiàn)式串行總線(xiàn),用于連接微控制器及其外圍設(shè)備。應(yīng)用廣泛。短距離傳輸速率達(dá)100Kbps。長(zhǎng)度可達(dá)25英尺,具有10Kbps的最大傳輸速率,支持40個(gè)組件??偩€(xiàn)上的每個(gè)電路和模塊都有唯一的地址。支持多主控(multimastering),其中任何具有控制發(fā)送和接收能力的設(shè)備都可以成為主控。在任何時(shí)間點(diǎn)上只能有一個(gè)主控。904、I2C總線(xiàn)最初為音頻和視頻設(shè)備開(kāi)發(fā),用于連接微控制器及其外圍設(shè)備。I2C總線(xiàn)最主要的優(yōu)點(diǎn)是其簡(jiǎn)單性和有效性。由于接口直接在組件之上,因此I2C總線(xiàn)占用的空間非常小,減少了電路板的空間和芯片管腳的數(shù)量,降低了互聯(lián)成本。有許多類(lèi)型芯片支持I2C總線(xiàn),如EEPROM、A/D、D/A、數(shù)字電位器等。一些單片機(jī)也集成了I2C。采用類(lèi)型碼和地址碼區(qū)別芯片。914、I2C總線(xiàn)I2C總線(xiàn)的芯片結(jié)構(gòu)I2C總線(xiàn)在傳送數(shù)據(jù)過(guò)程中,共有三種類(lèi)型的控制信號(hào),它們分別是:開(kāi)始信號(hào)、結(jié)束信號(hào)和應(yīng)答信號(hào)。開(kāi)始信號(hào):在SCL保持高電平時(shí),SDA由高電平向低電平跳變,開(kāi)始傳送數(shù)據(jù)。結(jié)束信號(hào):在SCL保

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論