本帖最后由 白鹭hu 于 2020-6-30 16:59 编辑
这段时间断断续续在移植RT-Thread,一直没有成功,相当头大,找原因也一直没有找到,直到今天问题终于解决了!
H747有两种供电模式,一直是LDO,一种是SMPS,而之前的STM32单片机都是LDO模式,CubeMX生成的代码也是这种默认模式。而板子电路图采用的是SMPS模式,所以在配置成LDO模式下,CPU是没有上电的,所以,只要程序下载进去,我立马就找不到STM32芯片了。此时,必须先把板子断电,然后按着RESET键,再给板子上电,然后用STM32CubeProgrammer连接板子的ST-LINK,在软件连接等待的时候,松手RESET键,H747芯片就能识别出来了,然后把Flash内的代码擦掉。
解决办法如下:
在board.c文件SystemClock_Config()函数内,修改如下函数参数:
HAL_PWREx_ConfigSupply(PWR_LDO_SUPPLY); --->
HAL_PWREx_ConfigSupply(PWR_DIRECT_SMPS_SUPPLY);
图片:
相关的工程代码已上传至github:
工程代码
|