国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

專治MCU各種HardFault問題的開源庫

MCU開發加油站 ? 來源:strongerHuang ? 作者:armink ? 2021-03-10 11:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

相信有不少讀者都遇到過 “HardFault”的問題,而且不止一次,有時候可能因為它連續幾日加班,甚至通宵。 那么今天就來分享一個由armink(也就是現在RTT里面的那位朱大神)整理的開源庫,借花獻佛分享給大家。一、CmBacktrace 是什么

CmBacktrace (Cortex Microcontroller Backtrace)是一款針對 ARM Cortex-M 系列 MCU 的錯誤代碼自動追蹤、定位,錯誤原因自動分析的開源庫。主要特性如下:

1. 支持的錯誤包括

斷言(assert)

故障(Hard Fault, Memory Management Fault, Bus Fault, Usage Fault, Debug Fault)

2. 故障原因自動診斷可在故障發生時,自動分析出故障的原因,定位發生故障的代碼位置,而無需再手動分析繁雜的故障寄存器;3. 輸出錯誤現場的函數調用棧(需配合 addr2line 工具進行精確定位),還原發生錯誤時的現場信息,定位問題代碼位置、邏輯更加快捷、精準。也可以在正常狀態下使用該庫,獲取當前的函數調用棧;4. 支持 裸機 及以下操作系統平臺:

RT-Thread

UCOS

FreeRTOS(需修改源碼)

5. 根據錯誤現場狀態,輸出對應的 線程棧 或 C 主棧;6.故障診斷信息支持多國語言(目前:簡體中文、英文);7.適配Cortex-M0/M3/M4/M7 MCU;

8.支持IAR、KEIL、GCC 編譯器;

二、為什么選擇 CmBacktrace入門新人:對于從 C51 、MSP430 等簡單單片機轉而使用更加復雜的 ARM 新人來說,時不時出現的 "hard falut" 死機會讓新人瞬間懵掉。定位錯誤的方法也往往是連接上仿真器,一步步 F10/F11 單步,定位到具體的錯誤代碼,再去猜測、排除、推敲錯誤原因,這種過程十分痛苦。

熟練老手:慢慢的大家知道可以通過故障寄存器信息來定位故障原因及故障代碼地址,雖然這樣能解決一小部分問題,但是重復的、繁瑣的分析過程也會耽誤很多時間。而且對于一些復雜問題,只依靠代碼地址是無法解決的,必須得還原錯誤現場的函數調用邏輯關系。雖然連接仿真器可以查看到的函數調用棧,但故障狀態下是無法顯示的,所以還是得一步步 F10/F11 單步去定位錯誤代碼的位置。

另外,還有兩種場景:1、很多產品真機調試時必須斷開仿真器2、問題確實存在,但是極難被重現

所以定位這類問題就顯得難上加難。

使用本庫:上述所有問題都迎刃而解,可以將錯誤信息輸出到控制臺上,還可以將錯誤信息使用 EasyFlash 的 Log 功能保存至 Flash 中,設備死機后重啟依然能夠讀取上次的錯誤信息。CmBacktrace 輸出的信息包括函數調用棧、故障診斷結果、堆棧、故障寄存器及產品固件信息,極大的提升了錯誤定位的效率及準確性。

俗話說,工欲善其事,必先利其器。所以有時候做事效率低的原因也許是,你會用的工具種類太少。

三、CmBacktrace 如何使用

本文就簡單演示一下,演示分如下幾個步驟:1、制造除零異常(IAR 工程,點擊查看源碼)2、查看錯誤診斷信息3、查看函數調用棧基本信息4、通過命令行工具進入項目工程存放可執行文件的路徑

5、使用 addr2line 命令,查看函數調用棧詳細信息,并定位錯誤代碼

具體的使用方法,請見原始說明文檔,里面描述了很多細節內容。

原文標題:專治MCU各種 HardFault 的庫:CmBacktrace(錯誤追蹤庫)

文章出處:【微信公眾號:MCU開發加油站】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    147

    文章

    18925

    瀏覽量

    398114
  • 開源
    +關注

    關注

    3

    文章

    4207

    瀏覽量

    46130
  • 編譯器
    +關注

    關注

    1

    文章

    1672

    瀏覽量

    51600

原文標題:專治MCU各種 HardFault 的庫:CmBacktrace(錯誤追蹤庫)

文章出處:【微信號:mcugeek,微信公眾號:MCU開發加油站】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Fluke 773毫安鉗形表讓暖通自控調試效率翻倍

    它不只是個鉗表,更是為你量身定制的集成式診斷平臺,專治各種暖通空調與樓宇自控系統“疑難雜癥”。
    的頭像 發表于 02-28 09:38 ?410次閱讀

    鋼渣處理線的“網絡神醫”:疆鴻智能PROFIBUS集線器,專治各種信號不服

    鋼渣處理線的“網絡神醫”:疆鴻智能PROFIBUS集線器,專治各種信號不服 一、項目背景與挑戰 某大型鋼鐵集團煉鋼廠年產鋼渣超百萬噸,原有鋼渣處理線采用分布式硬接線控制方式。隨著產能提升與自動化升級
    的頭像 發表于 12-29 14:41 ?164次閱讀
    鋼渣處理線的“網絡神醫”:疆鴻智能PROFIBUS集線器,<b class='flag-5'>專治</b><b class='flag-5'>各種</b>信號不服

    OpenTenBase核心貢獻者分享開源數據的破局之路

    “在開源數據已成一片‘紅海’的當下,單純比拼‘快’或‘省’,已很難在開發者心中建立獨特的護城河?!監penTenBase核心貢獻者、騰訊云數據專家工程師李晉鋼這樣闡述他對當前數據
    的頭像 發表于 12-29 14:00 ?416次閱讀

    炎核開源開放平臺上架推出OpenSparseBlas高性能稀疏計算

    在科學計算與工程仿真領域,高效處理大規模稀疏矩陣運算是提升整體計算效能的關鍵。為此,我們在炎核開源開放平臺上架推出 OpenSparseBlas——一個專為稀疏矩陣/向量計算而打造的高性能稀疏計算
    的頭像 發表于 12-15 15:18 ?633次閱讀

    MCU軟件核心及示例代碼速覽 !

    為加速嵌入式項目開發,本文對MCU軟件核心進行整體速覽,涵蓋初始化、外設控制與中斷處理等關鍵部分,并結合簡潔示例代碼,幫助開發者快速理解與應用功能。 一、MCU核心庫函數功能
    的頭像 發表于 12-11 17:19 ?689次閱讀
    <b class='flag-5'>MCU</b>軟件核心<b class='flag-5'>庫</b>及示例代碼速覽 !

    MCU調試典型問題與解決方法

    (NVIC_SetPriorityGrouping())。 檢查未處理的中斷標志(清除Pending位)。 HardFault定位: 在HardFault_Handler中讀取SCB->
    發表于 11-17 07:57

    LuatOS MCU核心全接觸:新手操作與功能測試攻略!

    ?MCU芯片級開發新手如何快速掌握核心技能?本文圍繞LuatOS的MCU核心,系統演示時鐘頻率獲取、唯一ID讀取、高精度計時、IO復用配置等核心功能測試,并通過豐富示例,幫助開發者輕松入門,迅速
    的頭像 發表于 11-12 14:30 ?297次閱讀
    LuatOS <b class='flag-5'>MCU</b>核心<b class='flag-5'>庫</b>全接觸:新手操作與功能測試攻略!

    新手必備:LuatOS MCU核心功能測試與實踐指南

    新手如何快速掌握MCU芯片級開發?本文通過LuatOS的MCU核心,全面演示時鐘頻率獲取、唯一ID讀取、高精度計時、IO復用配置等核心功能的測試流程,并提供實用示例,幫助開發者高效入門,輕松應對
    的頭像 發表于 11-12 14:26 ?339次閱讀
    新手必備:LuatOS <b class='flag-5'>MCU</b>核心<b class='flag-5'>庫</b>功能測試與實踐指南

    Cortex-M0+處理器的HardFault錯誤介紹

    在ARM處理器中,如果一個程序產生了錯誤并且被處理器檢測到,就會產生錯誤異常。Cortex-M0+處理器只有一種異常用以處理錯誤:HardFault
    的頭像 發表于 10-14 10:50 ?3383次閱讀
    Cortex-M0+處理器的<b class='flag-5'>HardFault</b>錯誤介紹

    main線程創建中的rt_memset導致hardfault是為什么?

    main線程的棧大小設置成2048的時候rt_memset導致hardfault,改成512就不會,這是為什么
    發表于 09-18 06:24

    飛書富文本組件RichTextVista開源

    近日,飛書正式將其自研的富文本組件 RichTextVista(簡稱“RTV”)開源,并上線OpenHarmony 三方中心倉。該組件以領先的性能、流暢的渲染體驗與高度的開放性,為鴻蒙生態提供了更高效的富文本解決方案。
    的頭像 發表于 07-16 16:47 ?1006次閱讀

    請問EZ-Serial固件是否使用任何OSS(開源軟件)或軟件?

    EZ-Serial 固件是否使用任何 OSS(開源軟件)或軟件?
    發表于 07-02 08:14

    #工作原理大揭秘 #單片機 #電路原理 #MCU#mcu程序開發

    mcu
    宇凡微電子
    發布于 :2025年06月19日 19:02:28

    s32k324調試時出現MemManage和HardFault怎么解決?

    我目前正在使用 s32k324 板。 我正在運行一個簡單的示例代碼,但在調試時收到以下兩個錯誤 MemManage:處理器嘗試從不允許執行的位置獲取指令。 HardFault:故障已升級為硬故障。 您能告訴我解決方案嗎?
    發表于 04-04 08:16

    STM32H743對關鍵中斷函數,使用ITCM搬至RAM運行,仿真進入HardFault_Handler報錯怎么解決?

    ,CubeIDE編譯能正常通過,且map文件中,對已搬至ITCM RAM區域運行的中斷函數的地址是OK的。只要上電一仿真運行就會進入HardFault_Handler函數,MCU主頻是480MHz,不知是否主頻過高所致,請各位大神指點下。
    發表于 03-07 08:04