80C51的串行口结构和原理(1-概念)

1.串行通信(一位一位逐个传输):异步通信(不同时钟控制数据)、同步通信;

  并行通信:(数据字节的各位用多条数据线进行同时传输);

2. 8N1,一个起始位(一个字节),8个数据位,一个停止位。

通常的SCI 或UART 串行数据格式(8N1) 编码每个字节场的长度是10 个比特时间(BIT TIME)。 起始位START BIT 是一个显性位,它标志着字节场的开始。 
接着是8 个数据位,首先发送最低位。停止位STOP BIT 是一个隐性位,它标志着字节场的结束

3.80C51串行口结构

80C51的串行口结构和原理(1-概念)_第1张图片

SBUF 寄存器:它是两个在物理上独立的接收、发送缓冲器,可同时发送、接收数据,可通过指令对SBUF 的读写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。从而控制外部两条独立的收发信号线RXD、TXD,同时发送、接收数据,实现全双工。

SCON:用以设定串行口工作方式,接收/发送控制及设置状态标志的特殊功能寄存器。



四种工作方式:

80C51的串行口结构和原理(1-概念)_第2张图片

其中,fOSC 为单片机的时钟频率;波特率指串行口每秒钟发送(或接收)的位数。
  SM2 :多机通信控制位。 该仅用于方式2 和方式3 的多机通信。其中发送机SM2 = 1(需要程序控制设置)。接收机的串行口工作于方式2 或3,SM2=1 时,只有当接收到第9 位数据(RB8)为1 时,才把接收到的前8 位数据送入SBUF,且置位RI 发出中断申请引发串行接收中断,否则会将接受到的数据放弃。当SM2=0 时,就不管第位数据是0 还是1,都将数据送入SBUF,并置位RI 发出中断申请。工作于方式0 时,SM2 必须为0。
  REN :串行接收允许位:REN =0 时,禁止接收;REN =1 时,允许接收。
  TB8 :在方式2、3 中,TB8 是发送机要发送的第9 位数据。在多机通信中它代表传输的地址或数据,TB8=0 为数据,TB8=1 时为地址。
  RB8 :在方式2、3 中,RB8 是接收机接收到的第9 位数据,该数据正好来自发送机的TB8,从而识别接收到的数据特征。
  TI :串行口发送中断请求标志。当CPU 发送完一串行数据后,此时SBUF 寄存器为空,硬件使TI 置1,请求中断。CPU 响应中断后,由软件对TI 清零。
  RI :串行口接收中断请求标志。当串行口接收完一帧串行数据时,此时SBUF 寄存器为满,硬件使RI 置1,请求中断。CPU 响应中断后,用软件对RI 清零。


PCON

80C51的串行口结构和原理(1-概念)_第3张图片


只有SMOD(波特率倍增位)与串行口工作相关。串行口方式为1,2,3时,SMOD=1 波特率提高一倍,复位时SMOD = 0 ;

波特率 = (2^SMOD/32)* 定时器T1溢出率 = (2^SMOD/32)* (fosc/12*(256-X))      

如:9600   X = 253 0xfd

        4600  X=250  0xfa  

2400 X=244 0xf4        


你可能感兴趣的:(单片机)