在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

如何使用Tracealyzer的流模式來(lái)跟蹤ThreadX應(yīng)用

我快閉嘴 ? 來(lái)源:麥克泰技術(shù) ? 作者:麥克泰技術(shù) ? 2022-09-16 11:14 ? 次閱讀

Tracealyzer是Percepio 公司開(kāi)發(fā)的一款用于RTOS嵌入式軟件系統(tǒng)的可視化跟蹤工具,提供了30多種相互關(guān)聯(lián)的可視化運(yùn)行時(shí)行為視圖,本文將介紹如何使用Tracealyzer的流模式來(lái)跟蹤ThreadX應(yīng)用。

添加Tracealyzer跟蹤記錄器庫(kù)文件

使用Tracealyzer首先需要在工程中添加用于ThreadX的跟蹤記錄器庫(kù)文件,包括源碼,頭文件、配置文件等。這些文件在Tracealyzer的安裝目錄下可以找到,默認(rèn)的保存路徑可以參考:C:Program FilesPercepioTracealyzer 4ThreadXTraceRecorder。

使用流模式,還需要添加流模式端口所用到的文件,以JLink RTT方式為例需要例如添加記錄器庫(kù)streamports下的Jlink_RTT文件夾中的文件。本文介紹時(shí)使用的是STM32CubeIDE,所有文件添加完成后的工程目錄結(jié)構(gòu)如下圖所示:

29bb06d4-356c-11ed-ba43-dac502259ad0.png

注意在進(jìn)行操作的時(shí)候出現(xiàn)的所有的文件夾名稱及文件保存路徑中均不包含空格和中文字符,以避免在編譯過(guò)程中出現(xiàn)一些奇怪的錯(cuò)誤,以及所有添加文件的頭文件包含路徑都需要在工程中進(jìn)行設(shè)置。文件的添加過(guò)程也可以參考:快速入門| Tracealyzer跟蹤記錄庫(kù)移植

工程相關(guān)宏和IDE選項(xiàng)設(shè)置

(1)要在項(xiàng)目中使用跟蹤首先需要在ThreadX的tx_api.h頭文件中包含記錄器庫(kù)的頭文件。

29e6ec4a-356c-11ed-ba43-dac502259ad0.png

(2)在ThreadX的配置文件tx_user.h中開(kāi)啟跟蹤功能和堆棧檢測(cè)功能,需要通過(guò)修改頭文件中的這兩條宏來(lái)開(kāi)啟。

29f81a24-356c-11ed-ba43-dac502259ad0.png

2a10cfb0-356c-11ed-ba43-dac502259ad0.png

(3)在Tracealyzer的配置文件trcConfig.h文件中需要包含你所使用芯片系列所對(duì)應(yīng)的頭文件,以STM32F4系列芯片為例則是#include "stm32f4xx.h"。

在該文件中還需要指定你所使用的芯片內(nèi)核,如果是使用M3/M4/M7內(nèi)核的芯片則選擇TRC_HARDWARE_PORT_ARM_Cortex_M即可。

2a2bdee0-356c-11ed-ba43-dac502259ad0.png

(4)在trcKernelPortConfig.h文件中,通過(guò)宏#define TRC_CFG_CPU_CLOCK_HZ設(shè)置所使用MCU運(yùn)行的時(shí)鐘主頻,例如運(yùn)行在25MHz。

2a410946-356c-11ed-ba43-dac502259ad0.png

(5)為了實(shí)現(xiàn)一些ThreadX自帶的跟蹤機(jī)制所未提供的更為強(qiáng)大的跟蹤功能,Tracealyzer提供了一個(gè)頭文件trcCTI.h,該文件需要被項(xiàng)目工程中的所有代碼文件都包含。可以借助IDE提供的設(shè)置選項(xiàng)來(lái)實(shí)現(xiàn)。

在STM32CubeIDE的工程設(shè)置中,選擇編譯器Preprocessor選項(xiàng)的Define symbols(-D)一欄添加“__inside_$(notdir $(basename $(@)))”這一全局宏定義命令來(lái)實(shí)現(xiàn)。

2a63966e-356c-11ed-ba43-dac502259ad0.png

在該位置添加宏定義后還需在Miscellaneous選項(xiàng)中添加“-include trcCTI.h”命令。

2a8f3526-356c-11ed-ba43-dac502259ad0.png

在工程代碼中啟動(dòng)跟蹤

在ThreadX的入口函數(shù)tx_application_define()的入口位置調(diào)用vTraceEnable()函數(shù)開(kāi)啟Tracealyzer跟蹤。vTraceEnable()函數(shù)根據(jù)函數(shù)參數(shù)的不同支持多種設(shè)置,此處TRC_START指初始化并直接開(kāi)始跟蹤。

2ae414a6-356c-11ed-ba43-dac502259ad0.png

Tracealyzer電腦端軟件的設(shè)置

(1)開(kāi)始實(shí)時(shí)跟蹤。啟動(dòng)Tracealyzer,從File->Settings->J-Link Settings設(shè)置調(diào)試器所使用的接口和芯片型號(hào)。

2affe0aa-356c-11ed-ba43-dac502259ad0.png

(2)在PSF Streaming Settings,設(shè)置Target Connection為:SEGGER RTT,使用J-Link RTT通訊機(jī)制,將Trace數(shù)據(jù)從目標(biāo)板經(jīng)過(guò)J-Link調(diào)試器傳送到PC端軟件。

2b1cb4d2-356c-11ed-ba43-dac502259ad0.png

(3)運(yùn)行目標(biāo)平臺(tái)程序,點(diǎn)“Start Recording”圖標(biāo)打開(kāi)Live Stream窗口,點(diǎn)“Start Session”按鈕即可開(kāi)始實(shí)時(shí)跟蹤。

(4)示例中創(chuàng)建了一個(gè)簡(jiǎn)單的優(yōu)先級(jí)為10的循環(huán)打印任務(wù) ,可以看到在Tracealyzer中成功顯示了該任務(wù)中調(diào)用的延時(shí)函數(shù),及執(zhí)行過(guò)程中被系統(tǒng)中更高優(yōu)先級(jí)的定時(shí)器任務(wù)System Timer Thread任務(wù)搶占的執(zhí)行情況。

2b415c92-356c-11ed-ba43-dac502259ad0.png

2b5ca272-356c-11ed-ba43-dac502259ad0.png

作為一款功能強(qiáng)大的RTOS可視化跟蹤工具,系統(tǒng)運(yùn)行時(shí)的行為提供了前所未有的洞察方法。能夠幫助開(kāi)發(fā)人員加快固件的開(kāi)發(fā),減少對(duì)系統(tǒng)驗(yàn)證和性能優(yōu)化所需要的時(shí)間。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5095

    文章

    19189

    瀏覽量

    307965
  • threadx
    +關(guān)注

    關(guān)注

    0

    文章

    15

    瀏覽量

    13870
  • RTOS
    +關(guān)注

    關(guān)注

    22

    文章

    819

    瀏覽量

    119914

原文標(biāo)題:如何使用Tracealyzer流模式跟蹤ThreadX?

文章出處:【微信號(hào):麥克泰技術(shù),微信公眾號(hào):麥克泰技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何通過(guò)Tracealyzer實(shí)現(xiàn)Linux系統(tǒng)的跟蹤

    Tracealyzer是Percepio 公司開(kāi)發(fā)的一款可視化跟蹤工具, 目前它提供了30多種相互關(guān)聯(lián)的運(yùn)行時(shí)行為視圖,支持裸機(jī)、FreeRTOS、μC/OS-III、Zephyr、ThreadX、VxWorks、Linux系統(tǒng)
    的頭像 發(fā)表于 12-08 14:08 ?1347次閱讀
    如何通過(guò)<b class='flag-5'>Tracealyzer</b>實(shí)現(xiàn)Linux系統(tǒng)的<b class='flag-5'>跟蹤</b>?

    Tracealyzer 技術(shù)分享

    有兩種方式1.Snapshot Mode(快照模式)特點(diǎn):跟蹤的數(shù)據(jù)保存在目標(biāo)RAM中,幾KB的跟蹤緩沖區(qū)通常足以獲得最新事件的可靠跟蹤。基本上任何系統(tǒng)都可以使用。2.Streamin
    發(fā)表于 01-04 21:10

    教你快遞入門-Tracealyzer跟蹤記錄庫(kù)移植

    。使用Tracealyzer,可以查看到系統(tǒng)的真實(shí)運(yùn)行情況,為開(kāi)發(fā)人員節(jié)省排除錯(cuò)誤的時(shí)間。Tracealyzer由PC應(yīng)用程序和跟蹤組件組成,Percepio提供了跟蹤記錄庫(kù)(Trac
    發(fā)表于 07-31 14:08

    Tracealyzer利用CortexM的ITM實(shí)現(xiàn)跟蹤

    通過(guò)EWARM來(lái)實(shí)時(shí)獲取跟蹤數(shù)據(jù)。圖 6 設(shè)置模式的連接方式九、開(kāi)啟實(shí)時(shí)跟蹤。需要先啟動(dòng)Traceal
    發(fā)表于 12-05 15:34

    如何使用Tracealyzer預(yù)先定義的記錄器擴(kuò)展文件實(shí)現(xiàn)用戶應(yīng)用程序跟蹤

    需要注意的是目前Tracealyzer V4.2.9版本僅支持模式,暫不支持快照模式。 請(qǐng)參考Tracealyzer用戶手冊(cè)在項(xiàng)目中集成
    發(fā)表于 12-18 13:37

    出現(xiàn)“丟失事件”?看Tracealyzer模式如何調(diào)優(yōu)

    Tracealyzer 針對(duì)FreeRTOS和 Micrium μC/OS的記錄器庫(kù)可以配置成通過(guò)可用的通信接口(例如串口)來(lái)傳輸跟蹤數(shù)據(jù)。用戶通過(guò)提供一個(gè)自定義的“端口”(stre
    發(fā)表于 02-19 10:06

    通過(guò)Tracealyzer用戶事件來(lái)了解應(yīng)用程序

    Tracealyzer跟蹤記錄器庫(kù)的集成。可視化特定應(yīng)用程序的自定義信息的第一步是創(chuàng)建一個(gè)用戶事件通道。這是一個(gè)字符串輸出通道,允許開(kāi)發(fā)人員添加自己的自定義事件,在Tracealyzer中稱為用戶事件。例如,如果想要傳輸
    發(fā)表于 08-20 10:11

    使用Tracealyzer跟蹤FreeRTOS內(nèi)核

    Tracealyzer。我在幾分鐘內(nèi)將FreeRTOS支持Tracealyzer運(yùn)行的必要的幾個(gè)功能函數(shù)集成到代碼里面,工具鏈的安裝以及通過(guò) J-Link 模式連接到開(kāi)發(fā)板的過(guò)程很
    發(fā)表于 12-01 14:57

    如何使用Tracealyzer理解多任務(wù)調(diào)度?

    任務(wù)使用了多少CPU時(shí)間?在運(yùn)行時(shí)系統(tǒng)中實(shí)際發(fā)生了什么?Tracealyzer是一款記錄RTOS運(yùn)行時(shí)行為的可視化分析工具,通過(guò)30多個(gè)相互關(guān)聯(lián)的視圖對(duì)記錄數(shù)據(jù)進(jìn)行解析,向用戶展示應(yīng)用層級(jí)詳細(xì)視圖,作為
    發(fā)表于 12-17 16:01

    如何使用Tracealyzer模式跟蹤ThreadX

    Tracealyzer是Percepio 公司開(kāi)發(fā)的一款用于RTOS的嵌入式軟件系統(tǒng)的可視化跟蹤工具,提供了30多種相互關(guān)聯(lián)的可視化運(yùn)行時(shí)行為視圖,本文將介紹如何使用Tracealyzer
    發(fā)表于 09-23 13:25

    是否需要在iMXRT1060 EVK板上執(zhí)行任何特定操作才能使tracealyzer正常工作?

    我有 iMXRT1060EVK,想在 FreeRTOS 的模式下使用 Tracealyzer。我正在使用 IAR EW 和 I-jet 調(diào)試探針。我已按照以下鏈接中的步驟進(jìn)行操作,但數(shù)據(jù)
    發(fā)表于 04-17 08:02

    Tracealyzer實(shí)現(xiàn)跟蹤最簡(jiǎn)單的方法

    Tracealyzer 實(shí)現(xiàn)跟蹤最簡(jiǎn)單的方法就是使用SEGGER J-Link調(diào)試器,通過(guò)RTT功能來(lái)實(shí)現(xiàn)數(shù)據(jù)的傳送。RTT需要在RAM上建立一段緩存,在目標(biāo)系統(tǒng)運(yùn)行期間,由J-Link讀取緩存中的數(shù)據(jù)。一般來(lái)說(shuō)RTT的速度和
    的頭像 發(fā)表于 09-02 11:11 ?2387次閱讀

    Tracealyzer跟蹤記錄庫(kù)移植

    使用Tracealyzer,首先要將跟蹤記錄庫(kù)集成到工程。安裝了Tracealyzer 4之后,在安裝路徑下找到以RTOS名稱命名的文件夾,將TraceRecorder子文件夾復(fù)制到自己的工程目錄中。以FreeRTOS為例:
    的頭像 發(fā)表于 11-08 11:17 ?1814次閱讀

    Tracealyzer利用CortexM的ITM實(shí)現(xiàn)跟蹤

    Tracealyzer快照模式,能夠跟蹤RTOS系統(tǒng)的運(yùn)行時(shí)間受限于硬件可用的RAM大小,通常只能追蹤幾十秒的時(shí)間。使用模式則不會(huì)存在這
    的頭像 發(fā)表于 12-20 11:12 ?1866次閱讀

    如何通過(guò)Tracealyzer導(dǎo)出的跟蹤數(shù)據(jù)對(duì)任務(wù)進(jìn)行分析?

    Tracealyzer是Percepio 公司開(kāi)發(fā)的一款用于RTOS的可視化跟蹤工具, 目前Tracealyzer提供了30多種相互關(guān)聯(lián)的運(yùn)行時(shí)行為視圖,對(duì)系統(tǒng)運(yùn)行時(shí)的行為提供了前所未有的洞察方法。能夠幫助開(kāi)發(fā)人員加快固件的開(kāi)發(fā)
    的頭像 發(fā)表于 02-06 14:13 ?1171次閱讀
    主站蜘蛛池模板: 在线观看免费高清 | 国产色秀视频在线观看 | 久久久久久天天夜夜天天 | 日韩三级免费 | 98色花堂国产第一页 | 欧美在线视频免费播放 | 日日夜夜天天操 | 亚洲成人免费 | 亚洲免费观看在线视频 | xxxx黄色| 欧美三级一级 | 天天操夜夜欢 | 中文免费观看视频网站 | 狠狠色丁香久久综合婷婷 | 韩国三级hd中文字幕 | 免费观看在线视频 | 天堂日本| 美女黄页网站免费进入 | 亚欧色视频在线观看免费 | 天天骑夜夜操 | 欧美性video精品 | 婷婷亚洲视频 | 磁力bt种子搜索在线 | 米奇久久| 久久久久久久影院 | 国产成人mv 在线播放 | 国产专区青青草原亚洲 | 欲色影视香色天天影视来 | bt天堂网在线资源www | 免费视频网站在线看视频 | 国产激情电影综合在线看 | 88av视频在线 | 久久偷窥视频 | 久久综合五月开心婷婷深深爱 | 黄色毛片免费网站 | 日本天天色 | 亚洲a毛片 | 成人羞羞视频国产 | 2019国产情侣 | 1024手机最新手机在线 | 一区二区三区精品视频 |