#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("\r\n THIS IS A DEMO \r\n");
while(1){};
}
无论如何都发送不到超级终端上,到底哪错了啊。