低4位与外部中断有关,高4位功能如下:

TF1:T1计数溢出标志位。当T1计数溢出时,由硬件置1,申请中断。进入中断服务程序后被硬件自动清0

TR1:T1计数运行控制位。由软件置1或清0.当GATE位(TMOD第7位)=0,TR1=1时允许T1计数。当TR1=0时禁止计数

TF0:T0计数溢出标志位。当T0计数溢出时,由硬件置1,申请中断。进入中断服务程序后被硬件自动清0

TR0:T0计数运行控制位。由软件置1或清0.当GATE位(TMOD第3位)=0,TR0=1时允许T0计数。当TR1=0时禁止计数

二、串行口

串行口有4种工作方式。波特率可用软件设置,由片内的定时器/计数器产生。

MCS-51单片机内部的串行口有2个物理上独立的接收、发送缓冲器SBUF,可同时发送、接收数据。发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,两个缓冲器共用一个字节地址(99H)。

控制MCS-51单片机串行口的控制寄存器共有两个:特殊功能寄存器SCON和PCON

串行口控制寄存器SCON(地址98H)

D7 D6 D5 D4 D3 D2 D1D0

SM0SM1SM2RENTB8RB8TI RI

SM0、SM1:串行口4种工作方式的选择位

SM2:允许方式2和3的多机通讯控制位。 在方式2或3中,如果SM2置为1,则接收到的第9位数据(RB8)为0时不激活RI。在方式1时,如果SM2=1,则只有收到有效的停止位时才会激活RI。在方式0时SM2必须清0。

REN:允许串行接收位。由软件置1或清0.REN=1允许接收,REN=0则禁止接收。

TB8:是工作方式2和3时,要发送的第9位数据。需要时由软件置1或清0。在多机通讯中用来表示是地址帧还是数据帧。TB8=1为地址帧,TB8=0为数据帧

RB8:当工作在方式2和3时,为接收到的第9位数据。在多机通讯中为地址帧或数据帧的标识位。在方式1如果SM2=0,RB8是接收到的停止位。在方式0不使用RB8.

TI:发送中断标志位,在方式0串行发送第8位数据结束时由硬件置1,或在其它方式串行发送停止位的开始时置1.TI=1时申请中断,CPU响应中断后,发送下一帧数据。TI必须由软件清0.

RI:接收中断标志位。在方式0串行接收到第8位数据结束时,由硬件置1.在其它方式中,串行接收到停止位的中间点时置1.RI=1时申请中断,要求CPU取走数据。但在方式1中,SM2=1时,若未收到有效的停止位,不会对RI置1.RI必须由软件清0.

特殊功能寄存器PCON(地址87H)

D7 。..。..D0

SMOD 。..。..。.

SMOD波特率系数选择位。

串行口的工作方式

SM0 SM1 方式 功能说明

0 0 0 移位寄存器方式(用于扩展I/O口)

0 1 1 8位UART,波特率可变(T1溢出率/n)

1 0 2 9位UART,波特率为 Fosc/64 或Fosc/32

1 1 3 9位UART,波特率可变(T1溢出率/n)

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查