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

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

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

3天內不再提示

STM32硬件錯誤的調試技巧

小麥大叔 ? 來源:小麥大叔 ? 作者:小麥大叔 ? 2022-07-21 14:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在用KeilSTM32的程序進行仿真時程序有時會跑飛,停止仿真程序會停在HardFault_Handler函數里的死循環while(1)中。

這說明STM32出現了硬件錯誤。

4651ec2c-08a8-11ed-ba43-dac502259ad0.png

硬件錯誤中斷

STM32出現硬件錯誤可能有以下原因:

數組越界操作;

內存溢出,訪問越界;

堆棧溢出,程序跑飛;

中斷處理錯誤;

遇到這種情況,可以通過以下2種方式來定位到出錯代碼段。

方法1:

在硬件中斷函數HardFault_Handler里的while(1)處打調試斷點,程序執行到斷點處時點擊STOP停止仿真。

466c27d6-08a8-11ed-ba43-dac502259ad0.png

示例

1.2 在Keil菜單欄點擊View——Registers Window,在寄存器查看窗口查找R14(LR)的值。

如果R14(LR) = 0xFFFFFFE9,繼續查看MSP(主堆棧指針)的值;如果R14(LR) = 0xFFFFFFFD,繼續查看PSP(進程棧指針)的值;

我的程序R14(LR) = 0xFFFFFFF9,接下來以此為例。

467999d4-08a8-11ed-ba43-dac502259ad0.png

寄存器信息

1.3 在Keil菜單欄點擊“View”——“Memory Windows”——“Memory1”;

在“Address”地址欄中輸入MSP的值:0x20001288,然后在對應的行里找到地址。

地址一般以0x08開頭的32位數。本例中,地址為0x08003CB9。

4691ad3a-08a8-11ed-ba43-dac502259ad0.png

內存信息

1.4 在Keil菜單欄點擊View——Disassembly Window,在Disassembly窗口中右擊,在下拉菜單中選擇Show Disassemblyat Address...。

在彈出框Show Code atAdress的地址框中輸入地址0x08003CB9進行搜索,然后就會找到相對應的代碼。這里的代碼就是進入循環中斷之前的情況。

仔細查看附近區域的相關代碼來排查錯誤具體原因。

46b206c0-08a8-11ed-ba43-dac502259ad0.jpg

方法2:

2.1在硬件中斷函數HardFault_Handler里的while(1)處打調試斷點,程序執行到斷點處時點擊“STOP”停止仿真。

46d05efe-08a8-11ed-ba43-dac502259ad0.jpg

CallStack

2.2 在Keil菜單欄點擊View——Call Stack Window彈出Call Stack + Locals對話框。

然后在對話框中右鍵選擇Show Caller Code,就會跳轉到出錯之前的函數處,仔細查看這部分函數被調用或者數組內存使用情況。

審核編輯 :李倩

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

    關注

    2309

    文章

    11162

    瀏覽量

    373449
  • 硬件
    +關注

    關注

    11

    文章

    3595

    瀏覽量

    69011
  • 函數
    +關注

    關注

    3

    文章

    4417

    瀏覽量

    67509

原文標題:簡單實用!STM32硬件錯誤的調試技巧

文章出處:【微信號:knifewheat,微信公眾號:小麥大叔】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    使用 J-LINK 調試時發生錯誤,是什么原因導致的?如何解決?

    使用J-Link調試時發生錯誤,如圖所示。我應該如何解決這個錯誤
    發表于 02-26 10:08

    單片機系統硬件調試方法

    ,單片機的系統硬件調試,需要從硬件的靜態調試和動態調試兩個角度人手: 單片機系統硬件的靜態
    發表于 12-03 06:10

    AMD Vivado ChipScope助力硬件調試

    許多硬件問題只有在整個集成系統實時運行的過程中才會顯現出來。AMD Vivado ChipScope 提供了一套完整的調試流程,可在系統運行期間最大限度提升對可編程邏輯的觀測能力,助力設計調試
    的頭像 發表于 09-05 17:08 ?1150次閱讀

    請問中斷過多的時候進入硬件錯誤如何處置?

    中斷過多的時候進入硬件錯誤如何處置?是加看門狗還是加硬件錯誤處理?
    發表于 07-21 06:11

    Modus工具箱調試錯誤怎么解決?

    我下載了 Modus Toolbox 3.1.0 并成功添加了 CYBT0243053 的模板應用程序。 但我在調試模板代碼時遇到了錯誤。 我正在使用 USB 串口線進行調試。 我該如何進行調
    發表于 07-01 06:53

    使用STM32CubeIDE調試STM32MP157D的M4內核時報了下圖這個錯誤,怎么解決?

    我使用STM32CubeIDE調試STM32MP157D的M4內核時報了下圖這個錯誤: 經過我的排除后發現,應該是STM32CubeIDE
    發表于 06-18 06:57

    硬件調試:JLink 驅動配置與調試技巧

    摘要: 本文深入探討了 JLink 調試器在嵌入式系統硬件調試中的應用,詳細闡述了 JLink 驅動配置的方法以及硬件調試技巧。本文以國科安
    的頭像 發表于 06-12 23:20 ?1659次閱讀
    <b class='flag-5'>硬件</b><b class='flag-5'>調試</b>:JLink 驅動配置與<b class='flag-5'>調試</b>技巧

    使用STM32CubeIDE對STM32H7進行開發和調試,CM4始終報\"Failed to read ROM table via AP 3\"錯誤怎么解決?

    通過AP 3訪問CM4? 2. 是否有其他可能影響雙核調試的配置或設置? 3. 有沒有特定的調試命令或方法可以獲取更詳細的錯誤信息? 4. 這個問題是否與特定的STM32H7型號或開發
    發表于 05-14 06:20

    STM32F10xxx硬件開發指南

    官方STM32F10xxx硬件開發指南
    發表于 04-14 14:59 ?3次下載

    在mimxrt1170_evk調試hello_world出現硬件傳輸錯誤怎么解決?

    錯誤 硬件傳輸錯誤 調試上下文:evkmimxrt1170_hello_world_cm4 LinkServer Debug 請指教,非常感謝!
    發表于 03-25 07:31

    STM32調試神器STM32CubeMonitor介紹

    STM32CubeMonitor除了同樣可以提供變量監測的功能,還有非常豐富的組件可以搭建各種風格的圖形化界面,以及眾多免費的第三方組件可以進行功能擴展。此外,STM32CubeMonito還支持遠程監測功能。
    的頭像 發表于 03-17 10:45 ?1929次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>調試</b>神器<b class='flag-5'>STM32</b>CubeMonitor介紹

    如何通過J-Link實現STM32H5控制調試端口

    基于J-Link實現STM32H5安全編程介紹了在禁用TrustZone時,如何通過J-Link實現STM32H5控制調試端口的安全鎖定或回歸打開。
    的頭像 發表于 03-17 10:25 ?1401次閱讀
    如何通過J-Link實現<b class='flag-5'>STM32</b>H5控制<b class='flag-5'>調試</b>端口

    STM32CubeIDE無法啟動正常調試是哪里出了問題?

    STM32CubeIDE始終正常使用中,昨日系統升級為 macOS Sequoia 版本,啟動調試出現錯誤提示,重新安裝應用程序及 st-stlink-server 驅動,仍提示同樣錯誤
    發表于 03-14 16:30

    使用STM32CubeIDE調試STM32MP157D的M4內核時報了錯誤怎么解決?

    我使用STM32CubeIDE調試STM32MP157D的M4內核時報了下圖這個錯誤: 經過我的排除后發現,應該是STM32CubeIDE
    發表于 03-14 06:01

    STM32F103C8T6使用CubeIDE燒錄運行報硬件錯誤,相同代碼MDK燒錄卻可以正常運行,為什么?

    自制PCB使用STM32F103C8T6,通過STM32CubeMX生成了CubeIDE項目和MDK項目,編譯下載相同的代碼CubeIDE不能正常執行,經過調試發現進入了硬件
    發表于 03-12 06:18