CH7單片機的串行通信技術[詳細]_第1頁
CH7單片機的串行通信技術[詳細]_第2頁
CH7單片機的串行通信技術[詳細]_第3頁
CH7單片機的串行通信技術[詳細]_第4頁
CH7單片機的串行通信技術[詳細]_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第7章 單片機的串行通信技術,7.1 串行通信概述 7.2 串行口的結構組成及控制寄存器 7.3 串行通信工作方式及應用舉例 7.4 串行通信設計應用舉例,7.1 串行通信概述 7.1.1 數據通信 7.1.2 異步通信和同步通信 7.1.3 波特率的概念和串行通信的傳輸方向 7.2 串行口的結構組成及控制寄存器 7.3 串行通信工作方式及應用舉例 7.4 串行通信設計應用舉例,第7章 單片機的串行通信技術,常用的數據通信包括兩種形式:并行通信和串行通信。,并行通信,(1)并行方式數據的各位同時發(fā)送或同時接收。 傳送速度快,但因需要多根傳輸線,故一般只在近距離通 信中使用。,第7章 單片機的串

2、行通信技術,串行通信,(2)串行方式數據的各位依次逐位發(fā)送或接收。 傳輸速度慢,但因只需較少傳輸線,故適合于遠距離通信。,第7章 單片機的串行通信技術,7.1 串行通信概述 7.1.1 數據通信 7.1.2 異步通信和同步通信 7.1.3 波特率的概念和串行通信的傳輸方向 7.2 串行口的結構組成及控制寄存器 7.3 串行通信工作方式及應用舉例 7.4 串行通信設計應用舉例,第7章 單片機的串行通信技術,1.異步通信以字符為單位組成字符幀進行的數據傳送,在串行數據通信中,有同步通信和異步通信兩種方式。,一幀數據由起始位、數據位、可編程位和停止位構成 特點收發(fā)雙方不同步時,能夠依靠在每幀開始時的

3、不斷對齊,自行糾正偏差,故對收發(fā)雙方的時鐘精度要求較低,但因每個字節(jié)都要建立一次同步,所以工作速度較低、效率低。,第7章 單片機的串行通信技術,2.同步通訊 數據格式數據以塊為單位連續(xù)傳送。,在發(fā)一組數據時,只在開始用若干個同步字符作為雙方的號令,然后連續(xù)發(fā)送整組數據。,特點數據是以數據塊為單位連續(xù)傳送的,結構緊湊,傳輸效率高,但要求雙方有準確的時鐘,對硬件要求高。,第7章 單片機的串行通信技術,7.1 串行通信概述 7.1.1 數據通信 7.1.2 異步通信和同步通信 7.1.3 波特率的概念和串行通信的傳輸方向 7.2 串行口的結構組成及控制寄存器 7.3 串行通信工作方式及應用舉例 7.

4、4 串行通信設計應用舉例,第7章 單片機的串行通信技術,波特率為每秒鐘發(fā)送二進制數碼的位數,即b/S (位/秒)。,在串行通信中,數據傳輸速率的快慢,通過波特率來衡量。,例如: 在異步通信中傳輸速度為360字符/秒,每個字符又包含10位,則波特率為: 360字符/秒 * 10位/字符 3600 bps (波特),標準波特率: 110、300、600、1200、2400、4800、9600、19200、38400 bps 等。,第7章 單片機的串行通信技術,在串行通信中,按照傳輸數據的流向,可分成三種傳輸形式:,單工通信 半雙工通信 全雙工通信 Simplex Half Duplex Full

5、Duplex,80C51 內部設有一個全雙工串行接口,收發(fā)雙方角色固定不能互換,收發(fā)雙方角色可換但需切換,收發(fā)雙方互不影響雙向通信,RXDReceive Data接收數據 TXDTransmit Data發(fā)送數據,第7章 單片機的串行通信技術,7.1 串行通信概述 7.2 串行口的結構組成及控制寄存器 7.2.1串行口的結構組成 7.2.2串行口控制寄存器 7.3 串行通信工作方式及應用舉例 7.4 串行通信設計應用舉例,第7章 單片機的串行通信技術,若干寄存器: 兩個數據緩沖器SBUF(99H)+串行控制寄存器SCON(98H) +移位寄存器+. 。,兩個引腳:數據接收RXD(P3.0) 和

6、數據發(fā)送TXD(P3.1)。,第7章 單片機的串行通信技術,(1)發(fā)送數據過程(中斷法) 內部數據并行寫入SBUF發(fā)數據串行送出中斷標志位TI硬件置1CPU響應中斷軟件清零TI,寫入下一數據,CPU,第7章 單片機的串行通信技術,(2)接收數據的過程(中斷法) 外界數據串行送入移位寄存器數據并行送入SBUF收標志位RI硬件置1CPU響應中斷RI軟件清零,讀走數據,CPU,第7章 單片機的串行通信技術,數據傳送將串行數據按一定節(jié)拍(同步時鐘脈沖)輸出到傳輸線上,或從傳輸線上讀入。,同步時鐘信號可由系統(tǒng)時鐘或定時器產生,第7章 單片機的串行通信技術,同步時鐘和傳送數據的關系: 發(fā)送數據時,發(fā)送時鐘

7、的下降沿將數據串行移位輸出;,接收數據時,接收時鐘的上升沿開始對數據位采樣。,第7章 單片機的串行通信技術,7.1 串行通信概述 7.2 串行口的結構組成及控制寄存器 7.2.1串行口的結構組成 7.2.2串行口控制寄存器 7.3 串行通信工作方式及應用舉例 7.4 串行通信設計應用舉例,第7章 單片機的串行通信技術,(1) 串行數據緩沖器,SBUF,在物理上有兩個SBUF:一個用于發(fā)送,另一個用于接收。在邏輯上只有一個SBUF(99H)。 可根據用法區(qū)分功能:,uchar counter; 待發(fā)送存放變量 SBUF = counter; 完成一次數據發(fā)送 counter = SBUF; 完成

8、一次數據接收,CPU,第7章 單片機的串行通信技術,(2) 串口控制寄存器,SCON(98H),SM2主要用于多機通訊:SM2=1 允許; 0禁止。 TB8(RB8)-發(fā)送(接收)數據的第9位,第7章 單片機的串行通信技術,通過SM0和SM1不同的取值,可選擇串行通信中的四種工作方式。,第7章 單片機的串行通信技術,(3) 電源控制寄存器,PCON(87H),由定時器T1產生的同步時鐘,第7章 單片機的串行通信技術,7.1 串行通信概述 7.2 串行口的結構組成及控制寄存器 7.3 串行通信工作方式 7.3.1 方式0(八位同步移位寄存器方式) 7.3.2 方式1(十位異步收發(fā)通信模式) 7.

9、3.3 方式2、方式3數據幀格式及應用舉例 7.4 串行通信設計應用舉例,第7章 單片機的串行通信技術,八位同步移位寄存器方式用于擴展并行I/O接口,數據傳輸波特率固定為fosc/12 由RXD引腳輸入或輸出數據(低位在前,高位在后) 由TXD引腳輸出同步時鐘信號,擴展輸出口,擴展輸入口,第7章 單片機的串行通信技術,7.3.1 方式0(八位同步移位寄存器方式),74LS164為8位串并轉換移位寄存器 DIP14 能將 串行輸入數據 轉為 并行輸出,工作原理: 1)若CLEAR端為低電平:輸出端QAQG都為0; 2)若CLEAR端為高電平,且CLOCK端出現上升沿脈沖: 則 輸出端 鎖存 輸入

10、端的電平 Q0=(A void delay() unsigned int i; /延時 for (i=0; i20000; i+) void main() unsigned char index, LED; /定義LED指針和顯示字模 SCON = 0; /設置串行模塊工作在方式0 MR = 1; / CLEAR端1,允許輸入數據 while (1) LED=0 xFE; for (index=0; index 8; index+) SBUF = LED; /控制L0燈點亮 do while(!TI); /通過TI查詢判別數據是否輸出結束 LED = (LED1) |1); /左移1位,末位置

11、1 if (LED= 0 xff) LED = 0 xfe; /若已循環(huán)一遍,準備重新開始 delay(); ,實例1參考程序,第7章 單片機的串行通信技術,實例1運行效果,第7章 單片機的串行通信技術,7.1 串行通信概述 7.2 串行口的結構組成及控制寄存器 7.3 串行通信工作方式 7.3.1 方式0(八位同步移位寄存器方式) 7.3.2 方式1(十位異步收發(fā)通信模式) 7.3.3 方式2、方式3數據幀格式及應用舉例 7.4 串行通信設計應用舉例,第7章 單片機的串行通信技術,10位數據異步通訊方式用于雙機通信,一幀信息:1個起始位(0)+8位數據位+1個停止位(1) ,其中起始位和停止

12、位是自動插入的。,第7章 單片機的串行通信技術,發(fā)送條件:由SBUF = counter即可啟動發(fā)送過程 發(fā)送完成:硬件TI置1,接收條件:在允許接收位REN=1時即可啟動接收過程 接收完成:硬件RI置1,數據SBUF,第7章 單片機的串行通信技術,通常,指定T1為波特率時鐘發(fā)生器(波特率時鐘可變),通常選擇T1定時器方式2(取fosc為11.0592MHz),第7章 單片機的串行通信技術,一般初始化過程,例如: SCON=0 x50; /串口設為方式1,TI和RI清零,允許接收 PCON=0 x80; /波特率加倍(2) TMOD=0 x20; /T1設為定時方式2 TH1=0 xcc; /

13、定時器初值 TL1=0 xcc; /重置的定時初值 IE=10010000B;/中斷使能(開中斷) TR1=1; /啟動T1,第7章 單片機的串行通信技術,實驗程序: 編寫一段程序,利用單片機的串行口向PC機發(fā)送字符串。,8051 單片 機,使用 串口方式1,#include #include sbit p=PSW0; char s =MSC-51 Serial Communication Bus! 我能行!; void main() char x,b=0; SCON=0 x40;/串口方式1 TMOD=0 x20; /設置T1及波特率9600 TH1=0 xFD; TL1=0 xFD; PC

14、ON=0 x00; TR1=1; x=strlen(s); for(;bx;b+) SBUF=sb; while(!TI) ; /此舉末位的”;”省略了會怎樣? 等效于while(TI=0) TI=0; while(1) /作用是? ,雙機通信協議 通行方式:例如異步串行通信 波特率: 例如2400b/s 發(fā)機要求發(fā)送的呼叫信號:例如10H 收機同意接收的應答信號:例如20H 收機不同意接收的應答信號:例如30H 告知數據正確的應答信號:例如0FH 通信結束標志信號:例如0AH ,第7章 單片機的串行通信技術,實例2: 要求設計一個雙機通信方案,甲機發(fā)送數據,乙機接收數據。兩機的振蕩頻率為12

15、MHz,波特率設置為2.4k,工作在串口方式1。 甲機循環(huán)發(fā)送0-15的數字,乙機接收后返回接收值。若發(fā)送值與返回值相等,繼續(xù)發(fā)送下一數字,否則重復發(fā)送當前數字。 發(fā)送值和接收值應顯示在LED數碼管上; 采用查詢法檢查收發(fā)是否完成。,第7章 單片機的串行通信技術,實例2電路原理圖,第7章 單片機的串行通信技術,實例2程序流程圖,第7章 單片機的串行通信技術,實例2參考程序,第7章 單片機的串行通信技術,實例2參考程序,第7章 單片機的串行通信技術,實例2運行效果,第7章 單片機的串行通信技術,7.1 串行通信概述 7.2 串行口的結構組成及控制寄存器 7.3 串行通信工作方式 7.3.1 方式

16、0(八位同步移位寄存器方式) 7.3.2 方式1(十位異步收發(fā)通信模式) 7.3.3 方式2、方式3數據幀格式及應用舉例 7.4 串行通信設計應用舉例,第7章 單片機的串行通信技術,方式2和方式3的數據幀都是11位用于多機通信 格式為: 一個起始位,8個數據位,一個可編程位和一個停止位,可編程位在SCON的TB8和RB8位中,用于奇偶校驗或多機通訊標識。,第7章 單片機的串行通信技術,可編程位可以由軟件置1或清0; 發(fā)送時第9位在TB8中,連同八位數據通過串口發(fā)出。 收到數據后,數據存入接收SBUF內,可編程位存入RB8中。,第7章 單片機的串行通信技術,可編程位還可用作為對接收到的數據進行校

17、驗使用;常用校驗方法: 在可編程位裝入發(fā)送數據的奇偶校驗位。例如,欲發(fā)送數據45H(01000101B),發(fā)送數據包含二進制數1的個數為奇數,因此奇偶校驗位P=1,在發(fā)送數據45H時,將P=1賦值到可編程位TB8,連同數據共同發(fā)出。 對方接收后,只要將實際數據的奇偶關系與RB8進行對比,即可知道收發(fā)過程是否有誤。,第7章 單片機的串行通信技術,方式2的波特率為固定數值:,方式3的波特率和方式1相同,是可變的:,第7章 單片機的串行通信技術,實驗程序: 編寫一段程序,利用單片機的串行口向PC機發(fā)送字符串。 要求:使用串口方式2,TB8為發(fā)送數據的奇偶校驗位。,8051 單片 機,使用 串口方式2,#include #include sbit p=PSW0; char s =“MSC-51 Serial Communication Bus! 我很行!; void main() char x,b=0; SCON=0 x90;/串口方式2 PCON=0 x00; x=strlen(s); for(;bx;b+) ACC=sb; TB8=p; /奇偶校驗位 送入 TB8 SBUF=sb; while(!TI) ; TI=0; while(1) ,本章小結, 用于串行口通信控制的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論