當前位置: 華文世界 > 數位

程式監控軟體system view的移植和使用

2024-10-17數位

1、什麽是system view

System view是一種對嵌入式系統進行分析和驗證的軟體。當使用受支持的RTOS時,不需要對目標系統的硬體或者軟體進行更改;對於其它系統,必須添加System view附帶的軟體模組。System view可以於任何嵌入式系統一起使用,最好透過J-Link,UART或者TCP/IP進行數據傳輸。

System view主機應用程式支持對嵌入式系統的行為進行詳細分析,它記錄了嵌入式系統執行過程中所產生的監控數據,並在不同的視窗中顯示,也可以將記錄的資訊保存下來,以便於以後進行分析使用。監控數據透過偵錯介面進行記錄,意味著使用system view不需要額外的硬體資源,可以在任何提供偵錯存取的系統上使用。

2、system view能幹什麽

借助Segger J-Link以及即時傳輸技術(RTT),system view可以連續記錄嵌入式系統執行的數據,並對其進行即時視覺化分析,驗證程式是否按照預期那樣執行,明晰嵌入式程式詳細執行細節。system view可以分析硬體中斷、任務和軟體定時器的執行,執行的頻率、準確時間以及它們使用了多少時間。它闡明了什麽東西按什麽順序發生了什麽,哪個中斷觸發了哪個人物的切換,哪個中斷和任務呼叫了底層RTOS的哪個API函式。

可以執行周期精確的分析,甚至可以計時使用者功能。system view可以用來驗證嵌入式系統程式是否按照預期執行,並可用來發現問題以及導致低效的原因。比如多余的中斷,意外的任務排程。system view可以與任何作業系統一起使用,可以呼叫system view事件函式,也可以在沒有即時任務或者即時作業系統中使用,用於分析中斷執行和對使用者的功能比如關鍵子程式進行計時。

3、system view分析系統的組成

根據上面描述可知要使用system view系統的分析監控功能,必須要有一個system view主機應用程式和用於system view分析的目標軟體。也就是上位機PC端system view處理常式和下位機嵌入式運行程式。由於system view分析展示的是即時數據,絲毫不會影響下位機程式的執行,對下位機的資源消耗的比較少。

4、system view的移植和使用

1)下載system view(https://www.segger.com/downloads/systemview/?utm_source=www&utm_medium=top_menu)上位機程式和目標主機源碼。

2)安裝好system view上位機程式。本文以Windows平台為例。

3)解壓縮目標主機源碼,可以得到Config、Sample和SEGGER三個資料夾,如下所示

4)移植system view源碼到目標主機。將目標主機源碼檔復制到一個segger資料夾

需要註意的是,由於Sample資料夾下有多個檔,找打目標主機中對應OS的檔復制即可。如果原計畫中有相應的SEGGER_RTT檔,則不需要移植對應的SEGGER_RTT檔,否則可能出問題,也就是保留原來的檔即可。

5)將system view移植到目標主機,本文以nRF52840常式為例。移植後的相關檔為

6)修改目標主機程式碼,修改內容如下:

A、在FreeRTOSConfig.h添加包含SEGGER_SYSVIEW_FreeRTOS.h檔

B、在主執行緒添加system view配置函式即可。

7)編譯下載目標機程式,並開啟主機上的system view上位機。電機File下面淡綠色的小三角開始監控,監控界面如下圖所示。