iT邦幫忙

2024 iThome 鐵人賽

DAY 4
0
佛心分享-IT 人自學之術

韌體小白之路系列 第 4

[Day04] 韌體小白之路_建立Task-2

  • 分享至 

  • xImage
  •  

昨天編譯過Project- 001Tasks,準備開始Debug

繼續編譯

其實這個應該要在建立task之前完成,後來發現錯誤回來改,所以後面有些bug要全部重修~
發現因為STM32跟FreeRTOS都採用SysTick,有可能產生錯誤,所以記得要錯開

  1. 打開001Tasks.ioc -> 選SYS -> 將原本的SysTick改為Tim6
    https://ithelp.ithome.com.tw/upload/images/20240918/20155520z7omXj9bYG.png
  2. 進入NVIC中,將0 bits... 改為 4 bits...
    https://ithelp.ithome.com.tw/upload/images/20240918/20155520Z7f3BPbgRN.png

Debug Project

  1. 先看MCU的頻率(之後Debug會用到):
    因為本次所使用的MCU是ARM Cortex M4 Processor,採用ITM(就是昨天取代Write的Code)方式連接到SWO pin,所以要到硬體上看Core Clock
    1.1 雙擊001Task.ioc ->選Clock Configuration ->看HCLK(MHz)
    https://ithelp.ithome.com.tw/upload/images/20240918/201555207Na7AfnSqa.png

ITM_Instrumentation Trace Macrocell is an optional application-driven trace source that supports printf style debugging to trace operating system and application events.

  1. 開始Debug
    2.1
    https://ithelp.ithome.com.tw/upload/images/20240918/20155520YUHWPp408n.png
    2.2 將原本預設的16 MHz改為 25 MHz
    https://ithelp.ithome.com.tw/upload/images/20240918/20155520cmZWCcWvX3.png
  2. 進入Debug模式
    3.1 顯示SWV模式
    https://ithelp.ithome.com.tw/upload/images/20240918/20155520f6JSue6Dkj.png
    3.2 選擇Configure Trace
    https://ithelp.ithome.com.tw/upload/images/20240918/2015552097Pb1x3xHa.png
    3.3 選擇Port 0來觀察
    https://ithelp.ithome.com.tw/upload/images/20240918/20155520vVj5iqReDU.png
    3.4 點選"Resume(F8)"來取得Message
    https://ithelp.ithome.com.tw/upload/images/20240918/201555202q10oN1V3h.png

不知道為甚麼一直觀察不出來Message的產生,修Bug中,等修好之後一併放上修復了流程


上一篇
[Day03] 韌體小白之路_建立Task
下一篇
[Day05] 韌體小白之路_追蹤工具
系列文
韌體小白之路7
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言