思路
(1)引脚配置–PA9 (Tx) ----PA10 (Rx)
(2)串口配置 (数据协议:起始位–数据位–奇偶校验–停止位; 波特率)
(3)查看功能是否正常----回显函数 将下位机接收的数据发送到上位机(串口助手)显示
寄存器
//引脚配置 串口配置
void usart_config(u32 baud)//形参为波特率
{
u32 div_m,div_f;//div_m--USARTDIV的整数部分 ---div_f 是小数部分
float usart_div;// USARTDIV是什么? 这是波特率配置重点,我的笔记上次已经讲过
RCC->APB2ENR |=(0X01<<2)|(0X01<<14);//开时钟 GPIOA USART1
//PA9--¸查看原理图 与英文数据手册 该管脚复用功能为USART1_Tx 故 应该配置 复用推挽输出 模式
GPIOA->CRH &=~(0X0F<<4);
GPIOA->CRH |=(0X0B<<4);
//PA10--浮空或上拉输入模式
GPIOA->CRH &=~(0X0F<<8);
GPIOA->CRH |=(0X04<<8);
//串口配置
//配置字长--该位为0,则一个起始位,8个数据位 ;;该位为1,则一个起始位,9个数据位
USART1->CR1 &=~(0x01