串口
硬件
DB9_公头_母头_串口引脚定义及RS-232串口线制作方法
理论知识
串口通信知识
实际运用
USART_FLAG_RXNE与USART_IT_RXNE区别
串口调试工具
问题:
串口FIFO
串口FIFO可以理解为串口专用的缓存,该缓存采用先进先出方式。数据接收FIFO和数据发送FIFO通常是独立的两个硬件。
串口接收的数据,先放入接收FIFO中,当FIFO中的数据达到触发值(通常触发值为1、2、4、8、14字节)或者FIFO中的数据虽然没有达到设定值但是一段时间(通常为3.5个字符传输时间)没有再接收到数据,则通知CPU产生接收中断;发送的数据要先写入发送FIFO,只要发送FIFO未空,硬件会自动发送FIFO中的数据。
写入发送FIFO的字节个数受FIFO最大深度影响,通常一次写入最多允许16字节。上述列举的数据跟具体的硬件有关,CPU类型不同,特性也不尽相同,使用前应参考相应的数据手册。
串口句柄结构体 UART_HandleTypeDef
主要有两个参数,其他都是HAL库内部使用的。
USART_TypeDef *Instance 寄存器的例化,方便操作寄存器,如 SET_BIT(huart->Instance->CR1, USART_CR1_TXEIE), 产生一个空中断
UART_InitTypeDef Init 配置串口的基本参数,如波特率、奇偶校验、停止位等
tips
当接收到1个字节,会产生USART_IT_RXNE中断
当接收到一帧数据,就会产生USART_IT_IDLE中断

浙公网安备 33010602011771号