GENERAL_TIMx_Init()这个函数里面用到了很多宏定义,这些宏定义都是在“bsp_GeneralTIM.h”这个文件中,用宏定义增强了代码的可读性,便于后续维护、移植。
由于我们用到了定时器TIM3的PWM功能,所以,对TIM3的四个通道到引脚也需要进行配置,主要在HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)这个函数中实现,代码如下:
串口部分配置的代码,主要在“bsp_usartx.c”这个文件中,其中MX_USARTx_Init()这个函数用于对USART1、USART2和USART3的参数进行配置:
同样,这里用到了很多宏定义,宏定义部分的代码在“bsp_usartx.h”文件中实现:
虽然这里配置了3个串口,实际上,我们这个例程中,只需要用到USART1和USART3这两个串口,这里尤其是要注意一下USART1,STM32F103C8T6的USART1的TX和RX默认是在PA9和PA10这两个引脚上,而我们的扩展板使用的是PB6和PB7这两个引脚,所以,我们在USART1硬件初始化配置的时候,还需要添加一行“__HAL_AFIO_REMAP_USART1_ENABLE();”这个代码,将USART1重映射到PB6和PB7这两个引脚上: