吴忠躺衫网络科技有限公司

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次下載
    百家乐园zyylc| 织金县| 网络百家乐官网现金游戏哪里的信誉好啊 | 百家乐官网双龙出| 百家乐路子分| 上海百家乐官网赌博| 大三元百家乐的玩法技巧和规则 | 大发888xp缺少 casino| 百家乐正反投注| VIP百家乐官网-挤牌卡安桌板| 皇冠足球投注平台| 博彩网百家乐中和局| 沙巴百家乐官网现金网| 成人百家乐的玩法技巧和规则| 百家乐官网分析仪博彩正网| 娱乐城图片| 大发888娱乐免费试玩| 金都百家乐的玩法技巧和规则| A8百家乐官网娱乐网| 百家乐官网实战案例| 百家乐游戏机| 通化大嘴棋牌官方下载| 全讯网77| 威尼斯人娱乐城轮盘| 如何胜百家乐的玩法技巧和规则| 网络百家乐路单图| 有百家乐官网的棋牌游戏| 88娱乐城官网| 免水百家乐的玩法技巧和规则| 百家乐路珠价格| 网上百家乐官网游戏哪家信誉度最好| 遂昌县| 榕江县| 百家乐官网免费路单| 澳博娱乐| 大发888海立方| 大发888现金存款| 六合彩网站| 百家乐官网如何计牌| 百家乐官网投注窍门| 在线百家乐官网电脑|