1.串行通信(一位一位逐个传输):异步通信(不同时钟控制数据)、同步通信;
并行通信:(数据字节的各位用多条数据线进行同时传输);
2. 8N1,一个起始位(一个字节),8个數据位,一个停止位
通常的SCI 或UART 串行数据格式(8N1) 编码每个字节场的长度是10 个比特时间(BIT TIME)。 起始位START BIT 是一个显性位它标志着字节场的开始。
接着是8 個数据位首先发送最低位。停止位STOP BIT 是一个隐性位它标志着字节场的结束
SBUF 寄存器:它是两个在物理上独立的接收、发送缓冲器,可同时發送、接收数据可通过指令对SBUF 的读写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。从而控制外部两条独立的收发信号线RXD、TXD哃时发送、接收数据,实现全双工
SCON:用以设定串行口工作方式,接收/发送控制及设置状态标志的特殊功能寄存器
其中,fOSC 为单片机的时鍾频率;波特率指串行口每秒钟发送(或接收)的位数
SM2 :多机通信控制位。 该仅用于方式2 和方式3 的多机通信其中发送机SM2 = 1(需要程序控制设置)。接收机的串行口工作于方式2 或3SM2=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 清零。
只有SMOD(波特率倍增位)与串行口工作相关串行口方式为1,23时,SMOD=1 波特率提高一倍复位时SMOD = 0 ;