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

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

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

3天內不再提示

探究STM32H7芯片IAP跳轉失敗案例

茶話MCU ? 來源:cc ? 2019-02-26 15:32 ? 次閱讀

STM32用戶反饋,他在使用STM32H750VB編寫用戶引導程序【BOOT CODE】和應用程序【APP CODE】。根據數據手冊描述,STM32H750有128K Bytes的片內flash,地址是從0x0800 0000~~0x0801 FFFF。他將用戶bootloader放在0x0800 0000~0x0800 2FFF,應用程序放在0x08003000~0x0801 FFFF。但當他按照這樣的存儲分配設計時,發現總是沒法實現從BOOT區到APP區的跳轉。

基于該用戶的反饋信息,給他做了些提醒,比如中斷矢量表定位問題,客戶都說已經注意到了,代碼應該沒有問題。我這邊就客戶反饋的問題找了塊STM32H743的板做了驗證測試。發現從BOOT區到APP區的跳轉并沒有異常,那么客戶怎么又有問題呢?

再次查看了客戶郵件的反饋信息。他用的默認內部SRAM區為AXI SRAM,地址區間在0x24000000 --0x2407FFFF,即下面表格中的A區,而我使用的默認內部SRAM區是DTCM SRAM,地址區間在0x20000000 -0x2001FFFF,即下面表格中的B區。

難道是這個差別導致跳轉的不同結果?當然,這兩個SRAM區在使用上還是有差異的。

我嘗試著將測試工程的默認SRAM區從TCM RAM也改成AXI SRAM進行測試。果真沒法實現從BOOT區到APP區的跳轉!看來跳轉失敗跟選擇這個默認SRAM區有關系。也就是說當我默認使用DTCM RAM時跳轉正常,如果默認使用AXI SRAM時會跳轉失敗。

我們知道,STM32H7系列芯片支持D-CACHE/I-CACHE。具體到這里,如果使用AXI SRAM往往會用到D-CACHE。我們的工程代碼里也的確開啟了D-CACHE,如果是因為這個原因,如果在做跳轉操作之前關閉D-CACHE應該就能實現正常跳轉。 于是對代碼稍加調整,實際上也就是加了句關閉D-CACHE的代碼。【紅色方框處】

再次進行測試,此時即使使用AXI RAM做為默認內存空間,從用戶BOOT區也能可靠跳轉到APP區,完美實現。

這里涉及到STM32H7系列芯片內部不同存儲區的訪問特性和D-Cache相關知識,細節還是挺多的。有興趣的話,可以自行查看相關技術手冊做進一步的了解和探究。有時間,后續將在這里做進一步交流。此時分享該應用案例,一做應用提醒,二做拋磚引玉。

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

    關注

    459

    文章

    52199

    瀏覽量

    436397
  • STM32
    +關注

    關注

    2290

    文章

    11017

    瀏覽量

    362458

原文標題:一個STM32H7芯片IAP跳轉失敗的案例

文章出處:【微信號:stmcu832,微信公眾號:茶話MCU】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    STM32H743VIT6 ST單片機 參數及應用場景

    STM32H743VIT6 是意法半導體(STMicroelectronics)推出的一款高性能 Cortex-M7 微控制器,屬于 STM32H7 系列。它憑借強大的處理能力、豐富的外設和低功耗
    的頭像 發表于 05-12 11:19 ?278次閱讀
    <b class='flag-5'>STM32H</b>743VIT6 ST單片機 參數及應用場景

    使用STM32H7的FDCAN通訊,為什么CAN1會收到CAN2的幀ID,CAN2也會收到CAN1的?

    使用STM32H7的FDCAN通訊,請問為什么CAN1會收到CAN2的幀ID,CAN2也會收到CAN1的?
    發表于 03-14 10:33

    當內存不夠時,stm32h7 ITCM可以當普通ram用嗎?

    當內存不夠時,stm32h7 ITCM可以當普通ram用嗎
    發表于 03-14 06:13

    STM32H723 IAP跳轉進入硬件故障怎么解決?

    1、棧頂指針校驗不通過; 2、屏蔽棧頂指針校驗,跳轉進入硬件故障;
    發表于 03-13 08:10

    求助,關于STM32H7系列芯片下的ECC功能的疑問求解

    我這里采用的是STM32H755的芯片,參考了文檔
    發表于 03-11 07:43

    STM32H7 ADC_IRQHandler和ADC3_IRQHandler這兩個中斷入口函數在使用上有什么區別?

    STM32H7,ADC_IRQHandler和ADC3_IRQHandler這兩個中斷入口函數在使用上有何區別?
    發表于 03-11 07:28

    STM32H7使用LWIP通信,數據量過大會卡死怎么解決?

    使用STM32CubeIDE 1.17.0生成和編輯的STM32H743XIH6代碼,使用了FreeRTOS+lwip,sockets實現的TCP客戶端,對服務器端發送超過128個字節會卡死,進入
    發表于 03-11 06:43

    請問STM32H5遞增HDPL后如何跳轉下一級程序?

    STM32H5的HDP保護,比如某一級ROT提升HDP等級并跳轉下一級代碼運行。那設置HDP等級提升后,立刻生效嗎?如果生效,芯片不能再執行當前ROT中的程序,接下來怎么跳轉到下一級程
    發表于 03-11 06:00

    STM32H7 0x00000000地址的內容引發hardfault怎么解決?

    STM32H7,串口初始化時執行HAL_UART_MspDeInit函數,調用HAL_NVIC_DisableIRQ(huart-&gt;hdmarx-&gt
    發表于 03-07 08:15

    【正點原子STM32H7R3開發套件試用體驗】+01-開箱體驗

    作為一個正點原子的忠實粉絲,很高興能有機會試用正點原子的開發板,自己以前也是通過正點原子的開發板進入嵌入式行業的,這次給大家帶來的是STM32的高端芯片STM32H7R3開發板 主芯片
    發表于 12-05 20:10

    stm32H7 HAL庫中存在的bug

    stm32H7 hal 庫里面的以太網代碼,坑了魚鷹很多次(不知道最新版是否已經修復了這些bug),這里分享一篇網上的文章,因為魚鷹也遇到過,靠它解決了其中一個編譯優化問題,在此感謝作者。不過hal
    的頭像 發表于 08-12 17:37 ?2071次閱讀

    使用CUBE IDE無法通過IAP跳轉APP進行軟件升級怎么解決?

    本人使用的是cubeide 1.7.0版本,單片機是STM32F407VET6.在這個IDE工具下,成功實現STM32F103RCT6單片機的升級,卻無法實現F407這款芯片的升級,我不確定
    發表于 07-31 07:48

    CW32L083 IAP跳轉后中斷無響應是怎么回事?

    最近做一個項目,需要IAP。按照官方的教程一切順利,軟件APP跳轉一切正常,但是跳轉后中斷沒有響應。搜索了一堆資料,APP在mian中找開了中斷,在不同地方設置VROT,都沒能解決,查了數據手冊,也
    發表于 07-26 07:17

    請問stm32h7系列怎么跑linux呢?

    stm32h7系列怎么跑linux?
    發表于 07-03 08:04

    STM32H7系列芯片發不出去的hello問題

    有人使用STM32H7系列芯片,用到UART做字符串輸出時遇到點小問題。這里一起聊聊該問題,并分析問題原因。
    的頭像 發表于 07-01 09:56 ?1910次閱讀
    <b class='flag-5'>STM32H7</b>系列<b class='flag-5'>芯片</b>發不出去的hello問題