Keil MDK的界面雖然不那么友好(IAR其實也一樣),但調試功能還算不錯,特別是針對Cortex-M內核的處理器。
Keil MDK支持的調試功能有很多:組件查看器、事件記錄器、事件統(tǒng)計、數據和事件跟蹤、指令跟蹤等。
有很多網友反應,Keil MDK在調試的時候,會遇到各種問題,下面就簡單講述一下Keil MDK調試時,軟件和硬件的一些要求。
1.邏輯分析儀它要求目標硬件支持 SWO 或 ETM 跟蹤。
SWO 跟蹤或 ETM 跟蹤需要在 μVision 調試設置中正確配置:
2.性能分析器它要求目標硬件支持 ETM 跟蹤。ETM 跟蹤需要在 Keil 調試設置中正確配置。
要求:與 Keil一起使用的調試器硬件需要支持流式 ETM 跟蹤,例如 ULINKpro。(有些第三方調試適配器硬件,如之前的 J-Trace Pro,不支持Keil?中的 ETM 流跟蹤,換句話說,不能與性能分析器一起使用)
3.代碼覆蓋率它與“性能分析器”一樣,調試器硬件需要支持流式 ETM 跟蹤?!按a覆蓋率”對話框提供有關已執(zhí)行代碼的統(tǒng)計信息。將此信息與反匯編窗口中的信息一起使用。
4.系統(tǒng)分析儀系統(tǒng)分析器主要顯示的某些調試信息,例如功耗、測量的內核時鐘頻率等。
如果要查看其他調試信息,例如 RTX5 事件、線程等,需要正確啟用和設置事件記錄器。同時,查看調試信息(比如異常),需要啟用和設置 SWO 或 ETM 跟蹤。
5.系統(tǒng)和線程查看器系統(tǒng)和線程查看器僅支持基于 CMSIS RTOS v1 的舊版 Keil RTXv4.x(僅支持 Keil RTX 4.82 或更早版本)。
如果你使用 Keil RTXv4.x 的項目使用 ARM V6.x 編譯器工具鏈編譯的,需要遵循“系統(tǒng)和線程查看器”為空。
有關 Keil RTX 5 的類似信息,可以使用“組件查看器”。
6.組件查看器與上面第5點對應,組件查看器僅支持CMSIS RTOS v2,組件查看器窗口顯示的靜態(tài)信息,幫助分析軟件組件的操作。所需的基礎架構可以輕松添加到用戶應用程序中,并且已經在 MDK-Middleware 和 Keil RTX5 中實現(xiàn)。
本文就先分享到這里,還有更多關于Keil 調試的相關內容,后續(xù)為大家分享。
更多Keil教程,可以關注公眾號回復關鍵字【Keil系列教程】。