




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
9.1串行通信的基本概念9.2串行口基本結構與操作方式第9章(補充)
串行接口技術計算機1GND計算機2GND并行通信計算機1GND計算機2GND發(fā)送接收串行通信9.1串行通信的基本概念
單片機與外界的信息交換稱為通信。基本通信方式有兩種:并行通信和串行通信。并行通信傳送數據的特點是各位同時發(fā)送或接收,而串行通信傳送數據的特點是各位按順序一位一位地發(fā)送或接收。并行通信
并行通信中一個并行數據占多少位二進制數,就要多少根傳輸線。其特點是通信速度快,但傳輸線多,價格較貴,適合近距離傳輸。一般用于電路芯片內部,同一個插板上各部件之間的通信,距離小于30m。前面關于存儲器擴展、總線法擴展I/O口電路的通訊方式均為并行傳送。計算機1GND計算機2GND并行通信串行通信串行通信僅需一到兩根傳輸線即可實現,故在長距離傳送數據時成本少,比較經濟。但由于它每次只能傳送一位,所以傳送速度較慢。計算機1GND計算機2GND發(fā)送接收串行通信9.1.1串行數據傳送方式
1.單工方式單向傳送數據,通信雙方中一方固定為發(fā)送端,另一端固定為接收端。只需要一條數據線。圖9-1(a)單工方式示意圖發(fā)送器A站接收器B站單工通信(a)這種方式允許數據在兩個方向的任一方向傳送,但每次只能有一端發(fā)送。使用同一根傳輸線既作接收又作發(fā)送,雖然數據可以在兩個方向上傳送,但通信雙方不能同時收發(fā)數據。
2.半雙工方式圖9-1(b)半雙工方式示意圖發(fā)收A站發(fā)收B站(b)
3.全雙工方式當數據的發(fā)送和接收分流,分別由兩根不同的傳輸線傳送時,通信雙方都能在同一時刻進行發(fā)送和接收操作,這樣的傳送方式就是全雙工(FullDuplex)制。它要求兩端的通信設備具有完整和獨立的發(fā)送、接收功能。圖9-1(c)半雙工方式示意圖發(fā)收A站發(fā)收B站(c)9.1.2波特率和發(fā)送/接收時鐘
1.波特率并行通信中,傳輸速度以每秒傳輸的字節(jié)(B/s)表示。而串行通信數據傳送的速率用波特率來表示。波特率指每秒鐘傳送的二進制數碼的位數,單位是bps(bitpersecond),即位/秒。波特率是串行通信的重要指標,用于衡量數據傳輸的速率。1)發(fā)送時鐘發(fā)送端使用的用于決定數據位寬度的時鐘。2)接收時鐘接收端使用的用于測定每一位輸入數據位寬度的時鐘。3)接收/發(fā)送時鐘頻率接收/發(fā)送時鐘頻率=n·波特率,其中n=1,16,32,64
2.發(fā)送/接收時鐘9.1.3
串行的基本通信方式
1.異步通信串行數據按傳遞方式分為兩種基本的通信方式:異步通信和同步通信。異步通信中數據或字符是分為一幀一幀地傳送,在幀格式中先用一個起始位“0”表示字符的開始,然后是5~8位數據,規(guī)定低位在前,高位在后,接下來是奇偶校驗位(可省略),最后一個停止位“1”表示字符的結束,構成一幀。由于異步通信每傳送一幀有固定格式,通信雙方只需按約定的幀格式來發(fā)送和接收數據,所以硬件結構比同步通信方式簡單;此外它還能利用校驗位檢測錯誤,所以這種通信方式應用較廣泛。
2.同步通信
同步通信中,在數據或字符開始處就用一同步字符來指示(1~2個),由時鐘來實現發(fā)送端和接收端同步,一旦檢測到與規(guī)定的同步字符符合,下面就連續(xù)按順序傳送數據。因為同步通信數據塊傳送時去掉了字符開始和結束的標志,所以其速度高于異步傳送,但這種方式對硬件結構要求較高。這種通信方式中收/發(fā)雙方必須建立準確的位定時信號,即收/發(fā)時鐘的頻率必須嚴格地一致。MCS-51單片機一般不使用。
根據串行通信格式及約定(如同步方式、通信速率、數據幀格式等)的不同,形成了許多串行通信接口標準,如常見的UART(通用串行異步通信接口)、USB(通用串行總線接口)、I2C總線、SPI總線(同步通信)、485總線、CAN總線接口等。下面結合MCS-51單片機介紹常用UART接口。9.1.4串行通信接口種類1)接口信號RS-232C通信接口又稱RS-232C總線標準。它向外部的連接器有25針和9針兩種“D”型插頭,各針的功能及排列如圖圖9-2(a)、圖9-2(b)。
1.RS-232C通信接口2)電平轉換單片機電平通常是TTL電平,它與RS232C電平不兼容,必須進行電平轉換。RS-232C與TTL的電平轉換的芯片有MCl488傳輸線驅動器和MCl489傳輸線接收器。由于MCl488和MCl489需要±15v或±12V供電,造成了使用不便,現常用+5v單電源供電的轉換芯片,如MAXIM公司的MAX232芯片,它可以實現RS-232C與TTL/CMOS電平之間的轉換。MA-X232的組成及引腳圖如圖9-3所示。
1.RS-232C通信接口2.RS-422A通信接口1)接口信號RS-422A通信接口是對RS-232C通信接口的改進,它采用平衡傳輸電氣標準,輸人/輸出均采用差分驅動,因此具有更強的抗干擾能力,傳送速率也大大提高。它向外部的連接器常采用9針“D”型插頭,各針的功能及排列如圖9-4所示。2.RS-422A通信接口2)電平轉換能夠將TTL電平轉換為RS-422A電平的常用芯片有SN5174、MC3487等。能將RS-422A電平轉換為TTL電平的常用芯片有SN75175、MC3486等。SN75174、SN75175分別具有三態(tài)輸出的單片差分驅動器和接收器,符合E認標準的RS-422A規(guī)范,它采用+5V單電源供電,功能上可以與MC3487、MC3486互換。下圖圖9-5是用SN75174、SN75175實現的電平轉換電路圖。9.1.5信號調制與解調
MODEM與計算機連接的方式分成內接式和外接式。MODEM的調制方式有3種:1)振幅調制(ASK):以兩種振幅的大小來區(qū)別數字信號“0”與“1”;2)頻率調制(FSK):利用兩個固定的頻率來分別代表數字信號“0”與“1”;3)相位調制(PSK):利用相位的差異來區(qū)別信號,當相位差180o時代表位值的變化。9.1.6
串行接口的任務
1.進行串-并轉換2.實現串行數據格式化3.可靠性檢驗4.實施接口與通信設備之間的聯絡控制
圖9-2(a)25針插頭引腳定義圖圖9-2(b)9針插頭引腳定義圖圖9-3MAX232組成及引腳圖圖9-4RS-422A插頭引腳定義圖圖9-5RS-422A接口電平轉移電路9.251單片機串行口基本結構與操作方式9.2.1串行口的基本組成9.2.2串行口的SFR寄存器9.2.3串行口的工作方式9.2.4串行口的應用9.2.5例題返回
如圖9.2.1所示,串行口由發(fā)送控制、接收控制、波特率輸入管理和發(fā)送/接收緩沖器SBUF組成。串行口的通信操作體現為累加器A與發(fā)送/接收緩沖器SBUF間的數據傳送操作。9.2.1串行口的基本組成圖9.2.1單片機串行口示意圖當對串行口完成初始化操作后要發(fā)送數據時,待發(fā)送的數據由A送入SBUF中,在發(fā)送控制器控制下組成幀結構并自動以串行方式發(fā)送到TXD端,在發(fā)送完畢后置位TI。如果要繼續(xù)發(fā)送,在指令中將TI清零。接收數據時,置位接收允許位才開始串行接收操作,在接收控制器控制下,通過移位寄存器將串行數據送入SBUF。圖9.2.1單片機串行口示意圖1.SBUF—串行口數據緩沖器2.SCON—串行口控制寄存器3.PCON—電源及波特率選擇寄存器9.2.2串行口的SFR寄存器1)共兩個:一個發(fā)送寄存器SBUF,一個接收SBUF,二者共用一個地址99H。2)SBUF為不可位尋址寄存器。3)SBUF只能與A實現數據傳送。1.串行口發(fā)送/接收緩沖器SBUF發(fā)送中斷標志接收中斷標志SM0SM1SM2RENTB8RB8TIRI工作方式選擇多機通信控制位允許串行接收位接收數據的第9位發(fā)送數據的第9位9FH9EH9DH9CH9BH9AH99H98H2.串行口控制寄存器SCON
SCON為可位尋址寄存器,用于串行口的方式設定和數據傳送控制,直接地址為98H。其功能位規(guī)定如下:SM0SM1工作方式功能波特率00方式08位同步移位寄存器fosc/1201方式18位UART可變10方式29位UARTfosc/64或fosc/3211方式39位UART可變例:設串行口工作在方式1,允許接收,則指令為:MOVSCON,#01010000B1)SM0、SM1
這兩位為串行方式的定義方式選擇位。用來選擇串行口的四種工作方式,如下表。2)SM2該位為串行多機通信控制位。在方式2、方式3中用于
多機通信控制。在方式2、方式3的接收狀態(tài)中:若SM2=1,
當接收到的第9位(RB8)為零時舍棄接收到的數據,RI清零;
當RB8為1時,將接收到的數據送SBUF中,并將RI置1。3)REN該位為允許接收位。REN=1時允許接收,REN由指令置位或清零。4)TB8該位為第9位發(fā)送數據。多機通信(方式2、方式3)中TB8標明主機發(fā)送的是地址還是數據,TB8=0為數據,TB8=1為地址。TB8由指令置位或清零。5)RB8該位為多機通信(方式2、方式3)中用來存放接收到的第9位數據,用以表明所接收的數據的特征。6)TI該位為發(fā)送中斷標志位。方式0時,發(fā)送完8位數據后由硬件置位,其他方式下發(fā)送停止位時由硬件置位,并請求中斷。T1=1表示幀發(fā)送結束,可供查詢,TI由指令清零。7)RI該位為接收中斷標志位。方式0時,接收完8位數據后由硬件置位,其他方式下接收到停止位時由硬件置位,并請求中斷。RI=1,表示幀接收終了。RI可供查詢,由指令清零。
串行通信只用該位,SMOD=1時,波特率×2;SMOD=0時,波特率不變。SMOD×××GF1GF0PDIDL87H3.電源及波特率選擇寄存器PCON
串行口借用了電源控制寄存器PCON的最高位SMOD,用SMOD作為串行口波特率的倍增位。PCON為不可位尋址,直接地址為87H。
9.2.3串行口的工作方式SM0SM1工作方式功能波特率00方式08位同步移位寄存器fosc/1201方式18位UART可變10方式29位UARTfosc/64或fosc/3211方式39位UART可變1.方式01)特點
①用作串行I/0擴展,具有固定的波特率,為Fosc/12。②同步發(fā)送/接收,由TXD提供移位脈沖,RXD用作數據I/O通道。
③發(fā)送/接收8位數據,低位在先。2)發(fā)送操作
當執(zhí)行一條“MOVSBUF,A”指令時,啟動發(fā)送操作,由TXD輸出移位脈沖,由RXD串行發(fā)送SBUF中的數據。發(fā)送完8位數據后自動置T1=1,請求中斷。要繼續(xù)發(fā)送時TI必須由指令清零(Tl=0)。3)接收操作
在RI=0條件下,置REN=1時啟動一幀數據的接收,由TXD輸出移位脈沖,由RXD接收串行數據到A中。接收完一幀自動置位RI,請求中斷,想繼續(xù)接收時要用指令清除RI。2.方式11)特點
①8位UART接口。②幀結構為10位,起始位0,8位數據,l位停止位。
③波特率由指令設置,由T1的溢出率決定。2)發(fā)送操作
當執(zhí)行一條“MOVSBUF,A”指令時,A中的數據從TXD端實現異步發(fā)送。發(fā)送完一幀后置TI=0并請求中斷,要求繼續(xù)發(fā)送時,須指令清零TI。3)接收操作
當置位REN時,串行口采樣RXD,當采樣到I至0的跳變時,確認串行數據幀的起始位,開始接收一幀數據,直到停止位到來時,把停止位送入RB8中,置位RI請求中斷并通知CPU從SBUF中取走接收的數據。RI由指令清零。3.方式2和方式31)特點
①9位UART接口。②幀結構為11位,包括起始位0、8位數據位、1位可編程位TB8/RB8和停止位l。
③波特率在方式2中固定為Fosc/32或Fosc/64由SMOD位選擇。SMOD=1時,波特率為Fosc/32;SMOD=0時.波特率為Fosc/64。方式3中波特率決定于T1的溢出率。
方式2和方式3具有多機通信功能,兩種方式除了波特率設置不同外,其余完全相同。2)發(fā)送操作
發(fā)送數據操作前,由指令設置TB8(如作為奇偶校驗位或地址/數據標志位),將要發(fā)送的數據由A寫入SBUF中后啟動發(fā)送操作。在發(fā)送操作中內部邏輯會把TB8裝入發(fā)送移位寄存器的第9位位置,然后發(fā)送一幀完整的數據,發(fā)送完畢時置位TI。TI由指令清零。多機通信的發(fā)送操作中,用TB8作地址/數據標識,TB8=-l為地址幀,TB8=0為數據幀。3)接收操作
當置位SEN位且RI=0時,啟動接收操作,幀結構上的第9位送入RB8中。對所接收的數據則視SM2和RB8的狀態(tài)決定是否會使RI置1,并清求中斷,接收數據。當置SM2=0時,RB8不論任何狀態(tài)R1都置1,串行口都接收發(fā)送來的數據。當置SM2=1時,為多機通信方式,接收到的RB8為地址/數據標識位。當RB8=1時接收的信息為地址幀,此時置位R1,串行口接收發(fā)進來的數據。當RB8=0時接收的信息為數據幀。若SM2=1時,R1不會置位,此幀數據丟棄;若SM2=0,則SBUF接收發(fā)送來的數據。1.串行口的波特率9.2.4串行口的應用方式0和方式2的波特率是不變的。方式0的波特率為Fosc/12,方式2的波特率為Fosc/32或Fosc/64,視SMOD位設置選擇而定。SMOD=1時波特率為Fosc/32,SMOD=0時波特率為Fosc/64。方式l和方式3中的波特率是可變的,其具體數值由定時器T1的溢出率和SMOD位確定,即:
波特率=溢出率T1作波特率發(fā)生器使用時,通常選擇計數初值自動重裝的方式即方式2,工作在定時器狀態(tài),設計數初值為X,每過256-X個機器周期,T1就會產生一次溢出,其溢出周期為:
溢出率為溢出周期的倒數,故
波特率=波特率/(b/s)fosc/MHzSMOD定時器1C/模式初始值方式0:1M方式2:375k方式1、3:62.5k19.2k9.6k4.8k2.4k1.2k137.5k11011012121211.05911.05911.05911.05911.05911.986612×1110000000××000000000××222222221××FFHFDHFDHFAHF4HE8H1DH72HFEEBHT波特率=表9-1常用波特率表2.串行口的多機通信1)多機通信的連接方式
串行口的方式2和方式3具有多機通信功能,即可實現一臺主單片機和若干個從單片機構成總線式的多機分布式系統(tǒng),其連接方式如圖9.2.2所示。圖9.2.251的多機通信連接方式2)多機通信原理
多機通信時充分利用了單片機內的多機通信控制位SM2。當從機SM2=1時,從機只接收主機發(fā)出的地址幀(第9位為1),對數據幀(第9位為0)不予理睬;而當SM20時,可以接收主機發(fā)送的所有信息。多機通信過程如下:
所有從機的SM2置位1,都處于只接收地址幀的狀態(tài)。
主機發(fā)送一幀地址信息,其中8位地址,第9位為1表示是地址幀。
所有從機接收到地址幀后,進行中斷處理,把接收到的地址與自身地址相比較,地址相符時置SM2=0,不相符時維持SM2=1。
由于被尋址的從機使SM2=0,可以接受主機隨后發(fā)送的信息,實現主機與被尋址從機的雙機通信。
被尋址的從機通信完畢后,置SM2=1,恢復多機系統(tǒng)原有狀態(tài)。3)通信協議
多機通信是一個復雜的通信過程,必須有通信協議來保證多機通信的可操作性和操作秩序,這些通信協議應包括從機的地址、主機的控制命令、從機的狀態(tài)字格式和數據通信格式等的約定。3.數據通信中的校驗與糾錯1)奇偶校驗
51數據通信使用7位的ASCⅡ碼時,奇偶校驗位可放在字節(jié)的最高位;而8位數據通信時,使用方式2和方式3的9位數據通信,奇偶校驗位為第9位。奇偶校驗的操作過程:當發(fā)送一個數據字節(jié)時,數據與奇偶位組成一幀一并發(fā)送;當接收方接收到一幀數據后,將數據和奇偶位分解,將接收數據送入A中,并將PSW中的奇偶位與傳送過來的奇偶位相比較,若不同,則傳進出錯。2)累加和校驗
如果傳送一個數據塊中有n個字節(jié),在數據塊傳送之前對n個字節(jié)進行加運算,形成累加和,把累加和附在n個字節(jié)后面?zhèn)魉停邮辗浇邮盏絥個字節(jié)后也按同樣方法進行n個字節(jié)的加運算,并將兩個累加和進行比較,如果不同,表示數據塊傳送出錯。3)循環(huán)冗余校驗其基本原理是將一個數據塊看成一個很長的二進制數(如將一個128個字節(jié)的數據塊看成是一個1024位的二進制數),然后用一個特定的數去除它,將余數作校驗碼附在數據塊后一起發(fā)送。在接收到該數據塊和校驗碼后,對它們進行同樣的運算,所得余數應為零,如果不為零表示數據傳送出錯。5)通信中的糾錯
無論采用上述那種校驗方法t只能發(fā)現數據通信中的錯誤,發(fā)現出錯后要求對方重發(fā)一遍來糾正錯誤,這在實時信息系統(tǒng)中無法實現(因信源已變)。即使保留有信源樣本,當差錯很頻繁時會消耗大量的通信時間。這時就應借助具有糾錯能力的編碼通信。糾錯碼是采用加大碼距的辦法來區(qū)別非法代碼,其糾錯原理建立在概率統(tǒng)計的基礎上,即出現兩個差錯的概率遠小于出現一個差錯的概率,而出現三個差錯的概率又遠小于出現兩個差錯的概率。因此,當接收到一個非法代碼時,其正確代碼應是邏輯空間中離它最近的有效代碼。目前,常用的糾錯碼有漢明碼、檢二糾一碼、矩形碼等。[例1]串行口的波特率利用51的串行口UART實現一個數據塊的發(fā)送。設發(fā)送數據緩沖區(qū)首地址為50H,發(fā)送數據長度(字節(jié)數)為10H;串行口為方式1工作
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 歷史●福建卷丨2021年福建省普通高中學業(yè)水平選擇性考試歷史試卷及答案
- 《網絡與信息安全管理員》模擬練習題(含答案)
- 2025年CSCO指南更新要點
- 袁世碩《中國古代文學作品選》(明代)
- AI大模型驅動的數字化港口物聯網平臺建設方案
- 重癥監(jiān)護病房的身體約束實踐
- 2024年免疫球蛋白診斷血清資金需求報告代可行性研究報告
- 2025年全民科學素質競賽網絡知識競賽試題庫及答案(共180題)
- 銷售面試題目及答案
- 吸痰的試題及答案
- 2024老年公寓租賃合同模板
- 2023-2024學年浙江省寧波市江北區(qū)七年級(下)期末數學試卷(含答案)
- 《多聯機空調系統(tǒng)工程技術規(guī)程》JGJ174-2010
- 人教部編版語文六年級下冊1-6單元作文習作范文
- GB/T 44132-2024車用動力電池回收利用通用要求
- 初中英語語法、詞匯及固定搭配訓練100題-含答案
- 我喜歡的書(教學設計)2023-2024學年綜合實踐活動五年級下冊 教科版
- 公路工程投標方案(技術標)
- GB/T 25390-2024風能發(fā)電系統(tǒng)風力發(fā)電機組球墨鑄鐵件
- MOOC 中國傳統(tǒng)藝術-篆刻、書法、水墨畫體驗與欣賞-哈爾濱工業(yè)大學 中國大學慕課答案
- 社交焦慮對人際關系的影響
評論
0/150
提交評論