2.3USART串口通信 2.3.1USART简介 USART在此指的是通用同步/异步串行收发器。具体作用是在通信时,将二进制的数据通过位,即比特进行传输。其主要功能为在
2.3 USART串口通信
2.3.1 USART简介
USART在此指的是通用同步/异步串行收发器。具体作用是在通信时,将二进制的数据通过位,即比特进行传输。其主要功能为在传输数据时,把数据在并-串行之间转换。而串口是微控制器的对外连接的重要通道,本课题所使用三个模块均是通过串口与STM32微控制器连接。
2.3.2 USART串口初始化
在此以对Wi-Fi模块所使用的串口初始化为例。
首先需要对USART和GPIOA的时钟进行初始化设置。由于该程序较为简单,仅需要对其稍作修改便可以用于所有串口的时钟初始化,因此此处不再列出时钟初始化的具体程序。
然后需要对部分需要使用的GPIO引脚进行初始化,该部分即为PA9、PA10引脚。由于部分程序的代码需要针对PA9、PA10的读写特性进行一些修改,所以这里列出部分程序,并作简单的解释,程序如图2.2所示
前三条分别通过定义结构体,确定了端口为9,传输速度为50MHz,选用模式为复用推挽模式。复用推挽模式在该程序中则用于写入数据时使用。最后使用完成定义的结构体对端口PA9初始化。PA10相对的不同在于引脚、不需要设置传输速度,选用模式为浮空输入。
接着需要对中断程序初始化,大致结构与GPIO引脚类似,需要对中断请求通道、抢占优先级、子优先级进行设置。只需要针对实际情况,进行适当修改后并使能中断请求通道,便可以使用。并且在结构上与GPIO引脚基本类型,仅在定义结构体时存在一些差别,因此不做具体解释。