串口通信:是一种设备间常用的串行,以比特位形式收发数据,电子工程师经常使用这种方式调试。
程序设计
PA9(TX),PA10(RX)
参考帮助文档STM32F4xx_StdPeriph_Examples/USART/USART_Printf/main.c
需要修改 Edit->Options for Target->target->Code Generation->Use Micro LIB打勾,其他不打勾,然后重定义库函数printf里面的fputc函数
/*串口初始化函数*/
void USART1_Init(uint32_t baud)
{
//初始化用到的结构体,变量定义在最开头
GPIO_InitTypeDef USART_InitStructure;
NVIC_InitTypeDef USART_InitStructure;
USART_InitTypeDef USART_InitStructure;
//使能时钟
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); //PA时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE); //串口一时钟
//配置PA9,10引脚为多功能模式
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_10; //第9 10号引脚
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; //多功能模式
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //可省略,推挽输出,增强驱动能力,引脚的输出电流更大
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10