標(biāo)題: stm32串口發(fā)送中文亂碼,發(fā)送英文和字?jǐn)?shù)正常,麻煩各位大佬指點(diǎn)一下 [打印本頁(yè)]

作者: jhjg45    時(shí)間: 2020-7-19 11:08
標(biāo)題: stm32串口發(fā)送中文亂碼,發(fā)送英文和字?jǐn)?shù)正常,麻煩各位大佬指點(diǎn)一下
static void Usart_SendByte( USART_TypeDef * pUSARTx, uint8_t ch )
{

        USART_SendData(pUSARTx,ch);
               
        while (USART_GetFlagStatus(pUSARTx, USART_FLAG_TXE) == RESET);        
}

void Usart_SendStr_length( USART_TypeDef * pUSARTx, uint8_t *str,uint32_t strlen )
{
        unsigned int k=0;
    do
    {
        Usart_SendByte( pUSARTx, *(str + k) );
        k++;
    } while(k < strlen);
}



void Usart_SendString( USART_TypeDef * pUSARTx, uint8_t *str)
{
        unsigned int k=0;
    do
    {
        Usart_SendByte( pUSARTx, *(str + k) );
        k++;
    } while(*(str + k)!='\0');
}


作者: 凌凈清河    時(shí)間: 2020-7-19 22:58
因?yàn)橹形牡淖址幋a是多字節(jié)的,一個(gè)中文字符編譯到程序里是以多個(gè)字節(jié)呈現(xiàn)的,而發(fā)送和接收都是一個(gè)字節(jié)一個(gè)字節(jié)來(lái)的,所以接收端按字節(jié)解析字符就會(huì)出現(xiàn)“亂碼”的情況。
作者: 556cv    時(shí)間: 2020-7-20 00:05
因?yàn)橹形牡木幋a比英文的更復(fù)雜,有多個(gè)字節(jié),一個(gè)一個(gè)顯示看起來(lái)就比較亂




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1