CH32V307 MRS printf 串口輸出的問題。

在用ch32v307rct6 做一個(gè)串口交互的程序:想要先輸出一個(gè)提示符號(hào)'#' 然后回顯鍵入的非0x0d/0x0a 的字符,當(dāng)鍵入0x0d/0x0a 后,顯示整個(gè)字符串,換新行,顯示'#'. 重復(fù)上述過程。

void usart_printf_test(void)

{


? ? uint8_t c,vnIn ;

? ? char vsBuf[64] = {0};


? ? printf("#");

? ? while(1) {

? ? ? ? if((c = USART_getchar())== 0x1b) break;

? ? ? ? if((c == 0x0d )||(c == 0x0a)) {

? ? ? ? ? ? if(vsBuf[0] != '\0') printf("%s",vsBuf);

? ? ? ? ? ? printf("\r\n");

? ? ? ? ? ? for(vnIn= 0; vnIn < 64; vnIn++) vsBuf[vnIn] = 0;

? ? ? ? ? ? vnIn = 0;

? ? ? ? ? ? printf("#");

? ? ? ? }

? ? ? ? else {

? ? ? ? ? ? printf("%c",c);

? ? ? ? ? ? vsBuf[vnIn++] = c;

? ? ? ? ? ? if(vnIn == 64) vnIn = 0;

? ? ? ? }

? ? }

? ? return ;

}

上述代碼在keil 上編譯下載到stm32f103 上沒問題,移植到ch32v307 在MRS 編譯下載到ch32v307 上始終不對(duì),只按回車鍵,ch32v307 應(yīng)該會(huì)送的字符時(shí):0x0d 0x0a 0x23(#) , 但實(shí)際送回的順序是:0x23 0x0d 0x0a ,無法實(shí)現(xiàn)在提示符后顯示鍵入字符的功能。

您好,若方便,可將代碼整體發(fā)過來看一下(lzs@wch.cn)


好的,在例程上改的。

icon_rar.gifUSART_Polling.rar



您好,你發(fā)我的例程編譯有問題,路徑不對(duì)且調(diào)用的函數(shù)查找不到,你可以將整個(gè)EVT發(fā)我,或者將用于STM32的可用代碼發(fā)過來看一下(lzs@wch.cn)。


你好evt文件已發(fā)。


您好,郵件已回復(fù),請(qǐng)注意查收


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频