91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

關(guān)于一種高效printf打印方式

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 作者:黃工的嵌入式技術(shù) ? 2020-02-29 16:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1寫在前面

SWO:Serial Wire Output,串行線輸出

RTT:Real Time Transfer,實時傳輸

前面SWO文章,實現(xiàn)原理是通過MCU的SWO引腳輸出信息(到顯示終端SWV)。

而本文講述的RTT不需要通過額外SWO引腳,即可實現(xiàn)printf輸出,而且性能(耗時)遠(yuǎn)高于SWO。

2關(guān)于RTT

SEGGER實時傳輸(RTT)是一種在嵌入式應(yīng)用中實現(xiàn)交互式用戶I/O的技術(shù)。

它結(jié)合了SWO和半主機( semihosting)的優(yōu)點,具有很高的性能。

使用RTT,可以從目標(biāo)微控制器輸出信息,并以非常高的速度向應(yīng)用程序發(fā)送輸入,而不會影響目標(biāo)的實時性。

Cortex - M0不支持SWO,而本文講述的RTT則支持Cortex - M0,文末提供STM32F0工程。

3關(guān)于J-Link RTT Viewer

J-Link RTT Viewer是在調(diào)試主機上使用RTT功能的Windows GUI應(yīng)用程序。

RTT Viewer可以獨立使用,打開自己與J-Link的連接,并與正在運行的調(diào)試會話目標(biāo)或并行,連接到它并使用現(xiàn)有的J-Link連接。

RTT Viewer支持RTT的主要功能:

·通道0上的終端輸出

·將文本輸入發(fā)送到通道0

·最多16個虛擬終端,只有一個目標(biāo)通道

·控制文本輸出:彩色文本,擦除控制臺

·在通道1上記錄數(shù)據(jù)

·

·

本文主要結(jié)合J-Link RTT Viewer講述,當(dāng)然支持RTT的還有J-Link RTT Client 和J-Link RTT Logger。

更多相關(guān)介紹,可以參看:

https://www.segger.com/products/debug-probes/j-link/technology/about-real-time-transfer

(公號不支持外鏈接,請復(fù)制鏈接到瀏覽器打開)

4獲取RTT源碼

我們需要在工程中添加RTT源碼,同時需要J-Link RTT Viewer查看器支持。

J-Link / J-Trace下載地址(Windows版本):

https://www.segger.com/downloads/jlink/JLink_Windows.exe

安裝之后,在安裝目錄下包含RTT源碼:

C:Program Files (x86)SEGGERJLinkSamplesRTT

解壓SEGGER_RTT_V***.zip之后,復(fù)制整個RTT目錄源碼到你工程。

提示:

解壓之后,只需復(fù)制RTT目錄就行。

4.1 添加RTT到工程

添加源碼文件到工程主要有兩個步驟:1.添加源碼文件到工程。 2.添加文件路徑。

這里不講述具體添加過程,Keil 和 IAR之前有講述,請參看我的文章:

Keil新建基礎(chǔ)軟件工程

IAR新建基礎(chǔ)軟件工程

當(dāng)然,我下面有提供添加好的源碼工程。

4.2 應(yīng)用程序

調(diào)用RTT的打印,和常規(guī)的printf類似。

添加頭文件:#include "SEGGER_RTT.h"

再調(diào)用SEGGER_RTT_printf函數(shù)打印輸出:

這里SEGGER_RTT_printf和print不同的是:前面多了一個“終端號”參數(shù)。(我們使用終端0)

5RTT Viewer配置、輸出

和前面講述的SWV查看器類似,配置相關(guān)信息即可輸出。

安裝目錄:C:Program Files (x86)SEGGERJLink

下載程序到MCU,連接J-Link,打開安裝目錄下的J-Link RTT Viewer,配置參數(shù):

輸出效果:

6下載

為方便大家理解,提供源碼工程下載,參考代碼:

STM32F051(HAL)_JLink-RTT

STM32F103(HAL)_JLink-RTT

百度網(wǎng)盤:

https://pan.baidu.com/s/1aYBuHtOgtLqLvj6SsMYlQA

提取碼:nbd3

提示:

1.公眾號不支持外鏈接,請復(fù)制鏈接到瀏覽器打開。

2.源碼僅供個人學(xué)習(xí)參考,不一定適用于實際項目。

3.若鏈接失效,請關(guān)注公眾號,回復(fù)『printf系列教程』獲取最新鏈接。

7

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

    關(guān)注

    0

    文章

    256

    瀏覽量

    35416
  • SWOT
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    8157
  • Printf
    +關(guān)注

    關(guān)注

    0

    文章

    84

    瀏覽量

    14734
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

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

    Bamtone ICT系列:一種新型高效的離子污染測試儀?

    設(shè)計的款精密離子污染檢測儀器,被定位為一種新型高效的離子污染測試儀,代表了當(dāng)前PCBA離子污染檢測向自動化、智能化和高效化發(fā)展的趨勢,是國產(chǎn)替代高端進(jìn)口設(shè)備的
    的頭像 發(fā)表于 01-12 11:28 ?418次閱讀
    Bamtone ICT系列:<b class='flag-5'>一種</b>新型<b class='flag-5'>高效</b>的離子污染測試儀?

    C語言中實現(xiàn)函數(shù)宏的三方式

    在宏的第個分號后便結(jié)束。即 a = b 和 b = tmp 均不受控制語句所作用。 因此,在工程中,般使用三方式來對函數(shù)宏進(jìn)行封裝,分別為 {}、do{...}while(0
    發(fā)表于 12-29 07:34

    tsc mh641系列工業(yè)打印機:高清打印,精準(zhǔn)高效

    作為專為工業(yè)場景設(shè)計的打印設(shè)備,tscmh641打印機在功能與技術(shù)上充分貼合高效生產(chǎn)需求。它具備高清條碼打印能力,搭載先進(jìn)的熱敏/熱轉(zhuǎn)印雙模式打印
    的頭像 發(fā)表于 11-26 16:13 ?621次閱讀
    tsc mh641系列工業(yè)<b class='flag-5'>打印</b>機:高清<b class='flag-5'>打印</b>,精準(zhǔn)<b class='flag-5'>高效</b>

    單片機使用printf打印編譯出錯的原因?

    單片機使用printf打印編譯出錯,有哪些情況?
    發(fā)表于 11-21 06:02

    iSUN3D即將推出單組分彈性樹脂3D打印解決方案!

    iSUN3D將在Formnext 2025發(fā)布單組分彈性樹脂3D打印方案,覆蓋設(shè)計到交付全流程,解決柔彈性制造成本與效率痛點,現(xiàn)場可體驗高速打印與限量禮品。
    的頭像 發(fā)表于 11-17 11:45 ?658次閱讀
    iSUN3D即將推出單組分彈性樹脂3D<b class='flag-5'>打印</b>解決方案!

    求助,關(guān)于C代碼中的printf打印的疑問求解

    在使用E203 testbench執(zhí)行附帶的benchmark測試用例時候,得到如下打印信息: CPU驗證小白枚,有個問題不是很理解:黃色框框內(nèi)的字符看起來應(yīng)該是C代碼中的printf語句
    發(fā)表于 11-10 07:54

    芯未來|數(shù)字化車場國產(chǎn)彩色激光打印機如何實現(xiàn)高效輸出與智能管控

    在部隊數(shù)字化車場的運作中,值班室是信息流轉(zhuǎn)與指令下達(dá)的關(guān)鍵節(jié)點。無論是車輛調(diào)度單、裝備檢查報告還是日常辦公文件,都需要一種高效、可靠且絕對安全的輸出設(shè)備。 芯未來的這款專為嚴(yán)苛環(huán)境設(shè)計的國產(chǎn)A4
    的頭像 發(fā)表于 10-31 16:21 ?572次閱讀

    哪些場景要使用到RFID標(biāo)簽打印機?RFID標(biāo)簽打印般多少錢?

    RFID標(biāo)簽打印機是一種將射頻識別技術(shù)與打印技術(shù)相結(jié)合的設(shè)備,可實現(xiàn)對RFID標(biāo)簽的信息錄入與表面信息打印,廣泛應(yīng)用于多個領(lǐng)域。以下是些常
    的頭像 發(fā)表于 07-15 15:44 ?1034次閱讀
    哪些場景要使用到RFID標(biāo)簽<b class='flag-5'>打印</b>機?RFID標(biāo)簽<b class='flag-5'>打印</b>機<b class='flag-5'>一</b>般多少錢?

    【RA4L1-SENSOR】+ RA4L1-SENSOR開發(fā)版之使用Jlink的RTT打印功能代替串口

    篇帖子中我已經(jīng)實現(xiàn)了板子上的串口USART9進(jìn)行輸出打印,這篇帖子我采用另外一種串口打印來實現(xiàn),這是瑞薩官網(wǎng)實現(xiàn)的最主要打印調(diào)試手段,那
    發(fā)表于 06-09 09:03

    掃碼槍直連打印機掃產(chǎn)品上的條碼二維碼,自動打印對應(yīng)的條碼標(biāo)簽

    在現(xiàn)代企業(yè)的生產(chǎn)、倉儲、物流等環(huán)節(jié)中,條碼標(biāo)簽的打印與使用是項極為常見卻又至關(guān)重要的工作。傳統(tǒng)的依靠電腦連接條碼打印機的打印方式,在面對大規(guī)模、高頻次的
    的頭像 發(fā)表于 06-04 14:08 ?1120次閱讀
    掃碼槍直連<b class='flag-5'>打印</b>機掃產(chǎn)品上的條碼二維碼,自動<b class='flag-5'>打印</b>對應(yīng)的條碼標(biāo)簽

    瑞薩RA單片機在e2 studio環(huán)境下printf編譯出錯的問題解析

    最近看到有些網(wǎng)友在討論關(guān)于:瑞薩RA單片機在e2 studio環(huán)境下printf編譯出錯的問題。
    的頭像 發(fā)表于 05-24 15:51 ?1587次閱讀
    瑞薩RA單片機在e2 studio環(huán)境下<b class='flag-5'>printf</b>編譯出錯的問題解析

    S32K312通過UART口打印系統(tǒng)信息,是否有使用Printf () 函數(shù)打印信息的Demo例程?

    S32K312通過UART口打印系統(tǒng)信息,是否有使用Printf () 函數(shù)打印信息的Demo例程?
    發(fā)表于 04-11 07:21

    掃碼自動打印體化系統(tǒng):直接掃碼打印條碼標(biāo)簽,掃打印

    在當(dāng)今這個快節(jié)奏的生產(chǎn)、物流與零售環(huán)境中,信息的高效管理成為了企業(yè)提升競爭力的關(guān)鍵。傳統(tǒng)的條碼標(biāo)簽打印方式依賴于電腦與條碼打印機的連接,這模式在面對大規(guī)模、高頻次的
    的頭像 發(fā)表于 04-09 15:57 ?1407次閱讀
    掃碼自動<b class='flag-5'>打印</b><b class='flag-5'>一</b>體化系統(tǒng):直接掃碼<b class='flag-5'>打印</b>條碼標(biāo)簽,掃<b class='flag-5'>一</b>個<b class='flag-5'>打印</b><b class='flag-5'>一</b>個

    為何工程塑料不適合打印圓弧形模型?

    打印方式,那每層之間必然會存在定的銜接痕跡。 正因如此,在XY軸方向上遇到弧面或小角度平面時,其層紋會變得異常明顯。從 JLC3D 小編實際打印的圓弧形模型(PLA材料)中可以清
    發(fā)表于 04-07 15:31

    PRINTF函數(shù)無法打印出浮點數(shù)內(nèi)容是為什么?

    1、MCXN947低功耗adc,歷程中使用官方提供的PRINTF無法打印出浮點數(shù)內(nèi)容。 2、同樣在mcuxpresso ide 也不可以打印浮點數(shù),這是為什么呢? 3、使用的歷程是lpadc歷程。
    發(fā)表于 03-20 08:06