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