硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1411|回复: 21
收起左侧

[STM32H7] 请教下,本论坛里有没有谁使用过 stm32h747bit6 ?

  [复制链接]

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
发表于 2024-8-21 09:15:05 | 显示全部楼层 |阅读模式
本帖最后由 hpdell 于 2024-8-21 16:32 编辑

请教下,本论坛里有没有谁使用过 stm32h747bit6 ?

目前遇到了一些问题, 描述如下:

01. 先看看原理图的电源部分
h747bit6-sch-1.png


原理图的 smps 模式官方应用参考图:
h747bit6-smps-2.png

smps 我貌似使用的是 第二种 Direct SMPS supply  这种链接方式,

----------------------------------------------------------------------------------------------
哪位大佬搞过的帮忙看看电源部分链接有没有错呀 ??

h747bit6-code-1.png

貌似在初始化时就卡在了 第 57 行 ?  

如果屏蔽掉 第 57 行后现在 jlink 仿真器不能够与单片机建立链接了(在 keil 里面没有识别到 h747bit6 芯片, 之前没有屏蔽掉 57 行代码时在keil 里面是可以识别到mcu 的),

这是为何呀 ???

我现在重新吧 mcu 断电 一会后再上点, 还有 jlink 都断电 再重新上电, keil 里面始终都没有识别到 mcu 芯片 ?  这个要怎么恢复呀 ?

目前 M4 内核还没有开始搞
















回复

使用道具 举报

7

主题

22

回帖

43

积分

新手上路

积分
43
发表于 2024-8-21 12:09:38 | 显示全部楼层
你是不是在自己的程序中把jlink/sw的相关引脚用作GPIO或者其它AF功能了?

下载程序的时候keil MDK通过jlink/SW通信才能识别MCU,如果你的程序一直在运行无法复位,jlink/SW引脚被挪用了,下载时不能与MCU通信上,所以不能识别MCU,无法下载。

解决的办法是把MCU内程序清空,也就是擦除flash; 因为jlink/sw无法连上,所以没法用jlink/SW擦除;
要用UART1(PA9,PA10)串口方式擦除,PA9,PA10飞线到USB转串口连接电脑,Boot0引脚拉高,给开发板上电,使开发板进入boot区运行(不运行你的程序);
用stm32cubeProg或者STlinkUtility软件串口连接上开发板,然后选整片擦除;空白的芯片上电后jlink/SW就能连上MCU了。

你的代码L56~61就起一个延时的作用,在运行你的程序之前的这段延时,可以让jlink/SW与MCU通信上,所以能识别MCU,你把这个延时取消,一上电直接就运行你的程序,jlink/SW没时间连接上MCU的。

为了防止这种MCU自己把自己憋死的问题,我通常在调试期间都会在main()的第一句给个2秒左右的延时(而且不能被编译器优化掉):
int main(void)
{

  /* USER CODE BEGIN 1 */
  for (int i = 0; i < 20000000;i++);
    /* USER CODE END 1 */

    /* MPU Configuration--------------------------------------------------------*/
    MPU_Config();

  /* Enable the CPU Cache */

  /* Enable I-Cache---------------------------------------------------------*/
  SCB_EnableICache();

  /* Enable D-Cache---------------------------------------------------------*/
  SCB_EnableDCache();

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 2024-8-21 14:22:44 | 显示全部楼层
本帖最后由 hpdell 于 2024-8-21 14:35 编辑
sam2022 发表于 2024-8-21 12:09
你是不是在自己的程序中把jlink/sw的相关引脚用作GPIO或者其它AF功能了?

下载程序的时候keil MDK通过jl ...



我使用的 是 jlink sw 模式, swclk, swdio 两个脚除 sw 功能外没有链接其他的任何功能

我代码里面的 L56~61 貌似是需要等待 什么东东准备完成还是什么玩意,程序就是运行到此处就出不来了 。。。 ? 估计应该是进入到了什么错误处理函数里面去了


另外我刚刚使用 cubeMX 配置 rcc 时, 发现只要选择了 外部时钟 25MHz 这一路的话,
PWR_DIRECT_SMPS_SUPPLY 就不能够选择

h747bit6-jz-1.png

h747bit6-jz-2.png


看来只能使用 uart 的方法把 flash 整片擦除了





回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 2024-8-22 08:46:05 | 显示全部楼层
sam2022 发表于 2024-8-21 12:09
你是不是在自己的程序中把jlink/sw的相关引脚用作GPIO或者其它AF功能了?

下载程序的时候keil MDK通过jl ...





貌似是有 uart 链接没有成功,

bootload-747.jpg

是不是说明芯片彻底的废掉了呀 ?




回复

使用道具 举报

7

主题

22

回帖

43

积分

新手上路

积分
43
发表于 2024-8-22 11:22:35 | 显示全部楼层
看log,H7的标志字0x450与BootLoader的版本都识别了,说明串口是与mcu通信上了,是可以连上了;
但芯片设置是读保护,Device is under read  out protection;
通常在调试的时候是不设置读保护的,只有产品批量出货烧写时才会设置读保护;
cubemxprog软件左侧【OB】栏设置芯片配置,打开第一项RDP看看读保护的设置情况,如果是BB LEVEL1 读保护还有救,可以设置回AA;如果是设置CC的话可能就是变砖了;
如果cubemxprog不行,换STM32 ST-LINK Utility V4.5试试,有时候淘汰的旧软件反而好用,串口连上后ctrl+b或者target菜单中的option bytes,看看读保护read out protection 设置回LEVEL0即可;其它选项也可以看看设置成适合调试的;
如果真变砖,就只能更换开发板上的MCU芯片了
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 2024-8-22 11:48:12 | 显示全部楼层
本帖最后由 hpdell 于 2024-8-22 11:53 编辑
sam2022 发表于 2024-8-22 11:22
看log,H7的标志字0x450与BootLoader的版本都识别了,说明串口是与mcu通信上了,是可以连上了;
但芯片设 ...

貌似读保护我没有设置过 ,怎么会这样  呀

在 st 官网找到了 4.6 版本的
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2024-9-30 14:50:50 | 显示全部楼层
这个是个双核的,M7中的几句代码,是等待M4进入休眠状态,但你没有搞M4的代码,所以就卡死了
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 2024-10-1 16:50:01 | 显示全部楼层
strong5515 发表于 2024-9-30 14:50
这个是个双核的,M7中的几句代码,是等待M4进入休眠状态,但你没有搞M4的代码,所以就卡死了

你的意思是 双核  M7, m4 , 在 捣鼓 m7 前 m4 里面必须得先搞点东西在里面吗 ?

或 直接吧 等待 m4 内涵的那几句代码屏蔽 是否可行啊 ?
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2024-10-1 22:43:57 | 显示全部楼层
是可以的,你只用M7的话,屏蔽了那几句,没有影响。
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 2024-12-24 17:28:26 | 显示全部楼层
strong5515 发表于 2024-10-1 22:43
是可以的,你只用M7的话,屏蔽了那几句,没有影响。

后续有机会搞个 h747的捣鼓一下

回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2024-12-30 10:49:05 | 显示全部楼层
双核的芯片,就像双节棍,耍的好威力无穷,耍不好经常打自己。要练好基本功
回复

使用道具 举报

2

主题

1

回帖

7

积分

新手上路

积分
7
发表于 2025-1-13 19:34:50 | 显示全部楼层
你应该用的是cubemx生成的代码吧,那段话的意思是m7等待m4。必须同时运行m7和m4就可以了
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 2025-4-18 16:09:55 | 显示全部楼层
小飞侠丶 发表于 2025-1-13 19:34
你应该用的是cubemx生成的代码吧,那段话的意思是m7等待m4。必须同时运行m7和m4就可以了

貌似现在 H747 芯片比较贵,等等后续看看能否降价 再捣鼓 h747  
回复

使用道具 举报

14

主题

50

回帖

92

积分

初级会员

积分
92
发表于 2025-4-18 18:13:18 | 显示全部楼层
hpdell 发表于 2025-4-18 16:09
貌似现在 H747 芯片比较贵,等等后续看看能否降价 再捣鼓 h747

我调试过 H745 的板子,是 M7 需要等待 M4 的信号量才继续跑的。因为这个我锁过三四次芯片。
回复

使用道具 举报

14

主题

50

回帖

92

积分

初级会员

积分
92
发表于 2025-4-18 18:17:50 | 显示全部楼层
刘心武 发表于 2025-4-18 18:13
我调试过 H745 的板子,是 M7 需要等待 M4 的信号量才继续跑的。因为这个我锁过三四次芯片。

将NRST与GND连接,将BOOTO连接到3V,然后断开NRST和GND,然后尝试刷新/调试代码。
你可以使用这个方法试一下,我是这么解锁的(我是用的官方 h745 开发板)
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 7 天前 | 显示全部楼层
刘心武 发表于 2025-4-18 18:17
将NRST与GND连接,将BOOTO连接到3V,然后断开NRST和GND,然后尝试刷新/调试代码。
你可以使用这个方法试 ...

好的, 感谢感谢大神啊,我先试试看
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 7 天前 | 显示全部楼层
本帖最后由 hpdell 于 2025-4-19 17:56 编辑
刘心武 发表于 2025-4-18 18:17
将NRST与GND连接,将BOOTO连接到3V,然后断开NRST和GND,然后尝试刷新/调试代码。
你可以使用这个方法试 ...




按照大神提供的方法, 现在 M7 内核可以正常工作了哟, 非常感谢感谢啊

m4 内核工作不太好,
01. 先下载了 M4 内核的 程序, 里面就一个 LED 灯 控制 亮灭的 程序,
     貌似这个 M4 内核的 led 灯亮灭没有正常的运行 ?  但是仿真 单独仿真 M4 内核时, led 亮灭运行又是正常的, 请教下 这个是神马情况呀  ?
    m4.png     M4 内核 软件, 貌似 LED 会一直常亮,   当进入到 M4 内核单独仿真控制亮灭却又是正确的


02. 下载 m4 内核的后再下载 m7 内核的程序可以运行正常  , 貌似就唯独在 M4 内核里面 的 LED 运行不正常,貌似会一直常亮?


03. 搂住位的 原理图 电源链接是没有错的, 在 系统电源配置里面需要配置如下:
      h747-pwr.png    同时需要 在 C/C++ 里面需要增加 USE_PWR_DIRECT_SMPS_SUPPLY 这个红定义
   
    在 cubeMX V6.14 版本里面, 对于 h747bit6 芯片电源配置没有找到 PWR_DIRECT_SMPS_SUPPLY 这个选项, 需要认为另外修改增加即可


回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 7 天前 | 显示全部楼层






h747-pwr-m7-1.png



h747-pwr-m7-2.png


貌似在 M7 内核里面可以把 上面的 屏蔽掉 当作 单核来使用  

回复

使用道具 举报

14

主题

50

回帖

92

积分

初级会员

积分
92
发表于 7 天前 | 显示全部楼层
hpdell 发表于 2025-4-19 18:22
貌似在 M7 内核里面可以把 上面的 屏蔽掉 当作 单核来使用

https://www.bilibili.com/list/watchlater?oid=871099224&bvid=BV1GV4y1874o&spm_id_from=333.337.top_right_bar_window_view_later.content.click
我是跟着这个视频学习使用多核调试的。你也可以查阅一下官方应用手册 AN5286,文档超过我可以上传的大小了,上传不了。
具体什么情况我也没研究过,抱歉无法给你更多信息了。
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 7 天前 | 显示全部楼层
刘心武 发表于 2025-4-19 18:42
https://www.bilibili.com/list/watchlater?oid=871099224&bvid=BV1GV4y1874o&spm_id_from=333.337.top_r ...

好的, 非常感谢了
回复

使用道具 举报

14

主题

50

回帖

92

积分

初级会员

积分
92
发表于 5 天前 | 显示全部楼层
hpdell 发表于 2025-4-19 19:03
好的, 非常感谢了

好奇问一下,你这是自己在玩多核芯片,还是公司的产品?
回复

使用道具 举报

677

主题

3460

回帖

5516

积分

论坛元老

积分
5516
 楼主| 发表于 5 天前 | 显示全部楼层
刘心武 发表于 2025-4-21 09:04
好奇问一下,你这是自己在玩多核芯片,还是公司的产品?

自己有时间没去喝酒炮妹时自己就瞎捣鼓一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-4-26 01:45 , Processed in 0.387022 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表