Bootstrap

STM32 HAL库开发学习(串口)

1 数据通信的基础概念

1.1 串行通信、并行通信

在这里插入图片描述

1.2 单工/半双工/全双工通信

在这里插入图片描述

1.3 同步/异步通信

在这里插入图片描述
根据有无时钟信号来判断

1.4 波特率

在这里插入图片描述

1.5 常见的串行通信接口

在这里插入图片描述

2 串口(RS-232)

2.1 什么是串口

在这里插入图片描述

2.2 RS-232串口电平与CMOS以及TTL的对比

在这里插入图片描述

2.3 设备间的RS-232通信示意图

在这里插入图片描述
使用DB9接口

2.4 STM32串口与电脑USB口通信示意图

在这里插入图片描述

2.5 RS-232异步通信协议

least significant bit
most significant bit

3 STM32的USART

3.1 STM32的USART简介

在这里插入图片描述

3.2 STM32的USART主要特征

在这里插入图片描述
引脚数量以及对应的引脚,可以参考MCU手册以及STM32F1硬件手册

3.3 USART框图

在这里插入图片描述

1、发送以及接受的框图
2、寄存器的作用
3、波特率的设置
在这里插入图片描述

3.5 设置USART/UART波特率

在这里插入图片描述
在这里插入图片描述
通过波特率计算得到要设置的寄存器参数
在这里插入图片描述
在这里插入图片描述
将两个×16放在一起合并,简化公式

3.6 USART寄存器介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4 HAL库外设初始化MSP回调机制

在这里插入图片描述
在这里插入图片描述

5 HAL库中断回调机制

在这里插入图片描述
##

6 USART/UART异步通信配置步骤

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7 IO引脚复用功能

7.1 什么是复用

在这里插入图片描述

7.2 IO引脚复用

在这里插入图片描述

7.3 IO引脚复用 F4 F7 H7

每一个引脚都可以选择相应的复用,对F1进行了改进

在这里插入图片描述

;