|
请问 我单独在主函数里调用串口发送函数 UART1_SendByte(0x11)后,调试助手里能正确显示11; 但我在别的函数中调用UART1_SendByte(0x11),却不能正确显示11,附UART1_SendByte()原型为:
//发送一个字节,查询发送,当发送寄存器是空的就发送
void UART1_SendByte(u8 data)
{
UART1_SendData8((unsigned char)data);
while(UART1_GetFlagStatus(UART1_FLAG_TXE)==RESET);
}
希望哪位有经验的朋友指点一下,谢谢!!
这是不是与串口初始化设置有关 初始化代码:
//串口初始化
void USART1_Init(void)
{
CLK_PeripheralClockConfig(CLK_PERIPHERAL_UART1,ENABLE);
UART1_DeInit();
UART1_Init((uint32_t)115200,UART1_WORDLENGTH_8D,UART1_STOPBITS_1,UART1_PARITY_NO,
UART1_SYNCMODE_CLOCK_DISABLE,UART1_MODE_TXRX_ENABLE);
UART1_ITConfig(UART1_IT_RXNE_OR,ENABLE);
UART1_Cmd(ENABLE);
}
|
|