版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第7章 串行接口與應(yīng)用,7.1 串行通信的基本知識 7.2 MCS-51單片機(jī)串行口的結(jié)構(gòu)與工作方式 7.3 主從式多機(jī)通信,退出,7.1 串行通信的基本知識,在MCS-51單片機(jī)內(nèi)部,有一個(gè)全雙工串行接口,能同時(shí)進(jìn)行發(fā)送和接收數(shù)據(jù)。利用這個(gè)串行接口,可以實(shí)現(xiàn)單片機(jī)之間的單機(jī)通信、多機(jī)通信,以及與PC機(jī)之間的通信。,7.1.1 數(shù)據(jù)通信的基本概念 通信:信息交換。CPU與外設(shè)、一臺計(jì)算機(jī)與其他計(jì)算機(jī)等之間進(jìn)行信息交換。 有兩種通信方式:一種是并行通信,一種是串行通信。 串行通信有三種方式:單工通信、半雙工通信和全雙工通信。 1、 異步通信,7.2 MCS-51單片機(jī)串行口的結(jié)構(gòu)與工作方式,7.
2、2.1 串行口的結(jié)構(gòu) MCS-51有一個(gè)可編程的全雙工串行通信接口,可作為通用異步接收/發(fā)送器UART,也可作為同步移位寄存器。它的幀格式有8位、10位和11位,可以設(shè)置為固定波特率和可變波特率,給使用者帶來很大的靈活性。,7.2.2 串行口控制寄存器SCON和特殊功能寄存器PCON 1、串行口控制寄存器SCON 串行口控制寄存器SCON決定串行口通信工作方式,控制數(shù)據(jù)的接收和發(fā)送,并標(biāo)示串行口的工作狀態(tài)等。其位格式為:,SM0、SM1:串行口工作方式控制位,兩位對應(yīng)四種工作方式,如表7-1所示(fosc是晶振頻率)。,2、特殊功能寄存器PCON 特殊功能寄存器PCON中只有一位SMOD與串行
3、口工作有關(guān),它的位格式為: SMOD:波特率倍增位。串行口工作在方式1、方式2、方式3時(shí),若SMOD=1,則波特率提高一倍;若SMOD=0,則波特率不提高一倍。單片機(jī)復(fù)位時(shí),SMOD=0。,7.2.3 波特率設(shè)計(jì) 1、方式0的波特率 工作方式0時(shí),移位脈沖由機(jī)器周期的第6個(gè)狀態(tài)周期S6給出,每個(gè)機(jī)器周期產(chǎn)生一個(gè)移位脈沖,發(fā)送或接收一位數(shù)據(jù)。因此,波特率是固定的,為振蕩頻率的1/12,不受PCON寄存器中SMOD的影響。用公式表示為: 工作方式0的波特率=fosc/12,2、方式2的波特率 方式2波特率取決于系統(tǒng)振蕩頻率及PCON中的SMOD位的值,當(dāng)SMOD=0時(shí),波特率為fosc的1/64;
4、當(dāng)SMOD=1時(shí),波特率為fosc的1/32,用公式表示為; 工作方式2波特率=(2SMOD/64)fosc,3、工作方式1和方式3的波特率,方式1、3波特率=2SMOD/32(定時(shí)器1的溢出率),【例8-1】8051單片機(jī)時(shí)鐘振蕩頻率為11.0592MHZ,選用定時(shí)器T1(工作在方式2)作波特率發(fā)生器,波特率為4800bps,求定時(shí)器T1的初值X。 解 設(shè)波特率控制位SMOD=0,則: X=256(11.0592106(0+1)/(3844800)=250=FAH 所以,(TH1)=(TL1)=FAH 系統(tǒng)晶振頻率選用11.0592MHZ,是為了使初值為整數(shù),從而產(chǎn)生精確的波特率。,7.2.
5、4 串行口的四種工作方式 串行口的四種工作方式中,串行通信只使用方式1、方式2、方式3,方式0主要用于擴(kuò)展并行輸入輸出口。 1、串行口工作方式0,7.3 主從式多機(jī)通信,7.3.3串行通信實(shí)例 【例7-1】有兩臺8031單片機(jī)相距很近,直接將它們的串行口相連,1#機(jī)的TXD接2#機(jī)的RXD,2#機(jī)的TXD接1#機(jī)的RXD,二機(jī)的GND相連。二機(jī)的晶振頻率均為11.0592MHZ,通信的波特率為4800bps。現(xiàn)將第一臺8031單片機(jī)片內(nèi)RAM40H5FH單元內(nèi)的數(shù)據(jù),串行發(fā)送到第二臺8031單片機(jī)片內(nèi)RAM60H7FH單元中。,發(fā)送與接收的參考程序如下: 1#單片機(jī)發(fā)送程序: ORG 1000
6、H TX:MOV TMOD , #20H MOV TH1 , #0FAH MOV TL1 , #0FAH MOV SCON , #40H;設(shè)定工作方式1 MOV PCON, #00H; 設(shè)SMOD=0 SETB TR1,MOV R0 , #40H;設(shè)發(fā)送數(shù)據(jù)的地址指針 MOV R2 , #20H;設(shè)發(fā)送數(shù)據(jù)長度 LOOP:MOV A , R0; 取發(fā)送數(shù)據(jù)送A MOV C , PSW.0 MOV TB8 , C;奇偶位送TB8 MOV SBUF , A;啟動(dòng)發(fā)送 WAIT:JBC TI , LL1;判發(fā)送中斷標(biāo)志 SJMP WAIT,LL1:INC R0 DJNZ R2 , LOOP RET
7、2#單片機(jī)接收程序: ORG 1000H RX:MOV TMOD , #20H MOV TH1 , #0FAH MOV TL1 , #0FAH MOV SCON , #50H;設(shè)定工作方式1,并允許接收,MOV PCON , #00H SETB TR1 MOV R0 , #60H MOV R2 , #20H LOOP:JBC RI , MM1;等待接收數(shù)據(jù) SJMP LOOP MM1:MOV A , SBUF;讀入一幀數(shù)據(jù) JB PSW.0 , PP1;判接收端奇偶 JB RB8 , ERROR;判發(fā)送端奇偶 SJMP RIGHT,PP1:JNB RB8 , ERROR;接收出錯(cuò) RIGHT:
8、MOV R0 , A;接收正確 INC R0 DJNZ R2 , LOOP ERROR:SETB PSW.5;置出錯(cuò)標(biāo)志 RET,【例7-2】甲乙兩機(jī)進(jìn)行串行通信,將甲機(jī)片外RAM中1000H單元開始的32個(gè)數(shù)據(jù)發(fā)送到乙機(jī)的片外RAM 1000H開始的單元中。二機(jī)的晶振頻率均為11.0592MHZ,通信的波特率為1200bps。 設(shè)甲、乙機(jī)串行口均工作在方式1,根據(jù)發(fā)送和接收的波特率,設(shè)置定時(shí)器T1工作在方式2,當(dāng)SMOD=0,則計(jì)數(shù)初值為E8H。甲機(jī)發(fā)送子程序流程圖如圖7-7(a)所示,乙機(jī)接收子程序流程圖如圖7-7(b)所示。,參考程序如下: (1)甲機(jī)發(fā)送子程序: ORG 1000H T
9、TTT:MOV TMOD , #20H MOV TH1 , #0E8H MOV TL1 , #0E8H SETB TR1 MOV SCON , #50H MOV 87H , #00H,ENTER:MOV DPH , #10H MOV DPL , #00H MOV R4 , #20H MOV R5 , #00H TX1:MOV A , #04H MOV SBUF , A WAIT1:JBC TI , RX1 SJMP WAIT1 RX1:JBC RI , NEXT1 SJMP RX1,NEXT1:MOV A , SBUF CJNE A , #00H , TX1 TX2:MOV A , R4 MO
10、V SBUF , A ADD A , R5 MOV R5 , A WAIT2:JBC TI , TX3 SJMP WAIT2 TX3:MOVX A , DPTR MOV SBUF , A ADD A , R5 MOV R5 , A INC DPTR,WAIT3:JBC TI , NEXT2 SJMP WAIT3 NEXT2:DJNZ R4 , TX3 MOV A , R5 MOV SBUF , A WAIT4:JBC TI , RX_11H SJMP WAIT4 RX_11H:JBC RI , IF_11H SJMP RX_11H IF_11H:MOV A , SBUF CJNE A , #1
11、1H , ENTER RET,(2)乙機(jī)接收子程序: ORG 1000H RRRR:MOV TMOD , #20H MOV TH1 , #0E8H MOV TL1 , #0E8H SETB TR1 MOV SCON , #50H MOV 87H, #00H ENTER:MOV DPH , #10H MOV DPL , #00H MOV R5 , #00H,RX1:JBC RI , IF_04H SJMP RX1 IF_04H:MOV A , SBUF CJNE A , #04H , TX_FFH MOV A , #00H MOV SBUF , A WAIT1:JBC TI , RX2 SJMP
12、 WAIT1 LJMP RX2 TX_FFH:MOV A , #0FFH MOV SBUF , A,WAIT2:JBC TI , LL1 SJMP WAIT2 LL1:LJMP ENTER RX2:JBC RI , LL2 SJMP RX2 LL2:MOV A , SBUF MOV R4 , A MOV R5 , A RX3:JBC RI , LL3 SJMP RX3,LL3:MOV A , SBUF MOVX DPTR , A INC DPTR ADD A , R5 MOV R5 , A DJNZ R4 , RX3 RX4:JBC RI , LL4 SJMP RX4 LL4:MOV A , S
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業(yè)智能化管理系統(tǒng)應(yīng)用攻略
- 新版英語八年級上冊單元測試卷
- 小學(xué)六年級英語2026年上學(xué)期語法專項(xiàng)綜合真題
- 2026年土木工程質(zhì)量控制與項(xiàng)目管理結(jié)合探討
- 2026年房地產(chǎn)資產(chǎn)證券化對家庭財(cái)產(chǎn)配置的影響
- 施工現(xiàn)場消防設(shè)施維護(hù)管理
- 高速服務(wù)區(qū)行車安全培訓(xùn)課件
- 高速服務(wù)區(qū)安全駕駛培訓(xùn)課件
- 西安市閻良區(qū)(2025年)網(wǎng)格員筆試真題及答案解析
- 2025年貴州省六盤水市盤縣保田鎮(zhèn)招聘社區(qū)工作者真題附答案詳解
- 暨南大學(xué)《法理學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 小學(xué)課后服務(wù)經(jīng)費(fèi)管理方案
- 道路綠化養(yǎng)護(hù)道路綠化養(yǎng)護(hù)方案
- DL-T 5117-2021水下不分散混凝土試驗(yàn)規(guī)程-PDF解密
- 寶馬購車合同
- 安措費(fèi)清單完整版本
- 食品安全管理制度打印版
- 神經(jīng)內(nèi)科品管圈成果匯報(bào)-提高腦卒中偏癱患者早期自我肢體功能鍛煉規(guī)范執(zhí)行率
- 缺血性腦卒中靜脈溶栓護(hù)理
- 電子電路基礎(chǔ)-電子科技大學(xué)中國大學(xué)mooc課后章節(jié)答案期末考試題庫2023年
- 四年級科學(xué)上冊期末試卷及答案-蘇教版
評論
0/150
提交評論