0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

不能連接上STM32H7芯片的原因

STM32單片機 ? 來源:STM32單片機 ? 作者:STM32單片機 ? 2022-04-01 14:41 ? 次閱讀

引言

在重新編程燒錄了 STM32H7 目標(biāo)芯片后,我就無法連接到該設(shè)備。選擇 “Connect under reset”連接也沒有幫助。為什么 ?

原因分析

通過日??蛻舻募夹g(shù)支持整理,有兩種可能的根本原因可以導(dǎo)致這個問題。第一種可能性更大,與電源配置錯誤有關(guān)。其次是與 Option Bytes 選項字節(jié)中的內(nèi)核啟動配置相關(guān)。下面我們來具體的看一看。

可能原因一(電源配置錯誤)

這條原因適用于所有具有可配置內(nèi)部 SMPS 降壓轉(zhuǎn)換器的 STM32H7 芯片。采用嵌入式降壓轉(zhuǎn)換器的 STM32H7 器件提供了不同的電源方案。代碼中供電電源的所選配置取決于外部電源電路組件的連接。此配置只能在上電復(fù)位后設(shè)置一次。選擇錯誤的配置會導(dǎo)致 MCU鎖定,也即是說 STM32H7 軟件代碼配置的供電模式與外部硬件供電電路不匹配的時候,會導(dǎo)致該芯片被 鎖定【lock-up】。

軟件代碼中關(guān)于電源模式的配置可以通過 HAL 庫中的以下代碼行完成(通常放在SystemClock_Config 函數(shù)中) :

ba5fe48e-b178-11ec-aa7f-dac502259ad0.png

大多數(shù)的電路原理圖設(shè)計都會選擇 SMPS 作為MCU VDD 的直接供電方式(如果該SMPS 模塊在 MCU 中可用),這里就需要使用 PWR_DIRECT_SMPS_SUPPLY 參數(shù)替代PWR_LDO_SUPPLY 調(diào)用上述函數(shù)。但是在早期的 STM32CubeMX 生成的項目在默認情況下可能是 PWR_LDO_SUPPLY 電源選項。所以這兒導(dǎo)致了不一致。而在 CubeMX 5.4.0 及更高版本中提供了 PWR_DIRECT_SMPS_SUPPLY 電源做為默認選項。所以要注意配置的一致性。由于配置只能在上電重置后更改一次,因此問題可能會在下一次電源復(fù)位后出現(xiàn)。

ba743ac4-b178-11ec-aa7f-dac502259ad0.png

下面是參考手冊中的圖表,顯示了電源的不同硬件配置:

ba8617b2-b178-11ec-aa7f-dac502259ad0.png

MCU 內(nèi)含保護機制,可防止將更高的電壓從內(nèi)部 SMPS 導(dǎo)入到 VCORE(1.8 或 2.5V)。這樣可以防止由于配置錯誤而損壞 MCU。

由于電源通常在復(fù)位后立即配置,因此很難連接。

解決方案 1 是:

1、將復(fù)位按鈕保持在低位(通常為 NRST 引腳),然后接通將電路板電源,

2、保持復(fù)位按鈕低電位,通過 STM32CubeProgrammer 連接。當(dāng)程序開始連接時,松開復(fù)位按鈕。

3、如果連接不上繼續(xù)執(zhí)行上述步驟,如果連接上則執(zhí)行批量擦除。

4、確保已修復(fù)項目中的電源配置,重新下載。

解決方案 2 是:

1、強制將 BOOT0 引腳保持高位,然后上電復(fù)位目標(biāo)板。這需要將 BOOT_CM7_ADD1 設(shè)置為系統(tǒng)內(nèi)存。

2、保持 BOOT0 引腳電平為高,通過 STM32CubeProgrammer 連接。系統(tǒng)引導(dǎo)加載程序 System bootloader 不會使用自己用戶的電源配置。

3、執(zhí)行批量擦除。

4、確保已修復(fù)項目中的電源配置,重新下載。

可能原因二(Cortex-M7 啟動已禁用)

這適用于所有具有雙核功能的 STM32H7 設(shè)備。有時我們調(diào)整選項字節(jié)的配置使得只有 Cortex-M4 在復(fù)位后才啟動(BOOT_CM7/BCM7=0,BOOT_CM4/BCM4=1)。此時你需要將調(diào)試器連接到訪問端口 AP=3(CortexM4),而不是訪問端口 AP=0(Cortex-M7)。

順便提醒下,使用 STM32CubeProgrammer 進行連接時,注意保持 STM32CubeProgrammer 為最新版本。

對于開發(fā),建議保持兩個內(nèi)核啟動配置,否則有些 IDE 工具可能無法與設(shè)備一起工作。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    450

    文章

    49636

    瀏覽量

    417157
  • STM32
    +關(guān)注

    關(guān)注

    2258

    文章

    10828

    瀏覽量

    352482

原文標(biāo)題:工程師筆記|不能連接上 STM32H7 芯片

文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    stm32H7 HAL庫中存在的bug

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

    請問stm32h7系列怎么跑linux呢?

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

    STM32H7系列芯片發(fā)不出去的hello問題

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

    如何用STM32H7 SPI驅(qū)動DAC芯片(非板上內(nèi)置DAC)生成正弦波?

    我想用STM32H7用SPI 驅(qū)動DAC 芯片(非板上內(nèi)置DAC)生成正弦波,有合適的例程或者思路給我借鑒嗎
    發(fā)表于 05-31 06:35

    STM32H7的HRTIM可以生成12路的PWM嗎?

    STM32H7的HRTIM可以生成12路的PWM嗎,想做數(shù)字電源,控制三相NPC逆變器
    發(fā)表于 05-23 07:19

    請問STM32H7是否支持Trace功能?

    報 “Trace HW not present”這個錯誤。stm32H7的dataSheet是明確表示該內(nèi)核是有Trace功能的,是不是哪里設(shè)置有問題?
    發(fā)表于 04-25 07:38

    使用LL庫生成STM32H7代碼時存在報錯是什么原因導(dǎo)致的?

    使用LL庫生成STM32H7代碼時存在的BUG
    發(fā)表于 04-03 07:33

    STM32H7讀外部SRAM首次成功,之后保持不變是為什么?

    STM32H743讀外部SRAM 芯片,首次讀成功后,無法再次讀取新的數(shù)據(jù),使用示波器對STM32H7引腳進行測量,發(fā)現(xiàn)無波形輸出。調(diào)試過程中,在程序中打個斷點,就每次可以正常讀取。
    發(fā)表于 03-27 06:13

    Stm32H7 spi會帶來更大的adc噪聲,導(dǎo)致小信號異常值的原因?

    [Stm32H7]spi會帶來更大的adc噪聲,導(dǎo)致小信號異常值
    發(fā)表于 03-25 06:10

    STM32H7配置FileX時,開關(guān)“Enable data cache maintenance”的作用是什么?發(fā)生HardFault_Handler的原因?

    我在STM32H7上基于AzureRTOS的FileX實現(xiàn)向TF卡寫入數(shù)據(jù),在CubeMX配置FileX頁面里有Enable data cache maintenance開關(guān),這個選項默認是打開
    發(fā)表于 03-13 06:23

    STM32H7的工程出現(xiàn)找不到rtconfig.h的錯誤如何解決?

    舊工程是能正常編譯和運行的。在拉取最新代碼后,編譯出錯,提示有些宏定義缺失。進入menuconfig配置后,AT32的工程是能正常編譯的,STM32H7的工程出現(xiàn)找不到rtconfig.h的錯誤
    發(fā)表于 03-05 07:12

    STM32H7有雙屏異顯功能嗎?

    請問STM32H7有雙屏異顯的功能么,就是一個是RGB另一個mipi啊等等,刷屏速度比較快的那種。不要什么串口屏或者SPI接口的,刷屏很慢。屏大小在3.5-7寸之間。不想使用安卓板子。
    發(fā)表于 10-31 07:05

    STM32H7芯片系列中定時器同步啟動并輸出PWM波形的實現(xiàn)方法

    本文主要研究了STM32H7芯片系列中定時器同步啟動并輸出PWM波形的實現(xiàn)方法。
    的頭像 發(fā)表于 10-24 14:56 ?1379次閱讀
    <b class='flag-5'>STM32H7</b><b class='flag-5'>芯片</b>系列中定時器同步啟動并輸出PWM波形的實現(xiàn)方法

    STM32H7怎么實現(xiàn)一個哈希的數(shù)據(jù)運算處理?

    STM32H7怎么實現(xiàn)一個哈希的數(shù)據(jù)運算處理
    發(fā)表于 10-10 06:34

    STM32H7移植freertos能不能直接用通用定時器作為系統(tǒng)時鐘基準?

    STM32H7移植freertos,能不能直接用通用定時器作為系統(tǒng)時鐘基準
    發(fā)表于 10-10 06:30