《單片機(jī)原理及應(yīng)用教程》第7章單片機(jī)的串行通信及課件_第1頁
《單片機(jī)原理及應(yīng)用教程》第7章單片機(jī)的串行通信及課件_第2頁
《單片機(jī)原理及應(yīng)用教程》第7章單片機(jī)的串行通信及課件_第3頁
《單片機(jī)原理及應(yīng)用教程》第7章單片機(jī)的串行通信及課件_第4頁
《單片機(jī)原理及應(yīng)用教程》第7章單片機(jī)的串行通信及課件_第5頁
已閱讀5頁,還剩35頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

MCS-51單片機(jī)原理及應(yīng)用教程清華大學(xué)出版社劉迎春主編MCS-51單片機(jī)原理及應(yīng)用教程清華大學(xué)出版社1第7章單片機(jī)的串行通信及接口串行通信的有關(guān)概念MCS-51串行通信接口及控制寄存器串行接口的工作方式串行口的應(yīng)用第7章單片機(jī)的串行通信及接口串行通信的有關(guān)概念

7.1.1數(shù)據(jù)通信7.1串行通信的有關(guān)概念(a)并行傳輸 (b)串行傳輸圖7.1兩種通信方式7.1.1數(shù)據(jù)通信7.1串行通信的有關(guān)概念(7.1.2串行通信的傳輸方向

(a)單工方式 (b)半雙工方式(c)全雙工方式7.1.2串行通信的傳輸方向(a1.異步通信7.1.3異步通信和同步通信(b)有空閑位圖7.3串行異步通信的幀格式1.異步通信7.1.3異步通信和同步通信(b)有空閑2.同步通信7.1.4串行通信的波特率波特率,即為數(shù)據(jù)傳送速率,表示每秒鐘傳送二進(jìn)制代碼的位數(shù),它的單位是b/s。波特率對于CPU與外界的通信是很重要的。

圖7.4串行同步通信格式7.1.5遠(yuǎn)距離串行通信2.同步通信7.1.4串行通信的波特率波特率,即為數(shù)7.1.6串行通信接口圖7.6UART的結(jié)構(gòu)示意圖7.1.6串行通信接口圖7.6UART的結(jié)構(gòu)示意圖7.2.1MCS-51串行接口機(jī)構(gòu)MCS-8051通過引腳RXD(P3.0,串行數(shù)據(jù)接收端)和引腳TXD(P3.1,串行數(shù)據(jù)發(fā)送端)與外界進(jìn)行通信。

7.2MCS-51串行通信接口及控制寄存器7.2.1MCS-51串行接口機(jī)構(gòu)MCS-8051通過引7.2.2串行口控制寄存器1.串行口控制寄存器SCON圖7.8串行口控制寄存器表7.1串行口的工作方式選擇7.2.2串行口控制寄存器1.串行口控制寄存器SCO電源控制寄存器在串行口控制中只用了一位SMOD。見圖7.9。

SMOD稱為串行口波特率倍增位,在串行口方式1、方式2和方式3時,波特率與2SMOD成正比,亦即當(dāng)SMOD=1時,波特率提高一倍。復(fù)位時,SMOD=0。2.電源控制寄存器PCON電源控制寄存器在串行口控制中只用了一位SMOD。見圖7.9。

7.3.1工作方式07.3串行接口的工作方式

(a)方式0發(fā)送電路(b)方式0接收電路圖7.10方式0應(yīng)用電路圖7.11串行口方式0發(fā)送時序圖7.12串行口方式0接收時序7.3.1工作方式07.3串行接口的工作方式7.3.2工作方式1幀格式如下:串行口方式1的發(fā)送和接收時序如圖7.13所示。7.3.2工作方式1幀格式如下:串行口方式1的發(fā)送和接收7.3.3工作方式2和工作方式3其幀格式為:方式2和方式3的發(fā)送、接收時序與方式1類似,只是增加了一位第九位。發(fā)送和接收時序可參考圖7.13。7.3.3工作方式2和工作方式3其幀格式為:方式2和方式7.3.4波特率設(shè)計1.方式0的波特率方式0波特率=fosc/122.方式2的波特率方式2波特率取決于PCON中SMOD位的值;當(dāng)SMOD=0時,波特率為fosc的1/64;若SMOD=1,則波特率為fosc的1/32。3.方式1和方式3的波特率(1)方式1、方式3波特率=(2)方式1、方式3波特率=7.3.4波特率設(shè)計1.方式0的波特率2.方式2例18051單片機(jī)時鐘振蕩頻率為11.0592MHz,選用定時器T1工作模式2作為波特率發(fā)生器,波特率為2400b/s,求初值。并編寫初始化程序。解:設(shè)置波特率控制位(SMOD)=0F4H所以:(TH1)=(TL1)=F4H初始化程序?yàn)椋篒NI: MOV TMOD,#20H ;T1定時方式,模式2MOV PCON,#00H ;SMOD=0MOV TH1,#0F4HMOV TL1,#0F4HSETB TR1MOV SCON,#50H ;串行口方式1,允許接收……例18051單片機(jī)時鐘振蕩頻率為11.0592MHz,選用7.4串行口的應(yīng)用7.4.1同步通信方式的應(yīng)用例1

利用74LS164擴(kuò)展并行口,構(gòu)成8位靜態(tài)顯示數(shù)碼管接口。設(shè)計電路圖并編寫相應(yīng)的顯示驅(qū)動程序。顯示緩存為40H~47H單元,存放被顯示數(shù)字的共陰極代碼。解:根據(jù)題目要求,硬件電路如圖7.14所示。圖中只畫了2位數(shù)碼管,剩余6位數(shù)碼管電路與前兩位類似。圖7.14串行口擴(kuò)展數(shù)碼管顯示接口7.4串行口的應(yīng)用7.4.1同步通信方式的應(yīng)用例17.4.2方式1雙機(jī)通信應(yīng)用例1

甲乙機(jī)以方式1進(jìn)行串行數(shù)據(jù)通信,其波特率為2400b/s。甲機(jī)發(fā)送,發(fā)送數(shù)據(jù)在外部RAM4000H~401FH單元中。乙機(jī)接收,并把接收到的數(shù)據(jù)塊首末地址及數(shù)據(jù)依次存入外部RAM5000H開始的區(qū)域中。數(shù)據(jù)為ASCII碼形式,采用奇校驗(yàn),單片機(jī)時鐘振蕩頻率為11.0592MHz。解:求計數(shù)器初值(2) 可采用奇校驗(yàn)(3) 題目要求將被傳送的數(shù)據(jù)和數(shù)據(jù)塊的首末地址一起傳送至接收方,因此串行發(fā)送的內(nèi)容包括數(shù)據(jù)塊的首末地址和數(shù)據(jù)兩部分內(nèi)容。

7.4.2方式1雙機(jī)通信應(yīng)用例1甲乙機(jī)以方式1進(jìn)行串行7.4.3多機(jī)通信1.多機(jī)通信原理2.多機(jī)通信舉例圖7.15多機(jī)通信系統(tǒng)框圖例1

設(shè)計一255臺從機(jī)的主從式多機(jī)通信系統(tǒng)。解:(1)通信協(xié)議:(2)波特率與時間常數(shù)的確定

(3)主機(jī)的通信軟件(查詢方式)(4)從機(jī)的通信軟件(中斷方式)7.4.3多機(jī)通信1.多機(jī)通信原理2.多機(jī)通信舉(1)什么是串行異步通信,它有哪些作用?(2)8051單片機(jī)的串行口由哪些功能部件組成?各有什么作用?(3)8051串行口有幾種工作方式?有幾種幀格式?各工作方式的波特率如何確定?(4)假定異步串行通信采用10位幀格式,字符格式為一個起始位、八個數(shù)據(jù)位、一個停止位,請畫出傳送ASCII碼字符“T”并且采用奇偶較驗(yàn)的幀格式。(5)8051中SCON的SM2,TB8,RB8有何作用?(6)PCON中SMOD控制位的功能是什么?(7)簡述串行通信接口芯片UART的主要功能。(8)簡述單片機(jī)多機(jī)通信的原理。(9)設(shè)fosc=11.0592MHz,試編寫一段程序,對串口初始化,使之工作于方式l,波特率為1200b/s,用查詢串行口狀態(tài)的方法讀出接收緩沖器的數(shù)據(jù)并回送到發(fā)送緩沖器。7.5思考練習(xí)題(1)什么是串行異步通信,它有哪些作用?7.5思考練習(xí)題

(10)若晶振為fosc=11.0592MHz,采用串行口工作方式1,波特率為4800b/s。寫出用T1作為波特率發(fā)生器的方式字和計數(shù)初值。(11)串行口工作在方式1和方式3時,其波特率與定時器T1工作模式2的初值及SMOD位的關(guān)系如何?設(shè)fosc=6MHz,現(xiàn)利用定時器T1模式2產(chǎn)生的波特率為110b/s。試計算定時器初值。(12)說明為什么定時器T1用作串行口波特率發(fā)生器時,常選用工作模式2。(13)若定時器T1設(shè)置成模式2,作波特率發(fā)生器,已知fosc=6MHz。求可能產(chǎn)生的最高和最低的波特率是多少?(14)以8031串行口按工作方式1進(jìn)行串行數(shù)據(jù)通信。假定波特率為1200b/s,以中斷方式傳送數(shù)據(jù)。試編寫全雙工通信程序。(15)以8031串行口按工作方式3進(jìn)行串行數(shù)據(jù)通信。假定波特率為1200b/s,第9數(shù)據(jù)位作奇偶校驗(yàn)位,以中斷方式傳送數(shù)據(jù)。試編寫通信程序。(16)設(shè)計一個單片機(jī)的雙機(jī)通信系統(tǒng),并編寫通信程序。將甲機(jī)內(nèi)部RAM30H~3FH存儲區(qū)的數(shù)據(jù)塊通過串行口傳送到乙機(jī)內(nèi)部RAM40H~4FH存儲區(qū)中去。(10)若晶振為fosc=11.0592MHz,采用串行口MCS-51單片機(jī)原理及應(yīng)用教程清華大學(xué)出版社劉迎春主編MCS-51單片機(jī)原理及應(yīng)用教程清華大學(xué)出版社21第7章單片機(jī)的串行通信及接口串行通信的有關(guān)概念MCS-51串行通信接口及控制寄存器串行接口的工作方式串行口的應(yīng)用第7章單片機(jī)的串行通信及接口串行通信的有關(guān)概念

7.1.1數(shù)據(jù)通信7.1串行通信的有關(guān)概念(a)并行傳輸 (b)串行傳輸圖7.1兩種通信方式7.1.1數(shù)據(jù)通信7.1串行通信的有關(guān)概念(7.1.2串行通信的傳輸方向

(a)單工方式 (b)半雙工方式(c)全雙工方式7.1.2串行通信的傳輸方向(a1.異步通信7.1.3異步通信和同步通信(b)有空閑位圖7.3串行異步通信的幀格式1.異步通信7.1.3異步通信和同步通信(b)有空閑2.同步通信7.1.4串行通信的波特率波特率,即為數(shù)據(jù)傳送速率,表示每秒鐘傳送二進(jìn)制代碼的位數(shù),它的單位是b/s。波特率對于CPU與外界的通信是很重要的。

圖7.4串行同步通信格式7.1.5遠(yuǎn)距離串行通信2.同步通信7.1.4串行通信的波特率波特率,即為數(shù)7.1.6串行通信接口圖7.6UART的結(jié)構(gòu)示意圖7.1.6串行通信接口圖7.6UART的結(jié)構(gòu)示意圖7.2.1MCS-51串行接口機(jī)構(gòu)MCS-8051通過引腳RXD(P3.0,串行數(shù)據(jù)接收端)和引腳TXD(P3.1,串行數(shù)據(jù)發(fā)送端)與外界進(jìn)行通信。

7.2MCS-51串行通信接口及控制寄存器7.2.1MCS-51串行接口機(jī)構(gòu)MCS-8051通過引7.2.2串行口控制寄存器1.串行口控制寄存器SCON圖7.8串行口控制寄存器表7.1串行口的工作方式選擇7.2.2串行口控制寄存器1.串行口控制寄存器SCO電源控制寄存器在串行口控制中只用了一位SMOD。見圖7.9。

SMOD稱為串行口波特率倍增位,在串行口方式1、方式2和方式3時,波特率與2SMOD成正比,亦即當(dāng)SMOD=1時,波特率提高一倍。復(fù)位時,SMOD=0。2.電源控制寄存器PCON電源控制寄存器在串行口控制中只用了一位SMOD。見圖7.9。

7.3.1工作方式07.3串行接口的工作方式

(a)方式0發(fā)送電路(b)方式0接收電路圖7.10方式0應(yīng)用電路圖7.11串行口方式0發(fā)送時序圖7.12串行口方式0接收時序7.3.1工作方式07.3串行接口的工作方式7.3.2工作方式1幀格式如下:串行口方式1的發(fā)送和接收時序如圖7.13所示。7.3.2工作方式1幀格式如下:串行口方式1的發(fā)送和接收7.3.3工作方式2和工作方式3其幀格式為:方式2和方式3的發(fā)送、接收時序與方式1類似,只是增加了一位第九位。發(fā)送和接收時序可參考圖7.13。7.3.3工作方式2和工作方式3其幀格式為:方式2和方式7.3.4波特率設(shè)計1.方式0的波特率方式0波特率=fosc/122.方式2的波特率方式2波特率取決于PCON中SMOD位的值;當(dāng)SMOD=0時,波特率為fosc的1/64;若SMOD=1,則波特率為fosc的1/32。3.方式1和方式3的波特率(1)方式1、方式3波特率=(2)方式1、方式3波特率=7.3.4波特率設(shè)計1.方式0的波特率2.方式2例18051單片機(jī)時鐘振蕩頻率為11.0592MHz,選用定時器T1工作模式2作為波特率發(fā)生器,波特率為2400b/s,求初值。并編寫初始化程序。解:設(shè)置波特率控制位(SMOD)=0F4H所以:(TH1)=(TL1)=F4H初始化程序?yàn)椋篒NI: MOV TMOD,#20H ;T1定時方式,模式2MOV PCON,#00H ;SMOD=0MOV TH1,#0F4HMOV TL1,#0F4HSETB TR1MOV SCON,#50H ;串行口方式1,允許接收……例18051單片機(jī)時鐘振蕩頻率為11.0592MHz,選用7.4串行口的應(yīng)用7.4.1同步通信方式的應(yīng)用例1

利用74LS164擴(kuò)展并行口,構(gòu)成8位靜態(tài)顯示數(shù)碼管接口。設(shè)計電路圖并編寫相應(yīng)的顯示驅(qū)動程序。顯示緩存為40H~47H單元,存放被顯示數(shù)字的共陰極代碼。解:根據(jù)題目要求,硬件電路如圖7.14所示。圖中只畫了2位數(shù)碼管,剩余6位數(shù)碼管電路與前兩位類似。圖7.14串行口擴(kuò)展數(shù)碼管顯示接口7.4串行口的應(yīng)用7.4.1同步通信方式的應(yīng)用例17.4.2方式1雙機(jī)通信應(yīng)用例1

甲乙機(jī)以方式1進(jìn)行串行數(shù)據(jù)通信,其波特率為2400b/s。甲機(jī)發(fā)送,發(fā)送數(shù)據(jù)在外部RAM4000H~401FH單元中。乙機(jī)接收,并把接收到的數(shù)據(jù)塊首末地址及數(shù)據(jù)依次存入外部RAM5000H開始的區(qū)域中。數(shù)據(jù)為ASCII碼形式,采用奇校驗(yàn),單片機(jī)時鐘振蕩頻率為11.0592MHz。解:求計數(shù)器初值(2) 可采用奇校驗(yàn)(3) 題目要求將被傳送的數(shù)據(jù)和數(shù)據(jù)塊的首末地址一起傳送至接收方,因此串行發(fā)送的內(nèi)容包括數(shù)據(jù)塊的首末地址和數(shù)據(jù)兩部分內(nèi)容。

7.4.2方式1雙機(jī)通信應(yīng)用例1甲乙機(jī)以方式1進(jìn)行串行7.4.3多機(jī)通信1.多機(jī)通信原理2.多機(jī)通信舉例圖7.15多機(jī)通信系統(tǒng)框圖例1

設(shè)計一255臺從機(jī)的主從式多機(jī)通信系統(tǒng)。解:(1)通信協(xié)議:(2)波特率與時間常數(shù)的確定

(3)主機(jī)的通信軟件(查詢方式)(4)從機(jī)的通信軟件(中斷方式)7.4.3多機(jī)通信1.多機(jī)通信原理2.多機(jī)通信舉(1)什么是串行異步通信,它有哪些作用?(2)8051單片機(jī)的串行口由哪些功能部件組成?各有什么作用?(3)8051串行口有幾種工作方式?有幾種幀格式?各工作方式的波特率如何確定?(4)假定異步串行通信采用10位幀格式,字符格式為一個起始位、八個數(shù)據(jù)位、一個停止位,請畫出傳送ASCII碼字符“T”并且采用奇偶較驗(yàn)的幀格式。(5)8051中SCON的SM2,TB8,RB8有何作用?(6)PCON中SMOD控制位的功

溫馨提示

  • 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

提交評論