
单片机串口通信设置.ppt
11页串行口控制寄存器 (1)串行口状态控制寄存器 SCON 用来控制串行通信的方式选择、接收,指 示串行口的中断状态寄存器SCON既可字节寻 址也可位寻址,字节地址为98H,位地址为98H ~9FH其格式如下:①SM0和SM1(SCON.7,SCON.6)——串行 口工作方式选择位两个选择位对应4种通信方 式,如表7-1所示其中,fosc是振荡频率⑵SM2(SCON.5)—允许方式2、3中的多处理机通信位 方式0时,SM2=0 方式1时,若SM2=l,只有接收到有效的停止位 ,接收中断RI才置1方式2和方式3时,若SM2=1,则只有当接收到的 第9位数据(RB8)为1时,才将接收到的前8位数据送 入缓冲器SBUF中,并把RI置1、同时向CPU申请中断 ;如果接收到的第9位数据(RB8)为0,RI置0,将 接收到的前8位数据丢弃而当SM2=0时,则不论接收到的笫九位数据是0 或1 ,都将前8位数据装入SBUF中,并申请中断 ⑶REN(SCON.4)——允许串行接收位 REN=1时,允许串行接收;REN=0时,禁 止串行接收用软件置位/清除 ⑷TB8(SCON.3)——方式2和方式3中要发送的第9 位数据。
在通信协议中,常规定TB8作为奇偶校验位 在80C51多机通信中,TB8=0用来表示数据帧; TB8=1表示是地址帧 用软件置位/清除 ⑸RB8(SCON.2)——方式2和方式3中接收到的第9 位数据方式1中接收到的是停止位方式0中不 使用这一位 ⑹TI——发送中断标志位 方式 0中,在发送第 8位末尾置位;在其 它方式时,在发送停止位开始时设置 由硬件置位,用软件清除 ⑺RI——接收中断标志位 方式 0中,在接收第 8位末尾置位;在其 它方式时,在接收停止位中间设置 由硬件置位,用软件清除 系统复位后,SCON中所有位都被清除2)PCON(87H)电源控制寄存器PCON中只有SMOD位与串行口 工作有关,其它位与掉电方式有关其格式如下:在串行口方式1、方式2和方式3时,波特率和 SMOD成正比,亦即当SMOD=1时,波特率提高 一倍复位时,SMOD=0D7 D6 D5 D4 D3 D2 D1 D0SMOD — — — GF1 GF0 PD IDL⒊ 串行数据寄存器SBUF 包含在物理上是隔离的两个8位寄存器: 发送数据寄存器和接收数据寄存器,它们共用 一个地址——99H。
其格式如下:读SBUF(MOV A,SBUF),访问接收数据 寄存器;写SBUF(MOV SBUF,A),访问 发送数据寄存器 D7 D6 D5 D4 D3 D2 D1 D0SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD04)四种工作方式下的波特率发生器1、方式0波特率由振荡器的频率(fosc)确定:波特率为fosc/12 2、方式2波特率由振荡器的频率(fosc)和SMOD位所确定:3、方式1和3方式1和3时的波特率由定时器T1和T2的溢出率和SMOD (PCON.7)所确定 T1溢出速率 ≌(fosc/12)/(28-X)定时器T1模式2的初始值X:例7-1:89C51单片机时钟振荡频率为 11.0592MHz,选用定时器T1工作模式2 作为波特率发生器,波特率为2400b/s, 求初值 解:设置波特率控制为(SMOD)=0所以,(TH1)=(TL1)=F4H。
