衡阳派盒市场营销有限公司

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

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

3天內不再提示

變量位置不同會死機?郭天祥老師視頻的遺留問題分析答案

聚沃科技 ? 2024-02-26 09:12 ? 次閱讀
wKgaomXb5PyAJi8cAAr3J2Otupw085.png

wKgZomXb5QKAECMPAAkQGcyy6b4811.png

在郭天祥老師視頻里有一個問題分享,是EXMC初始化里的一個變量定義和初始化位置不同會導致程序死機,最終定位到程序是進入hardfault死機,但暫時沒有后續分析了,這里我們來繼續分析一下。

死機的程序是這樣的:

wKgZomXb5QiAO5QpAABAwKR0WCs524.png

這段代碼是定義和初始化exmc的結構體參數,我們來詳細看下結構體中的定義,其中有一個關鍵是這里有兩個指針成員,分別是讀和寫的結構體參數指針。

wKgZomXb5Q2AeC0OAABR9iP3hUk323.png

那我們看下結構體成員初始化函數,其中除了對成員變量賦值了默認參數外,還對讀寫時序參數結構體指針的成員也賦值了默認參數:

wKgaomXb5ROAOfffAABluphjhp0417.png

所以這里就是重點,此時這個結構體剛定義完成,因為是局部變量是定義在棧里的,所以初值都是隨機值,這個隨機值實際可以解釋為棧空間上次釋放的局部變量值。

當對一個隨機值的指針進行賦值會發生什么?三個結果:

1、隨機值是非法地址,立刻觸發hardfault;

2、隨機值是程序實際RAM地址范圍外的可寫地址,意外操作了寄存器或者無效地址,一次無效操作或開啟意外功能;

3、隨機值是程序已使用的RAM地址,破壞了這段內存,程序不會立刻觸發hardfault,會在CPU使用到該區域時才出現異常。

那我們應該如何調用這個EXMC的結構體初始化呢?其實這里有定義三個結構圖,另外兩個就是讀寫的時序結構體的實體,我們定義后先將這兩個結構體變量賦值到exmc模式結構體成員的兩個指針,此時指針才有了正確地址,調用結構圖初始化后就可以把這兩個結構體一起完成初始化。

wKgZomXb5RiAH0HrAAATjr3T7fk244.png

這里的分析很考驗大家C語音指針、CPU內存的理解功底,還有什么疑難雜癥歡迎大家提供素材。上面分析的正確初始化順序在紅楓派開發板例程中應用,歡迎大家應用到項目中使用。

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

    關注

    6043

    文章

    44622

    瀏覽量

    638533
  • 嵌入式
    +關注

    關注

    5092

    文章

    19177

    瀏覽量

    307663
  • GD32
    +關注

    關注

    7

    文章

    413

    瀏覽量

    24469
  • EXMC
    +關注

    關注

    0

    文章

    7

    瀏覽量

    5209
收藏 人收藏

    評論

    相關推薦

    天祥老師視頻資料

    天祥《十天學會單片機》視頻的源程序和相關資料
    發表于 11-10 09:50

    我有天祥老師的ARM視頻

    本帖最后由 eehome 于 2013-1-5 09:46 編輯 我有天祥老師的ARM9整套教程,可是我上傳附件的大小僅為10mb,那套視頻就已經3g多了,我如何上傳呢?
    發表于 11-17 21:27

    誰要天祥視頻課件資料

    誰要天祥視頻課件資料
    發表于 02-22 16:44

    誰有天祥老師arm9完整視頻以及輔助資料?

    誰有天祥老師arm9完整視頻以及輔助資料的好心人動動手指發給俺一份不勝感激522066863@qq.com
    發表于 05-24 10:55

    天祥Altium Designe視頻

    `天祥Altium Designe視頻如圖:網盤下載地址在附件里面,論壇不給我直接放網址`
    發表于 06-14 15:28

    天祥Altium Designe視頻

    `天祥Altium Designe視頻如圖:網盤下載地址在附件里面,論壇不給我直接放網址`
    發表于 06-14 15:35

    天祥 十天學通單片機課后答案

    這是天祥老師的十天學會單片機的課后答案,分享給在學單片機的兄弟姐妹,另外我還有視頻,但太大傳不上來,想要的可以留下郵箱
    發表于 08-27 14:06

    天祥老師講的視頻,入門可以看看

    這是天祥老師講的視頻 相當好入門可以看看啦
    發表于 04-14 16:45

    天祥的教學視頻分享

    在這里分享一下天祥的教學視頻,關于視頻中的51開發板如果大家手頭上沒有相關的開發板就可以直接去淘寶上買一下,應該不會太貴,在100塊以內吧。重點還是自己要堅持學下去,不要到難的地方就
    發表于 09-26 01:25

    誰有天祥老師的單片機視頻,求分享!

    誰有天祥老師的十天學會單片機視頻,急用,求分享?。?!
    發表于 05-13 10:56

    天祥老師課件續

    天祥老師后續課件
    發表于 09-08 17:20

    天祥老師的十天學會單片機視頻教程

    天祥老師的十天學會單片機視頻教程,因內存過大,文檔里都是百度云盤鏈接,請大家自行去下載,謝謝。
    發表于 04-28 11:31 ?914次下載

    天祥PIC單片機教學視頻

    PIC單片機教學視頻天祥老師錄制,主要是配合天祥老師
    發表于 11-03 10:37 ?0次下載

    天祥老師的51單片機教程課件下載

    天祥老師的51單片機教程課件下載
    發表于 12-07 10:09 ?0次下載
    大发888扑克官方下载| 百家乐官网里面的奥妙| 大赢家比分| 玩百家乐如何硬| 利来百家乐官网娱乐| 灵璧县| 胜博国际娱乐城| 百家乐怎么看大小| 百家乐真人投注网站| 钱隆百家乐官网大师| 百家乐官网平注常赢打法| 挖掘百家乐官网赢钱秘籍| 大发888老虎机苹果版| 大发888战神娱乐| 百家乐具体怎么收费的| 百家乐破解版| 做生意怕路冲吗| 百家乐稳赚的方法| 金银岛百家乐官网的玩法技巧和规则 | 潘多拉百家乐官网的玩法技巧和规则 | 顶级赌场官方直营网| 东方太阳城嘉宾国际酒店| 百家乐网开服表| 678百家乐博彩娱乐网| 百家乐技巧公司| 百家乐路单生| 百家乐官网三珠连跳打法| 金冠百家乐娱乐城| 查看百家乐赌博| 皇城百家乐官网娱乐城| 大发888王博被带走| 百家乐官网游戏机路法 | 百家乐购怎么样| 最新百家乐网评测排名| 大发888娱乐场下载 官方| 尚品棋牌注册| 可以玩百家乐官网的博彩网站| A8百家乐官网娱乐场| 澳门百家乐官网手机软件| 星际百家乐娱乐城| 环球国际娱乐|