第八章MCS51串行接口_第1頁
第八章MCS51串行接口_第2頁
第八章MCS51串行接口_第3頁
第八章MCS51串行接口_第4頁
第八章MCS51串行接口_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第八章單片機(jī)串行通信8.1串行通信基礎(chǔ)知識一、并行通信和串行通信并行并行數(shù)據(jù)是一位一位傳送的串行1位優(yōu)點:傳輸線少,連線簡單缺點:速度慢適用于遠(yuǎn)距離的通信通信串行串行串行串行通信打印機(jī)計算機(jī)網(wǎng)絡(luò)鼠標(biāo)掃描儀硬盤并行、串行接口的應(yīng)用?I2CSPIRS232USB常見的串行通信接口:選通數(shù)據(jù)8位計算機(jī)并行外設(shè)1001111110011111HL有二個問題需要解決1、如何區(qū)分一位?2、如何將一串0和1還原成數(shù)據(jù)?10011111→

1001111110011111→

1111100110011111如何實現(xiàn)串行通信?二、串行傳輸方式同步傳輸和異步傳輸同步傳輸1位

數(shù)據(jù)計算機(jī)外設(shè)123456781001111110011111同步時鐘1位

數(shù)據(jù)計算機(jī)異步傳輸外設(shè)靠發(fā)送和接收速率相同來保證比特率:位/秒(bps)波特率:碼元/秒(Baud)高位先送發(fā)送速率接收速率在數(shù)字通信中常常用時間間隔相同的符號來表示一位二進(jìn)制數(shù)字。這樣的時間間隔內(nèi)的信號稱為二進(jìn)制碼元,而這個間隔被稱為碼元長度1、同步通信方式

如何區(qū)分?jǐn)?shù)據(jù)的起始?如何將一串0和1還原成數(shù)據(jù)?2、異步通信方式

異步通信協(xié)議:(1)沒有數(shù)據(jù)發(fā)送時,數(shù)據(jù)線保持“1”狀態(tài)(2)發(fā)送數(shù)據(jù)時,先發(fā)起始位“0”,其后是數(shù)據(jù)(3)數(shù)據(jù)后再發(fā)一位停止位“1“因此對于8位數(shù)據(jù)至少要發(fā)送10位例:若比特率為9600bps,則每秒傳輸960幀,即960字符/秒而每位傳輸時間:T=1/9600≈0.104(ms)3、串行通信線路形式單工:廣播全雙工:電話半雙工:對講機(jī)4、串行通信接口(1)UART(UniversalAsynchronousReceiver/Transmitter通用異步接收器/發(fā)送器(2)USRT

(UniversalSynchronousReceiver/Transmitter)通用同步接收器/發(fā)送器8串-并8并-串發(fā)送接收1時鐘時鐘8.2MCS-51串行接口

51單片機(jī)內(nèi)部有一個全雙工的串行接口,具有4種工作方式。與串行口有關(guān)的特殊功能寄存器(SBUF、SCON)一、串行口數(shù)據(jù)綬沖器SBUF(99H)接收、發(fā)送對應(yīng)于同一地址(99H),但實際上是兩個緩存器。兩個引腳二、串行口控制寄存器SCON(98H)1、SM0、SM1控制串行口工作方式

2、SM2允許方式2、3的多機(jī)通信控制位

當(dāng)串行口以方式2、3接收時,若SM2=1,則只有RB8為1時才將接收到的前8位數(shù)據(jù)送入SBUF,并置位RI產(chǎn)生中斷請求,否則丟棄接收到的前8位數(shù)據(jù);而當(dāng)SM2=0時,無論RB8=0/1,都將前8位數(shù)據(jù)裝入SBUF并產(chǎn)生中斷請求。在方式1中若SM2=1→只有收到有效的停止位時才會激活RI在方式0中SM2必須為0。SM0

SM1工作方式功能簡述波特率

00方式08位同步移位寄存器fosc/12

01方式110位UART可變

10方式211位UARTfosc/32或/64

11方式311位UART可變3、REN允許串行接收位,由軟件置/復(fù)位1:允許接收0:不允許接收(允許發(fā)送)

4、TB8在方式2、3中要發(fā)送的第九位數(shù)據(jù),由軟件置/復(fù)位

5、RB8在方式2、3中是接收的第九位數(shù)據(jù)在方式1中若SM2=0,RB8是接收的停止位。

在方式0中不用RB8。6、RI接收中斷標(biāo)志(必須由軟件清除)

在方式0中串行接收到第8位結(jié)束時自動置位。在方式1、2、3中串行接收到停止位時置位。

1111111SBUF11111111RxD1RI=17、TI發(fā)送中斷標(biāo)志(必須由軟件清除)

在方式0中串行發(fā)送第8位結(jié)束時自動置位。

在方式1、2、3中串行發(fā)送停止位的開始時置位8.3MCS-51串行口工作方式

一、方式0的應(yīng)用1、擴(kuò)展并口74LS164DCLK80C51RxDTxDROLED: MOVSCON,#00H;串行口方式0 CLRES;禁止串行中斷 MOVA,#80H;發(fā)光管從左邊亮起LED: CLRP1.0;關(guān)閉并行輸出MOVSBUF,A;串行輸出 JNBTI,$;狀態(tài)查詢 SETBP1.0;開啟并行輸出 ACALLDELAY;狀態(tài)維持

CLRTI;清發(fā)送中斷標(biāo)志 RRA;發(fā)光組合右移 AJMPLED

;繼續(xù)DELAY:MOVR7,#00H MOVR6,#00HDEL:DJNZR7,$DJNZR6,DELRETSTBP1.0使用74164的并行輸出端接8個發(fā)光二極管,利用它的串入并出功能,把發(fā)光二極管從左往右依次點亮,并反復(fù)循環(huán)。假定二極管為共陰極型二、方式1的應(yīng)用(甲、乙通信)一位起始位(0),8位數(shù)據(jù),一位停止位(1),共10位發(fā)送:寫數(shù)據(jù)到SBUF后,立即開始發(fā)送,發(fā)完后置“1”TI接收:接收完,將8位數(shù)據(jù)送入SBUF,同時后置“1”RI接收或發(fā)送速率由波特率確定X=256-fosc?2smod/(384?波特率)假定甲乙機(jī)以串行工作方式1進(jìn)行數(shù)據(jù)通信,其波特率為1200由甲機(jī)發(fā)送,發(fā)送數(shù)據(jù)在外部RAM的4000H~401FH單元由乙機(jī)接收,接收到的數(shù)據(jù)塊首末地址及數(shù)據(jù)內(nèi)容依次存放在外部RAM5000H開始的區(qū)域忽略呼叫及確認(rèn)過程,只考慮數(shù)據(jù)傳輸問題。1.在發(fā)送端,執(zhí)行寫SBUF指令即可啟動一次發(fā)送操作,數(shù)據(jù)通過TXD引腳串行輸出。每次只發(fā)送一幀,一幀發(fā)送完畢,TI自動置1,通知CPU可以繼續(xù)發(fā)送下一幀2.在接收端,若將REN置1,串行口就開始對RXD引腳進(jìn)行采樣采樣到有電平負(fù)跳變時,即可認(rèn)為起始位的開始,隨后啟動接收過程即在移位脈沖控制下,把接收到的數(shù)據(jù)位送入SBUF一幀接收完畢,RI自動置1,通知CPU從SBUF取走接收到的數(shù)據(jù)假定甲乙機(jī)以串行工作方式1進(jìn)行數(shù)據(jù)通信,其波特率為1200由甲機(jī)發(fā)送,發(fā)送數(shù)據(jù)在外部RAM的4000H~401FH單元由乙機(jī)接收,接收到的數(shù)據(jù)塊首末地址及數(shù)據(jù)內(nèi)容依次存放在外部RAM5000H開始的區(qū)域忽略呼叫及確認(rèn)過程,只考慮數(shù)據(jù)傳輸問題。3.假定晶振頻率為6MHz,波特率為1200,波特率不倍增,T1的計數(shù)初值為:X=256-[(6*106*1)/(384*1200)]=243=F3H4.為了波特率不倍增,要SMOD=0,故PCON=00H5.發(fā)送內(nèi)容包括數(shù)據(jù)塊首末地址、數(shù)據(jù)本身兩部分內(nèi)容,地址的傳送采用查詢方式,數(shù)據(jù)以中斷方式因此程序中要先禁止串行中斷,后允許串行中斷甲機(jī)發(fā)送主程序:ORG0023HAJMPACINTORG8030HMOVTMOD,#20HMOVTL1,#0F3HMOVTH1,#0F3HSETBEACLRESMOVPCON,#00HSETBTR1MOVSCON,#40H MOVSBUF,#40HSOUT1:JNBTI,$ CLRTI MOVSBUF,#00HSOUT2:JNBTI,$ CLRTI MOVSBUF,#40HSOUT3:JNBTI,$ CLRTI MOVSBUF,#1FH MOVDPTR,#4000H MOVR7,#20H SETBESAHALT:AJMP$甲機(jī)中斷服務(wù)程序: ORG8100HACINT:MOVXA,@DPTR CLRTI MOVSBUF,A DJNZR7,AEND1 CLRES CLRTR1 AJMPAEND2AEND1:INCDPTRAEND2:RETI

乙機(jī)接收主程序:ORG0023HAJMPBCINTORG8030HMOVTMOD,#20HMOVTL1,#0F3HMOVTH1,#0F3HSETBEACLRESMOVPCON,#00HSETBTR1MOVSCON,#50HMOVDPTR,#5000HMOVR7,#20HSIN1:JNBRI,$CLRRIMOVA,SBUFMOVX@DPTR,AINCDPTRSIN2:JNBRI,$ CLRRI MOVA,SBUFMOVX@DPTR,A INCDPTRSIN3:JNBRI,$ CLRRI MOVA,SBUFMOVX@DPTR,A INCDPTRSIN4:JNBRI,$ CLRRIMOVA,SBUF MOVX@DPTR,A INCDPTR SETBESBHALT:AJMP$乙機(jī)中斷服務(wù)程序: ORG8100HBCINT:MOVA,SBUF MOVX@DPTR,A CLRRI DJNZR7,BEND CLRES CLRTR1BEND:INCDPTRRETI假定甲乙機(jī)以串行工作方式1進(jìn)行數(shù)據(jù)通信,傳送50個字節(jié)數(shù)據(jù)其波特率為1200,波特率倍增,晶振頻率為6MHz由甲機(jī)發(fā)送,發(fā)送數(shù)據(jù)依次存放在外部RAM4000H開始的區(qū)域由乙機(jī)接收,接收到的數(shù)據(jù)依次存放在外部RAM5000H開始的區(qū)域忽略呼叫及確認(rèn)過程,只考慮數(shù)據(jù)傳輸問題。試寫出甲乙機(jī)的初始化程序課后作業(yè)并行并行通信選通狀態(tài)數(shù)據(jù)8位計算機(jī)打印機(jī)一次傳送多位數(shù)據(jù),如8位優(yōu)點:速度快缺點:傳輸線多適用于近距離大數(shù)據(jù)通信在實際工作中,計算機(jī)的CPU與外部設(shè)備之間常常要進(jìn)行信息交換,一臺計算機(jī)與其他計算機(jī)之間也往往要交換信息,所有這些信息交換均可稱為通信。圖2.280C51單片機(jī)芯片引腳及芯片邏輯符號方式2的波特率方式2波特率取決于PCON中SMOD位的值:SMOD=0時,波特率為fosc的1/64;SMOD=1時,波特率為fosc的1/32。

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論