女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

使用APM32一種排查軟件端問題的調試方法

Geehy極海半導體 ? 來源:21ic論壇 ? 作者:21ic論壇 ? 2022-09-08 11:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

問題背景

實際調試、或者產品開發階段,有時候會碰到產品觸發異常、報HardFault這類錯誤。

在這里介紹一種排查軟件端問題的調試方法。

測試原理

簡單來說,就是利用 “MCU觸發HardFault異常、跳轉到HardFault服務函數前,會把現場的內核寄存器值先壓入堆棧空間保存好” 的這個特性。

所以我們可以:

· 確認觸發HardFault后,使用的是PSP進程堆棧,還是MSP主堆棧(一般是MSP,也可理解用戶在SRAM中劃分出來的堆棧空間)

· 根據對應堆棧SP指針,挑出觸發HardFault的PC指針所指向的位置。

· 注意現場保存、寄存器值入棧順序:xPSR-》PC-》LR-》R12-》R3~R0

b5dfeb18-2f16-11ed-ba43-dac502259ad0.jpg

b5f0adae-2f16-11ed-ba43-dac502259ad0.jpg

b60eddf6-2f16-11ed-ba43-dac502259ad0.jpg

實測基于APM32F407demo板,新建會觸發HardFault的例程——訪問、改寫溢出實際SRAM存儲空間的數據。

b635432e-2f16-11ed-ba43-dac502259ad0.jpg

b6577ac0-2f16-11ed-ba43-dac502259ad0.jpg 仿真調試下,全速運行,成功觸發Hardfault。

b66ae5e2-2f16-11ed-ba43-dac502259ad0.jpg

在0x2000_03E0堆棧位置,存儲著進入HardFault前的內核寄存器信息,如圖所示

·PC指向地址是0x08003AA——可找到對應觸發HardFault的匯編代碼

b6962e32-2f16-11ed-ba43-dac502259ad0.jpg

上述分析可以看到,在對0x2003_0002這個異常存儲空間進行操作后,會影響往下代碼指令的執行(特別是操作SRAM空間)從而觸發HardFault

后話HardFault的觸發還有很多因素,比如客戶的MCU供電問題、某些VCAP腳沒接上、硬件接地干擾、Flash等待周期不符合芯片規定等等。文章所介紹的方法只是針對軟件部分的排查參考。

審核編輯 :李倩

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

    關注

    31

    文章

    5433

    瀏覽量

    124408
  • 函數
    +關注

    關注

    3

    文章

    4379

    瀏覽量

    64827

原文標題:APM32芯得 EP.08 | APM32F407 HardFault排查——軟件方案

文章出處:【微信號:geehysemi,微信公眾號:Geehy極海半導體】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

    調試器的工作原理、驅動配置流程、調試環境搭建、斷點設置、寄存器與內存調試調試日志分析等方面,結合實際應用案例,旨在為硬件工程師和技術開發人員提供
    的頭像 發表于 06-12 23:20 ?445次閱讀
    硬件<b class='flag-5'>調試</b>:JLink 驅動配置與<b class='flag-5'>調試</b>技巧

    基于極海APM32E103 MCU的CoreMark測試方法

    CoreMark跑分可以了解到MCU的算力。下面以APM32E103芯片和Keil為例,介紹下如何在APM32上面運行CoraMark測試。CoreMark需要定時器用于計時,還需要用串口來打印輸出測試結果。
    的頭像 發表于 06-12 09:42 ?497次閱讀
    基于極海<b class='flag-5'>APM</b>32E103 MCU的CoreMark測試<b class='flag-5'>方法</b>

    研發排查問題的利器:方法調用棧跟蹤工具

    作者:京東物流 郭忠強 導語 本文從日常值班問題排查痛點出發,分析方法復用的調用鏈路和上下文業務邏輯,通過思考分析,借助棧幀開發了方法調用棧的鏈式跟蹤工具,便于展示
    的頭像 發表于 05-06 17:24 ?2694次閱讀
    研發<b class='flag-5'>排查</b>問題的利器:<b class='flag-5'>一</b>款<b class='flag-5'>方法</b>調用棧跟蹤工具

    人臉識別門禁終端的般故障排查方法

    問題,有些可能是使用環境造成,有些可能是人為不小心損壞了。下面,天波小編就來簡單介紹人臉識別門禁終端的般故障排查方法吧。【電源問題】當
    的頭像 發表于 04-27 10:45 ?598次閱讀
    人臉識別門禁終端的<b class='flag-5'>一</b>般故障<b class='flag-5'>排查</b><b class='flag-5'>方法</b>

    電機控制器出現的一種偶發故障排查與分析

    通信方式傳輸信息,控制器接收總控系統發出的電機啟動和轉速指令,同時向總控系統反饋電機的工作狀態,包括電壓、電流、轉速、轉向等信息。純分享帖,需要者可點擊附件獲取完整資料~~~*附件:電機控制器出現的一種
    發表于 04-14 21:32

    DCS日常維護與故障分析排查方法

    DCS(分布式控制系統)的日常維護與故障分析排查是確保系統穩定運行的關鍵環節。以下提供DCS日常維護與故障分析排查的詳細方法、日常維護方法
    的頭像 發表于 03-05 16:53 ?701次閱讀
    DCS日常維護與故障分析<b class='flag-5'>排查</b><b class='flag-5'>方法</b>

    怎么用Clion開發APM32

    APM32 官方 SDK 中提供了三開發環境:Keil、IAR 和 Eclipse。不否認這三環境的強大,但是在 AI 時代做嵌入式開發,用這三環境就顯得有點不夠優雅了。本篇文章
    的頭像 發表于 12-17 09:19 ?1681次閱讀
    怎么用Clion開發<b class='flag-5'>APM32</b>

    射頻放大器調試與故障排查

    、射頻放大器的基本工作原理 在深入調試和故障排查之前,了解射頻放大器的基本工作原理是必要的。射頻放大器通常由輸入匹配網絡、放大器核心和輸出匹配網絡組成。輸入匹配網絡確保信號能夠有效地從源傳遞到
    的頭像 發表于 12-16 09:06 ?1164次閱讀

    一種創新的動態軌跡預測方法

    本文提出了一種動態軌跡預測方法,通過結合歷史幀和歷史預測結果來提高預測的穩定性和準確性。它引入了歷史預測注意力模塊,以編碼連續預測之間的動態關系,并通過三重因子注意力模塊實現了最先進的性能。本方法能夠生成準確且穩定的未來軌跡,這
    的頭像 發表于 10-28 14:34 ?1080次閱讀
    <b class='flag-5'>一種</b>創新的動態軌跡預測<b class='flag-5'>方法</b>

    一種簡單高效配置FPGA的方法

    本文描述了一種簡單高效配置FPGA的方法,該方法利用微處理器從串行外圍接口(SPI)閃存配置FPGA設備。這種方法減少了硬件組件、板空間和成本。
    的頭像 發表于 10-24 14:57 ?1605次閱讀
    <b class='flag-5'>一種</b>簡單高效配置FPGA的<b class='flag-5'>方法</b>

    伺服電機有哪些調試方法?如何調?

    伺服電機是一種高精度的電機,廣泛應用于自動化設備、機器人、數控機床等領域。為了確保伺服電機的性能和穩定性,需要進行正確的調試。以下是些常見的伺服電機調試
    的頭像 發表于 10-22 11:04 ?3129次閱讀

    APM32F10xx進入低功耗模式的問題分析

    近日,在學習APM32開發板關于PMU模塊的內容,看到很多內容都是調用WFI內核指令進入低功耗模式,于是自己想嘗試調用WFE內核指令進入低功耗模式,但在APM32F10xx中,我運用按鍵中斷,在中斷
    的頭像 發表于 10-18 16:13 ?817次閱讀
    <b class='flag-5'>APM</b>32F10xx進入低功耗模式的問題分析

    一種利用wireshark對遠程服務器/路由器網絡抓包方法

    一種利用wireshark對遠程服務器/路由器網絡抓包方法
    的頭像 發表于 09-21 08:03 ?4883次閱讀
    <b class='flag-5'>一種</b>利用wireshark對遠程服務器/路由器網絡抓包<b class='flag-5'>方法</b>

    測試用例怎么寫

    編寫測試用例是確保軟件系統從頭到尾能夠正常工作的關鍵步驟。以下是個詳細的指南,介紹如何編寫
    的頭像 發表于 09-20 10:29 ?968次閱讀

    一種無透鏡成像的新方法

    使用OAM-HHG EUV光束對高度周期性結構進行成像的EUV聚光顯微鏡 為了研究微電子或光子元件中的納米級圖案,一種基于無透鏡成像的新方法可以實現近乎完美的高分辨率顯微鏡。 層析成像是一種強大的無
    的頭像 發表于 07-19 06:20 ?762次閱讀
    <b class='flag-5'>一種</b>無透鏡成像的新<b class='flag-5'>方法</b>