首页 > 编程知识 正文

单片机tcon寄存器,tcon寄存器的作用

时间:2023-05-05 21:00:05 阅读:107210 作者:2122

TMOD :计时器/计数器动作模式寄存器

TCON :计时器/计数器控制寄存器

SCON )串行端口控制寄存器串行端口控制寄存器SCON确定串行端口通信的操作方式,并控制数据的发送和接收,标记串行端口的操作状态等。 位格式如下。

SMO、SM1:串口工作方式控制位,支持4种工作方式,如表7-1所示(fosc为晶振频率)。

SM2

多机通信控制位主要用于动作模式2和动作模式3。

SM2=1时,允许多机通信。

在多机通信中,如果第9位数据位为1 (即TB8=1),则表示本帧的数据为地址帧,如果第9位的数据为0 )即TB8=0,则本帧的数据为数据帧

当从设备接收到的第9位数据(在RB8中)为1时,将数据加载到接收缓冲区SBUF中,设置RI=1并向CPU请求中断; 接收的第9位数据(在RB8中为)为0时,不设置的中断标志RL的信息将丢失。

如果SM2=0,则无论接收的第9位数据是否为1,都生成中断标志RI,并将接收到的数据加载到SBUF中。 应用该特征,可以实现多机通信。

如果串行端口以方式0工作,则SM2必须设置为0; 工作模式1时,SM2=1时,仅在接收到有效的停止位时RI被激活。

REN:允许接收控制位。 REN=1时,允许接收; REN=0时,禁止接收。 该位通过软件重置为1或0。

TB8:在方式2和方式3中,该位是发送数据的第9位,在多机器通信中成为发送地址帧或数据帧的标志。 TB8=1表示该发送帧是地址帧; TB8=0表示该发送帧为数据帧。 在许多通信协议中,它可以用作奇偶校验位。 该位通过软件重置为1或0。 方式0和方式1中未使用此位。

RB8:接收数据的第9位。 在方式2和方式3中,将接收到的第9位的数据置于RB8。 它可能是约定的奇/偶位,或者是约定的地址/数据标志位。 在方式2和方式3的多机通信中,SM2=1且RB8=1时,接收数据为地址帧。

TI:发送中断标志位。 在1帧的数据被发送的时候设置。 TI=1,申请中断,指示发送缓冲器SBUF为空,CPU可以发送下一个帧数据。 中断应答后,TI不能自动清除,需要通过软件进行清除。

RI:接收中断标志位。 在接收到一帧有效数据后,硬件设置。 RI=1.申请中断指示一帧的数据接收结束,并加载到接收缓冲区SBUF中,CPU响应于该中断提取数据。 RI不能自动清除。 需要用软件通关。

串行端口发送中断标志TI和接收中断标志RI都是一个中断源。 因此,在接收到中断请求后,CPU不知道是发送中断TI还是接收中断RI,并必须通过软件来进行确定。 单片机复位后,控制寄存器SCON的各位将被清除。

PCON :电源控制及波特率选择寄存器

电源控制寄存器PCON中只有1位SMOD与串行端口的动作有关,

SMOD :波特率倍增。 在串行端口的动作为方式1、方式2、方式3的情况下,在SMOD=1的情况下,波特率为2倍;

在SMOD=0的情况下,波特率不会变成2倍。 单片机复位时,SMOD=0。

SBUF )串行数据缓冲器的串行端口有两个缓冲寄存器SBUF :发送寄存器和接收寄存器,它们在物理上是完全独立的。 这些都是字节寻址的寄存器,字节地址都是99H。 这个重叠的地址通过读/写命令来区别。 串行发送时,CPU向SBUF写入数据。 在这种情况下,99H表示发送SBUF。 串行接收时,CPU从SBUF读取数据。 此时,99H表示接收SBUF。

suf是指串行端口上的2个缓冲寄存器,一个是发送寄存器,另一个是接收寄存器,在物理结构上完全独立,但是地址重叠。 这些都是字节寻址的寄存器,字节地址都是99H。 编写程序时,可以用不同的指令操作两个寄存器。

例如,SBUF=A这意味着将a数据转移到发射寄存器,且从发射寄存器发送数据。A=SBUF意味着将接收寄存器的数据代入a。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。