女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何實(shí)現(xiàn)Printf()接口重定向到UART

CHANBAEK ? 來(lái)源:開(kāi)心果 Need Car ? 作者:開(kāi)心果 Need Car ? 2023-10-01 10:13 ? 次閱讀

車規(guī)級(jí)MCU開(kāi)發(fā),不像PC端,包含stdio.h頭文件就可以使用Printf()函數(shù)。為了實(shí)現(xiàn)PC端Printf()接口功能,需要在MCU端實(shí)現(xiàn)Printf()接口的"重定向"。所謂的重定向,就是重新定義Printf()接口函數(shù)里調(diào)用的與輸出設(shè)備相關(guān)的函數(shù),eg:使用Printf()接口將MCU中的信息,通過(guò)串口或者Ethernet輸出到終端上位機(jī)

所以,如果要實(shí)現(xiàn)Printf()接口的重定向,選擇合適的MCU驅(qū)動(dòng)是第一步,本文選擇UART(Universal Asynchronous Receiver-Transmitter)實(shí)現(xiàn)Printf()接口的重定向,討論如何實(shí)現(xiàn)Printf()接口重定向到UART。

1、UART驅(qū)動(dòng)實(shí)現(xiàn)

對(duì)于UART驅(qū)動(dòng)的實(shí)現(xiàn),根據(jù)芯片類型而定。本文使用TC397,文末給出源碼,不做具體討論。

2、重定向Printf()

重定向Printf()接口,本文重新命名為Debugger_printf(),在Debugger_printf()接口中調(diào)用UART驅(qū)動(dòng)發(fā)送接口sendUARTMessage(),Debugger_printf()接口代碼示意如下:

圖片

(一)頭文件

Debugger_printf()接口中需要包含頭文件,因?yàn)樵谌缟洗a中使用到了va_list,而宏va_list在頭文件中定義。頭文件并不在工程文件中,而是在Mingw64編譯環(huán)境庫(kù)中,示意如下:

圖片

除了宏va_list之外,使用到的va_start(v,l)、va_end(v)等也在頭文件中。

3、Debugger_printf()使用

完成Debugger_printf()接口重定向以后,即可在程序任意需要輸出信息的位置打印log,之后在串口終端中顯示信息。eg:在main線程中打印信息,代碼示意如下:

圖片

輸出的log信息如下所示:

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17829

    瀏覽量

    360272
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8933

    瀏覽量

    153189
  • uart
    +關(guān)注

    關(guān)注

    22

    文章

    1265

    瀏覽量

    103228
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4886

    瀏覽量

    70242
  • Printf
    +關(guān)注

    關(guān)注

    0

    文章

    84

    瀏覽量

    14079
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    STM32使用串口重定向系統(tǒng)

    STM32使用串口重定向系統(tǒng)printf函數(shù)輸出時(shí)出現(xiàn)一初始化或使用printf函數(shù)系統(tǒng)卡死的原因及解決辦法在STM32開(kāi)發(fā)當(dāng)中,會(huì)經(jīng)常使用系統(tǒng)自帶的printf函數(shù)來(lái)查看調(diào)試輸出,通
    發(fā)表于 08-24 08:19

    實(shí)現(xiàn)printf函數(shù)的重定向

    目錄重定向函數(shù)屬性設(shè)置重定向函數(shù)在配置好串口之后需要在相關(guān)文件中添加以下函數(shù)以實(shí)現(xiàn)printf函數(shù)的重定向//注意添加頭文件#include
    發(fā)表于 08-24 07:09

    如何實(shí)現(xiàn)printf()函數(shù)與scanf()的串口重定向

    如何實(shí)現(xiàn)printf()函數(shù)與scanf()的串口重定向
    發(fā)表于 12-01 07:01

    STM32使用串口重定向printf打印時(shí)程序不執(zhí)行是為啥呢?

    STM32使用串口重定向printf打印時(shí)程序不執(zhí)行是為啥呢?
    發(fā)表于 12-01 07:56

    如何利用STM32F4串口重定向Printf()?

    如何利用STM32F4串口重定向Printf()?
    發(fā)表于 12-01 07:32

    如何將串口重定向printf函數(shù)呢

    如何將串口重定向printf函數(shù)呢?有哪些操作流程呢?
    發(fā)表于 12-01 06:01

    如何去實(shí)現(xiàn)STM32 printf的串口重定向

    如何去實(shí)現(xiàn)STM32 printf的串口重定向呢?有哪些操作流程?
    發(fā)表于 12-01 07:03

    如何去實(shí)現(xiàn)printf()函數(shù)與scanf()的串口重定向

    如何去實(shí)現(xiàn)printf()函數(shù)與scanf()的串口重定向呢?有哪些操作流程呢?
    發(fā)表于 12-02 07:29

    怎么去解決STM32串口重定向printf出現(xiàn)FILE未定義的問(wèn)題呢

    怎么去解決STM32串口重定向printf出現(xiàn)FILE未定義的問(wèn)題呢?
    發(fā)表于 12-02 07:34

    printf()函數(shù)重定向LCD怎么實(shí)現(xiàn)

    printf()函數(shù)也可以 重定向LCD嗎?把printf()函數(shù)重定向LCD怎么
    發(fā)表于 12-02 06:01

    口重定向是什么意思?

    口重定向是什么意思?
    發(fā)表于 12-08 06:57

    如何去實(shí)現(xiàn)STM32的串口重定向

    UART是什么?如何去實(shí)現(xiàn)STM32的串口重定向呢?
    發(fā)表于 02-18 06:48

    使用printf()函數(shù)時(shí)默認(rèn)UART0輸出,請(qǐng)教如何重定向printf()UART1?

    芯片:N76E003; 編譯環(huán)境:keil5 使用printf()函數(shù)時(shí)默認(rèn)UART0輸出,請(qǐng)教如何重定向printf()
    發(fā)表于 06-25 07:12

    實(shí)現(xiàn)重定向printf()和scanf() 函數(shù)案例分析

    要想printf()和scanf() 函數(shù)工作,我們需要把printf()和scanf() 重新定向串口中。重定向是指用戶可以自己重寫(xiě)C
    發(fā)表于 06-23 08:26 ?9631次閱讀
    <b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>重定向</b><b class='flag-5'>printf</b>()和scanf() 函數(shù)案例分析

    Keil下使用STlink重定向printf的配置

    Keil下使用STlink重定向printf的配置1. printf 重定向Keil默認(rèn)下使用Micro LIB庫(kù),該庫(kù)調(diào)用 fputs 實(shí)現(xiàn)
    發(fā)表于 12-27 18:43 ?18次下載
    Keil下使用STlink<b class='flag-5'>重定向</b><b class='flag-5'>printf</b>的配置