STM32学习之USATR (STM32F401ZGT6)

初始化串口

1、查看原理图确定引脚

注意:我们在途中看到的RXD,TXD是网络标号,可能会出错,但是引脚是不会出错的,比如图中RXD里面的功能写的是USART_TX,TXD写的功能是USART_RX,所以在使用时一定要根据引脚号来确定功能再进行配置。

2.看引脚是否有用作串口的功能

PA9,PA10,一个用作发送数据,一个用作接收数据,但是这两个引脚的通用功能都是作为IO口的,复用功能中才有串口的功能,所以在配置的时候要作为复用功能来使用。

3、配置串口

(1)开时钟,串口,GPIOA

(2)把复用功能映射到引脚上

  高位寄存器控制(8~15)8个管脚,低位寄存器控制(0~7)

查看引脚复用映射来判断应该填入寄存器的值

 使用串口功能,所以在AFRH9,10两部分写入AF7(0111)就将串口的功能复用到引脚上了。

注意:AFR寄存器配置的时候高低位是以数组来配置的,高位将GPIOA-AFR[]的下标写成1,低位写0.

(3)配置pa9,pa10的工作模式

  pa9作为TX(发送)口所以要复用推挽输出

  pa10作为RX(接受)配置为复用输入(这里只需配置为复用,无上下拉即可)

  (4) 配置串口 

  

猜你喜欢

转载自www.cnblogs.com/whpl22-Blog/p/11294013.html