基础知识
串口通讯其实和单总线协议等其他协议都是一样的,就是主机和从机遵循同一种协议,就可以进行相互通讯。
单片机和电脑进行通信的,也可以两个单片机进行通信,但是蓝桥杯就考单片机和电脑进行通信。
串口通讯使用单片机定时器1方式1(SCON的SM0、SM1为01),是8位的UART且波特率可变。串行口1用定时器1作为其波特率发生器且定时器1工作在模式0(16位自动重装载模式)。
以下是所有定时器的外设分配
定时器0:NE555频率接收
定时器2:1ms定时器中断
定时器1:串口、超声波(超声波、串口一般不会一起考)
TI:发送中断请求标志位。除方式0外,在停止位开始发送时由内部硬件置位,即TI=1,响应中断后,必须用软件清0
RI:接收中断请求标志位。除方式0外,串行接收到停止位的中间时刻由内部硬件置位,即RI=1,响应后中断,必须用软件清0
串行口数据缓冲寄存器SBUF:STC15系类单片机的串行口1缓冲寄存器的地址是99H,但实质上是两个寄存器,它们公用一个地址,一个接受缓冲寄存器,一个发送缓冲寄存器。
发接收数据举例:
发送数据:SBUF=0xff
接收数据:变量=SBUF
电路原理

CH349C:将串口协议数据转换为USB协议数据,电脑才能认识串口信号。
P30:单片机串口接收管脚,电脑->单片机
P31:单片机串口发送管脚,电脑<-单片机
串口发送数据

使用STC-ISP可以直接生成串口的初始换函数,选项卡的具体内容看上图,定时器时钟选择12T或者1T都可以,波特率要根据赛题的要求进行选择,一般是4800。但在串口初始化函数后面要加上ES=1;EA=1;打开串口中断和总中断。
在使用串口中断是STC-ISP中也提供了范例程序可以直接进行愉快的复制粘贴。在范例程序中选择15系列-串口1模式0做波特率发生器选项卡。