要崩溃了,串口没有输出,这是我找的例程,测试没有问题
int main(void)
{
//bsp_int();
//read_dip_set();
#define GPIO_AF_USART1 GPIO_AF_1
GPIO_InitTypeDef PORT_UART1_TX;
GPIO_InitTypeDef PORT_UART1_RX;
GPIO_InitTypeDef GPIO_InitStructure;
USART_InitTypeDef MyUsart1;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource9, GPIO_AF_USART1);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource10, GPIO_AF_USART1);
//??IO???????
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
//TX IO ???
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
//RX IO ???
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
GPIO_Init(GPIOA, &GPIO_InitStructure);
//4???????
MyUsart1.USART_BaudRate=9600;//?????
MyUsart1.USART_WordLength=USART_WordLength_8b;//??????
MyUsart1.USART_Parity=USART_Parity_No;//??????
MyUsart1.USART_StopBits=USART_StopBits_1;//?????
MyUsart1.USART_HardwareFlowControl=USART_HardwareFlowControl_None;//?????
MyUsart1.USART_Mode=USART_Mode_Tx|USART_Mode_Rx;//????
USART_Init(USART1,&MyUsart1);
USART_Cmd(USART1,ENABLE);
while(1)
{ led1_clr;
USART_SendData(USART1,0x55);
led1_set;
clz++;
delay1ms(10);
}
}
我把IO改为PA2,PA3, txd没有输出,一直是高,我用的是STM32F030C8T6, 怎么回事, 救命啊
int main(void)
{
//bsp_int();
//read_dip_set();
#define GPIO_AF_USART1 GPIO_AF_1
GPIO_InitTypeDef PORT_UART1_TX;
GPIO_InitTypeDef PORT_UART1_RX;
GPIO_InitTypeDef GPIO_InitStructure;
USART_InitTypeDef MyUsart1;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource2, GPIO_AF_USART1);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource3, GPIO_AF_USART1);
//??IO???????
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
//TX IO ???
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
//RX IO ???
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
GPIO_Init(GPIOA, &GPIO_InitStructure);
//4???????
MyUsart1.USART_BaudRate=9600;//?????
MyUsart1.USART_WordLength=USART_WordLength_8b;//??????
MyUsart1.USART_Parity=USART_Parity_No;//??????
MyUsart1.USART_StopBits=USART_StopBits_1;//?????
MyUsart1.USART_HardwareFlowControl=USART_HardwareFlowControl_None;//?????
MyUsart1.USART_Mode=USART_Mode_Tx|USART_Mode_Rx;//????
USART_Init(USART1,&MyUsart1);
USART_Cmd(USART1,ENABLE);
while(1)
{ led1_clr;
USART_SendData(USART1,0x55);
led1_set;
clz++;
delay1ms(10);
}
}
|