日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]一、什么是重定向在程序的調(diào)試過(guò)程中,除了那些高大上的調(diào)試手段外,printf無(wú)疑是我們最熟悉最順手的調(diào)試方法。通過(guò)使用printf,我們可以很方便很直觀的獲取當(dāng)前程序的運(yùn)行狀態(tài)。printf()函數(shù)是格式化輸出函數(shù), 一般

一、什么是重定向

在程序的調(diào)試過(guò)程中,除了那些高大上的調(diào)試手段外,printf無(wú)疑是我們最熟悉最順手的調(diào)試方法。通過(guò)使用printf,我們可以很方便很直觀的獲取當(dāng)前程序的運(yùn)行狀態(tài)。

printf()函數(shù)是格式化輸出函數(shù), 一般用于向標(biāo)準(zhǔn)輸出設(shè)備按規(guī)定格式輸出信息。但是在單片機(jī)開(kāi)發(fā)中,一般情況下并不存在標(biāo)準(zhǔn)輸出設(shè)備,因此我們需要將printf的輸出信息重定向,也就是輸出到其他輸出設(shè)備中去。

二、在stm32平臺(tái)上實(shí)現(xiàn)重定向的方式有兩種,重定向至UART,或者通過(guò)JTAG的SW模式將printf重定向至SWO引腳輸出。

首先介紹第一種,重定向至UART,這種方式我們比較熟悉,ST官方提供的固件庫(kù)中也是使用的這種方法。

代碼如下:在對(duì)UART進(jìn)行初始化后,通過(guò)如下代碼對(duì)printf進(jìn)行重定向

intfputc(intch,FILE*f)

{

USART_SendData(USART1,(uint8_t)ch); while(USART_GetFlagStatus(USART1,USART_FLAG_TC)==RESET)

{}

returnch;

}


或者:

int fputc(int ch ,FILE *f)

{

USART_SendData(USART1,(unsigned char ) ch );

while(USART_GetFlagStatus (USART1 ,USART_FLAG_TC)!=SET);

return ch;

}


三、輸出調(diào)試信息

printf("ReceiveNum:%drn",ReceiveNum);


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉