Jlink+JScope顯示波形

之前的文章: 。很多朋友都很喜歡這樣子的工具,這樣的上位機固然好用,但是這依然依賴於我們的系統資源。

本次分享另一種相似的工具、方法,不依賴於系統資源,但需要額外的硬件支持,但是這樣一個硬件就是常用的Jlink調試工具。

我們常常都只是用Jlink來在線調試程序、下載程序。其實Jlink的用處很多,我們要好好運用。本篇筆記我們就來分享一下Jlink的另一個用途:使用Jlink+JScope顯示波形。


什麼是JScope?

J-Scope 是 SEGGER 推出的波形顯示軟件,傻瓜式,簡單易上手。軟件界面如下:

Jlink+JScope顯示波形

其有兩種方式來顯示波形,一種是 HSS 模式 ,另一種是RTT模式。這裡我們分享的是RTT模式的使用。


實驗演示(keil工程)

(1)準備工作

實驗的前提是需要有Jlink仿真器(V9或V10),其它的有些不能與JScope搭配使用 。同時要裝好Jlink驅動與JScope上位機軟件:

Jlink+JScope顯示波形

(2)工程移植、測試代碼編寫

安裝好JScope軟件之後,在其安裝目錄下會有如下源碼:

Jlink+JScope顯示波形

我們這裡的路徑是:

C:\\Program Files (x86)\\SEGGER\\JScope_V611m\\Sample\\Example Code RTT

複製如下三個文件至我們的keil工程目錄下:

Jlink+JScope顯示波形

然後在keil中添加至我們的demo工程裡,幷包含頭文件SEGGER_RTT.h即可。然後編寫如下測試代碼:

Jlink+JScope顯示波形

Jlink+JScope顯示波形


SEGGER_RTT_ConfigUpBuffer 函數說明:

  • 第 1 個參數要填通道 1,實際測試通道 0 不可用
  • 第 2 個參數非常重要,要使用固定的格式,字符串 JScope_是固定的,主要是下劃線後面的字符。 支持的格式如下:
Jlink+JScope顯示波形

比如:JScope_I4I4 表示數據包格式由兩個有符號32位數據組成。

  • 最後一個參數的備選項為:
Jlink+JScope顯示波形

  • 使用 RTT 模式的話,最後一個參數僅支持 SEGGER_RTT_MODE_NO_BLOCK_SKIP 和 SEGGER_RTT_MODE_BLOCK_IF_FIFO_FULL 。

關於SEGGER_RTT,之前已經有分享其實現打印功能的方法,感興趣的朋友可閱讀:


最後,編譯下載到板子裡。

(3)JScope上位機配置

首先,創建工程:

Jlink+JScope顯示波形

設置為RTT模式:

Jlink+JScope顯示波形

設置目標設備(我們這裡使用的是STM32F103ZE):

Jlink+JScope顯示波形

Jlink+JScope顯示波形

使用Jlink連接目標板(SWD方式):

Jlink+JScope顯示波形

連接三根線即可,TMS、TCLK、GND。具體的JTAG接口引腳順序如:

Jlink+JScope顯示波形

點擊開始採樣(前提是程序已經跑起來):

Jlink+JScope顯示波形

波形顯示:

Jlink+JScope顯示波形

Jlink+JScope顯示波形


以上就是本次的分享,希望各位喜歡!


分享到:


相關文章: