本帖最后由 chenjiabao 于 2016-12-4 13:03 编辑
void MyUart2_Init(void)
{
UART2_DeInit();
UART2_Init((u32)115200, UART2_WORDLENGTH_8D, UART2_STOPBITS_1,
UART2_PARITY_NO, UART2_SYNCMODE_CLOCK_DISABLE, UART2_MODE_TXRX_ENABLE);
UART2_Cmd(ENABLE);
}
void Uart2_Send_Byte(uint8_t ch)
{
uint8_t temp;
UART2_SendData8((unsigned char)ch);
while (UART2_GetFlagStatus(UART2_FLAG_TXE) == RESET)//程序跳不出这个循环
{
temp = UART2->SR;
}
}
int main(void)
{
All_Congfig();
LED_OFF();
delay_ms(500);
LED_ON();
while(1)
{
LED_REVERSAL();
delay_ms(500);
Uart2_Send_Byte(0xFF);
}
}void All_Congfig(void)
{
CLOCK_Config(SYS_CLOCK);//系统时钟初始化
LED_Init();
MyUart2_Init();
}
stm8单片机用串口2发送数据,发送数据寄存器(UART2->SR的最高位)一直为0,在线调试发现temp一直为0x00.是哪里配置错了么?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>