×
单片机 > 单片机程序设计 > 详情

C51单片机串口初始化为何是这样

发布时间:2020-06-22 发布时间:
|
SCON-串行口控制寄存器:可位寻址,单片机复位时,各位都被清0

B7

B6

B5

B4

B3

B2

B1

B0

SM0

SM1

SM2

REN

TB8

RB8

TI

RI

 

SM0、SM1:串行通信方式选择位。

SM0

SM1

工作方式

功能说明

波特率

0

0

方式0

同步移位寄存器方式

osc f /12

0

1

方式1

8位异步通信方式

可变,由定时器控制

1

0

方式2

9位异步通信方式

osc f /32 或osc f /64

1

1

方式3

9位异步通信方式

可变,由定时器控制

 

SM2:多机通信控制位。

在方式0时,SM2必须为0。

在方式1时,若SM2=0,RB8是接受到的停止位;若SM2=1,则只有收到有效的停止位才会激活中断RI,若没有接受到有效停止位,则RI清0。

在方式2或3时,如果SM2 1,则只有当接收到的第9位数据(RB8)为“1”时,才使RI置“1”,产生中断请求,并将接收到的前8位数据送入SBUF。当接收到的第9位数据(RB8)为“0”时,不提出中断,接收到的前8位数据无效。若SM2 0,接收到RB8后必然置位RI,产生中断,此时不论地址帧还是数据帧都能接收。

REN:接收控制位。由软件置1或清0,“0”即禁止接收。“1”允许接收。

TB8:发送数据的第9 位。方式2和方式3,TB8是要发送的第9位数据,其值由软件置“1”或清“0”。在双机串行通信时,一般作为奇偶校验位使用;在多机串行通信中用来表示主机发送的是地址帧还是数据帧,TB8=1为地址帧,TB8=0为数据帧。

RB8:接收数据的第9位。方式2和方式3,RB8存放接收到的第9位数据。在方式1,如SM2 0,RB8是接收到的停止位。在方式0,不使用RB8。

TI:发送中断标志位。发送数据前由软件清0,发送结束由硬件置1。方式0,发送完8位数据时TI由硬件置“1”,其他方式中,发送停止位时置TI 为“1”。其状态可供软件查询,也可请求中断

RI:接收中断标志位。接收前由软件清0,接收完时由硬件置“1”。方式0时,接收完第8位数据RI由硬件置“1”。在其他工作方式中,串行接收到停止位的中间时,该位置“1”。 其状态可供软件查询,也可请求中断

 

TMOD-定时器控制寄存器:不按位寻址,高四位控制T1,低四位控制T0。地址89H

 

B7

B6

B5

B4

B3

B2

B1

B0

GATE

C/T

M1

M0

GATE

C/T

M1

M0

 

GATE :定时操作开关控制位,当GATE=1时,INT0或INT1引脚为高电平,同时TCON中的TR0或TR1控制位为1时,计时/计数器0或1才开始工作。若GATE=0,则只要将TR0或TR1控制位设为1,计时/计数器0或1就开始工作。

C/T :定时器或计数器功能的选择位。C/T=1为计数器,通过外部引脚T0(P3.4)或T1(P3.5)输入计数脉冲。C/T=0时为定时器,由内部系统时钟提供计时工作脉冲。

M1 :模式选择位高位

M0 :模式选择位低位

 

M1

M0

工作模式

0

0

13位计数/计时器

0

1

16位计数/计时器

1

0

8位自动加载计数/计时器

1

1

定时器1停止工作,定时器0分为两个独立的8位定时器TH0及TL0

 

 

SCON=0X52 :选择8位异步通信方式,波特率可变,由定时器控制;允许接受;发送中断标志、接收中断标志分别为1、0

TMOD=0X20:使用定时器1,8位自动加载计时器

TH1=0XF3:设置8位自动加载计时器定时时间,设定波特率为9600

TR1=1:启用定时器1

关键字:C51  单片机  串口初始化 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR熔丝位操作时的要点和需要注意的相关事项