單片機串行通信
1、串行通信概述
·串行通信:是將數(shù)據(jù)的各位一位一位地依次傳送。適合于計算機之間、計算機與外部設(shè)備之間的遠距離通信。
·串行通信方式:
2、串行接口與工作方式
一.結(jié)構(gòu)圖
發(fā)送:MOVSBUF,A
接收:MOVA,SBUF
二.串行口控制
1.串行口控制寄存器SCON
①SM0、SM1:串行工作方式控制位。
②SM2:方式2和方式3的多機通信控制位。
·方式2、3時:如SM2=1則接收到的第9位數(shù)據(jù)(RB8)為0時不置位RI;如SM2=0,則收到停止位后必置位RI。
·方式1時:如SM2=1,則收到停止位置位RI。
·方式0時:SM2=0。
③REN:REN=1時,允許接收;REN=0時,禁止接收。
④TB8:方式2和3中要發(fā)送的第9位數(shù)據(jù),可作奇偶效驗位。
在多機通信中:TB8=1為發(fā)送地址幀,TB8=0為發(fā)送數(shù)據(jù)幀。
⑤RB8:方式2和3中要收到的第9位數(shù)據(jù),可作奇偶效驗位或地址/數(shù)據(jù)標識位;方式1中如SM2=0時,RB8是接收到的停止位;方式0時,不使用RB8。
⑥TI、RI:分別為發(fā)送、接收中斷標志。
2.電源和波特率控制寄存器PCON
串行口工作在工作方式1、2、3下:
SMOD=0,波特率不提高一倍
SMOD=1,波特率增大一倍
要點:·串口各用到哪些寄存器?寄存器各位的含義。
·串口有幾種工作方式?
3.串行工作方式及幀格式
在串行口的4種工作方式中,串行通信只使用方式1、2和方式3,方式0主要用于擴展并行輸入輸出接口。
①方式0:以8位數(shù)據(jù)為一幀,沒有起始位和停止位,先發(fā)送或接收最低位。主要用于擴展I/O口,數(shù)據(jù)由RXD輸入或輸出,同步移位脈沖由TXD端輸出。波特率=fosc/12
②方式1:。以10位為一幀,即一個啟始位、8個數(shù)據(jù)位、一個停止位。適合于點對點的異步通信。
③方式2和方式3:以11位為一幀,比方式1增加了一個數(shù)據(jù)位,其余相同。第9個數(shù)據(jù)即D8位具有特別用途。適合于多機通信。
三.波特率的設(shè)置
1.方式2:
2.方式1和方式3:一般選用T1工作于模式2作波特率發(fā)生器。
定時器T1模式2的計數(shù)初值:
例:選用定時器T1,操作模式2作波特率發(fā)生器,波特率為2400波特。已知fosc=11.059MHz,求計數(shù)初值X。
解:設(shè)波特率控制位SMOD=0,則
X=256-11.0592×106×20/384×2400=244=F4H
所以TH1=TL1=F4H
編輯:admin 最后修改時間:2018-05-08