一、串口通讯的相关介绍
二、USART接发通信
三、总结
四、参考资料
一.串口通讯的相关介绍
1.两种电平标准
TTL标准:当电平处于2.4~5V之间时,表示逻辑1;当电平处于 0 ~0.5V时,表示逻辑0。
RS-232标准:当电平处于-15~-3V之间时,表示逻辑1;当电平处于3 ~15V时,表示逻辑0。
RS-232标准的传输距离及抗干扰能力更好。重点是两种标准的转换。
2.USB转串口通讯
USB转串口主要是设备跟电脑通信,该过程需要电平转换芯片来实现,常用的芯片有CH340,PL2303,CP2102,FT232。使用的时候需要安装电平转换芯片的驱动。
3.原生的串口到串口
主要是控制器跟串口设备或者传感器通信,不需要电平转换芯片来转换电平,直接使用TTL电平通信。例如GPS模块。
4.波特率与比特率
波特率即每秒钟传输的码元个数,便于对信号进行解码。常用的波特率4800,9600,115200。比特率即每秒钟传输的二进制位数。
5.通讯的起始和停止信号
起始信号由逻辑0的数据位表示,停止信号可由0.5,1.5,1或2个1的数据位来表示。双方自行约定。
6.校验
通过校验码来避免数据在传输过程中,受到外部干扰而发生偏差。常采用奇偶校验,只能检测出发生偏差位的1位。
二.USART接发通信
数据发送和接收的流程
数据格式
M:字长
表示数据的长度,0表示长度为8bit,1表示长度为9bit,通常设置为0。
STOP:停止位
采用2位来设置停止位的位数,00表示1个停止位,01表示0.5个停止位,10表示两个停止位,11表示1.5个停止位。
PCE:校验控制使能
用于选择是否进行硬件校验控制,0表示禁止校验控制,1表示使能校验控制。
PS:校验选择
用于选择采用奇校验还是偶校验,0表示偶校验,1表示奇校验。
PEIP:PE中断使能
由软件设置或清除,0表示禁止产生中断,1表示当USART_SR中的PE为1时,产生USART中断。
PE:校验错误
在接收模式下,若出现奇偶校验错误,硬件对该位置位,0表示没有奇偶校验错误,1表示奇偶错误。
1.发送数据过程
数据先从PWDATA总线写入到发送数据寄存器(TDR),然后将数据一位一位的移到发送移位寄存器中,接着通过TX引脚发送出去。
接收数据过程
数据从RX引脚发到接收移位寄存器,接着将数据放到接收数据寄存器(ADR)中,最后CPU或者DMA进行读操作。
2.编写代码前的准备
①将使用已经建好的一个文件(使用固件库),将其备份成一个新文件
②在新文件中的User文件下