日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

更正文檔

概述

SystemView 是一個用于分析嵌入式系統(tǒng)性能的trace工具。SystemView可以分析系統(tǒng)中有哪些中斷、任務執(zhí)行了,以及它們的先后關系。 可以完整的深入觀察一個應用程序運行時的行為,它揭示了在任務運行中發(fā)生了什么,哪個中斷觸發(fā)了任務切換,中斷和任務調(diào)用了哪個底層系統(tǒng)的API函數(shù)。SystemView 不但可以實時分析和展示數(shù)據(jù),而且可以幫助用戶進行系統(tǒng)調(diào)試和問題診斷,尤其是在開發(fā)和處理具有多個任務的復雜系統(tǒng)時。

SystemView 由兩個部分組成:

SystemView 嵌入式端程序:用于記錄嵌入式系統(tǒng)的行為,通過實時傳輸(Real Time Transfer, RTT)技術將記錄的數(shù)據(jù)通過J-link工具傳輸?shù)絇C機上。

SystemView PC端程序:用于收集目標板上傳的數(shù)據(jù)信息,并在不同的窗口中顯示這些信息。這些記錄可以保存到文件中,用于以后的分析。

版權信息

Apache license v2.0

目錄結構

├── Config
│   ├── Global.h                             # Global 數(shù)據(jù)類型定義
│   ├── SEGGER_RTT_Conf.h                    # SYSTEMVIEW RTT配置文件
│   ├── SEGGER_SYSVIEW_AliOSThings.c         # SYSTEMVIEW AliOSThings 適配代碼
│   ├── SEGGER_SYSVIEW_Conf.h                # SYSTEMVIEW配置文件
│   ├── SEGGER_SYSVIEW_Config_AliOSThings.c  # SYSTEMVIEW AliOSThings 相關配置
│   └── SYSVIEW_AliOSThings.txt              # SEGGER SYSTEMVIEW PC端配置文件
├── SEGGER
│   ├── SEGGER.h
|   ├── SEGGER_RTT.c                         # SEGGER RTT 模塊源代碼
|   ├── SEGGER_RTT.h                         # SEGGER RTT 模塊頭文件
|   ├── SEGGER_SYSVIEW.c                     #  SEGGER SYSTEMVIEW 模塊源代碼
|   ├── SEGGER_SYSVIEW.h                     # SEGGER SYSTEMVIEW 模塊頭文件
|   ├── SEGGER_SYSVIEW_ConfDefaults.h        # SEGGER SYSTEMVIEW 默認配置頭文件
|   ├── SEGGER_SYSVIEW_Int.h                 # SEGGER SYSTEMVIEW 內(nèi)部頭文件
|   ├── SEGGER_RTT_printf.c                  # SEGGER RTT 模塊 printf 源代碼
│   └── SEGGER_RTT_ASM_ARMv7M.S              # 針對Cortex-M 優(yōu)化RTT模塊
├── k_trace.c                                # 核心邏輯代碼
├── uart_send.c                              # 用串口傳輸數(shù)據(jù)的示例代碼
├── README.md                                # 說明文檔
└── package.yaml                             # 編譯配置文件

依賴組件

常用配置

系統(tǒng)中相關配置已有默認值,如需修改配置,統(tǒng)一在package.yaml中def_config節(jié)點修改,具體如下:

RTT 緩存大小,默認1024, 可修改為4096,修改YAML配置如下:

def_config:
     SEGGER_SYSVIEW_RTT_BUFFER_SIZE: 4096

更多配置可以參考SystemView用戶手冊第4.5章 Generic configuration

API說明

使用 SEGGER_SYSVIEW_PrintfTarget API通過J-link打印log 信息到時序圖和Terminal窗口。

void SEGGER_SYSVIEW_PrintfTarget(const char *s, ...);

例子:SEGGER_SYSVIEW_PrintfTarget("hello world! count %d \r\n", count);

更多的API說明參考SystemView用戶手冊第7章 API reference

使用示例

將HaaS100 SWDIO、SWCLK和地GND共3根線與J-Link仿真器連接。

HaaS引腳編號

HaaS引腳說明

J-link引腳說明

J-link引腳編號

41

SWCLK

CLK

9

42

SWDIO

TMS

7

40

GND

GND

8

硬件連接圖:

組件使用示例相關的代碼下載、編譯和固件燒錄均依賴AliOS Things配套的開發(fā)工具,所以首先需要參考《AliOS Things集成開發(fā)環(huán)境使用說明之搭建開發(fā)環(huán)境》,下載安裝。待開發(fā)環(huán)境搭建完成后,可以按照以下步驟進行示例的測試。

步驟1 創(chuàng)建或打開工程

打開已有工程

如果用于測試的案例工程已存在,可參考《AliOS Things集成開發(fā)環(huán)境使用說明之打開工程》打開已有工程。

創(chuàng)建新的工程

組件的示例代碼可以通過編譯鏈接到AliOS Things的任意案例(solution)來運行,這里選擇helloworld_demo案例。helloworld_demo案例相關的源代碼下載可參考《AliOS Things集成開發(fā)環(huán)境使用說明之創(chuàng)建工程》

步驟2 添加組件

案例下載完成后,需要在helloworld_demo組件的package.yaml中添加對組件的依賴:

depends:
  - trace: dev_aos # helloworld_demo中引入trace組件

步驟3 下載組件

在已安裝了的開發(fā)環(huán)境工具欄中,選擇Terminal -> New Terminal啟動終端,并且默認工作路徑為當前工程的workspace,此時在終端命令行中輸入:

aos install trace

上述命令執(zhí)行成功后,組件源碼則被下載到了./components/trace路徑中。

步驟4 添加示例

修改文件solutions/helloworld_demo/helloworld.c

添加頭文件

#include "SEGGER_SYSVIEW.h"

printf("hello world! count %d \r\n", count++);

改為;

SEGGER_SYSVIEW_PrintfTarget("hello world! count %d \r\n", count++);

步驟5 編譯固件

在示例代碼已經(jīng)添加至組件的配置文件,并且helloworld_demo已添加了對該組件的依賴后,就可以編譯helloworld_demo案例來生成固件了,具體編譯方法可參考《AliOS Things集成開發(fā)環(huán)境使用說明之編譯固件》

步驟6 燒錄固件

helloworld_demo案例的固件生成后,可參考《AliOS Things集成開發(fā)環(huán)境使用說明之燒錄固件》來燒錄固件。

步驟7 打開串口

固件燒錄完成后,可以通過串口查看示例的運行結果,打開串口的具體方法可參考《AliOS Things集成開發(fā)環(huán)境使用說明之查看日志》

當串口終端打開成功后,可在串口中輸入help來查看已添加的測試命令。

步驟8 測試示例

1 下載安裝SystemViewSystemView下載地址

根據(jù)你所用的操作系統(tǒng)下載對應版本的SystemView,然后進行安裝。

2 配置SystemView

拷貝components/trace/Config/SYSVIEW_AliOSThings.txt文件到PC機SystemView軟件安裝目錄 C:\Program Files\SEGGER\SystemView\Description下。

3 打開SystemView PC軟件點擊菜單欄Target打開 Recorder Configuration。

參考下圖配置參數(shù)信息,其中 Address 信息可以從開機串口log 中獲取:例如開機串口log中顯示:_SEGGER_RTT:0x34683a1c。

4 開始采集

點擊菜單欄Target打開 Start Recording

采集效果界面顯示如下:

注意

如果SystemView PC端軟件提示overflow,可以通過修改package.yaml 文件增大設備端緩存大小。

修改方式如下:

def_config: 下添加一行SEGGER_SYSVIEW_RTT_BUFFER_SIZE: 4096