stm32f4 discovery板串口程序调试不对,求大佬看看

2019-03-23 17:58发布

#include "main.h"   

GPIO_InitTypeDef gpio;
USART_InitTypeDef usart;

void USART1_Config(void)
{
  SystemInit();
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);
  GPIO_PinAFConfig(GPIOA,GPIO_Pin_9,GPIO_AF_USART1);
  gpio.GPIO_Pin=GPIO_Pin_9;
  gpio.GPIO_Mode=GPIO_Mode_AF;
  gpio.GPIO_Speed=GPIO_Fast_Speed;
  gpio.GPIO_OType=GPIO_OType_PP;  
  
  GPIO_Init(GPIOA,&gpio);
  
  gpio.GPIO_Pin=GPIO_Pin_10;
  gpio.GPIO_Mode=GPIO_Mode_IN;     
  gpio.GPIO_PuPd=GPIO_PuPd_NOPULL;
  GPIO_PinAFConfig(GPIOA,GPIO_Pin_10,GPIO_AF_USART1);
  GPIO_Init(GPIOA,&gpio);

  usart.USART_BaudRate=2400;           
  usart.USART_WordLength=USART_WordLength_8b;         
  usart.USART_StopBits=USART_StopBits_1;         
  usart.USART_Parity=USART_Parity_No;            
  usart.USART_Mode=USART_Mode_Rx | USART_Mode_Tx;               
  usart.USART_HardwareFlowControl=USART_HardwareFlowControl_None;
  USART_Init(USART1,&usart);
  USART_Cmd(USART1,ENABLE);
}
int fputc(int ch, FILE* f)
{
USART_SendData(USART1, ch);
while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET) {};
  return ch;
}

int main()
{
USART1_Config();
printf(" THIS IS A DEMO ");
while(1){};
}


无论如何都发送不到超级终端上,到底哪错了啊。

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。