liushiming82 发表于 2022-9-26 17:22

在keil软件中选Erase full Chip可以下载程序后无法运行?

大家好,我用的单片机是HC32F460PETB,在keil软件中选择了Erase full Chip来擦除芯片,可以正常下载程序,但是下载完程序后无法运行程序?请教大家这是什么问题?如何解决这个问题?谢谢大家?还有Erase full Chip和Erase Sectors的区别,在什么情况下,用哪个,谢谢


wubangmi 发表于 2022-9-26 17:53

没猜错的话,是你没有加载xxx_icg.c文件

liushiming82 发表于 2022-9-26 20:29

wubangmi 发表于 2022-9-26 17:53
没猜错的话,是你没有加载xxx_icg.c文件

没有明白你的意思,用Erase Sectors下载就可以正常运行,你说那个文件在哪儿呀,因为第一次用这个芯片,谢谢

wubangmi 发表于 2022-9-27 09:00

liushiming82 发表于 2022-9-26 20:29
没有明白你的意思,用Erase Sectors下载就可以正常运行,你说那个文件在哪儿呀,因为第一次用这个芯片, ...

你下载进去看看0x400这段FLASH地址的值是什么样的

liushiming82 发表于 2022-9-27 09:57

在keil中无法查看FLASH的内容,用什么查看Flash的内容呀?谢谢 我是小白一枚,望大佬讲解一下,再次感谢

hulai123456 发表于 2022-9-27 10:58

建议先将hc32_ll_icg.h与.c文件加载到你的driver文件中,然后在hc32f4xx_conf.h文件中,将#define LL_ICG_ENABLE                               (DDL_ON)其开启(也就是DDL_ON),然后再进入调试,看看程序运行情况

liushiming82 发表于 2022-9-27 14:35

这个程序原来是可以用,但是按上面操作一遍后,就无法运行,换了厂家例程就可以了

liushiming82 发表于 2022-9-27 15:58

hulai123456 发表于 2022-9-27 10:58
建议先将hc32_ll_icg.h与.c文件加载到你的driver文件中,然后在hc32f4xx_conf.h文件中,将#define LL_ICG_E ...

你说这几个文件都有,并且#define LL_ICG_ENABLE (DDL_ON)也是在DDL_ON上

wubangmi 发表于 2022-9-27 16:21

liushiming82 发表于 2022-9-27 15:58
你说这几个文件都有,并且#define LL_ICG_ENABLE (DDL_ON)也是在DDL_ON上

小白请先直接拿原厂的例程玩,不要自己建工程。

Undshing 发表于 2022-10-4 22:36

先试一下原厂例程

liushiming82 发表于 2022-10-10 09:06

wubangmi 发表于 2022-9-27 16:21
小白请先直接拿原厂的例程玩,不要自己建工程。

原厂的例程可以正常运行,我这边的程序是别人写的,原来可以运行,后面就不可以运行了,也不知道问题出在哪 儿了?

wubangmi 发表于 2022-10-10 09:13

liushiming82 发表于 2022-10-10 09:06
原厂的例程可以正常运行,我这边的程序是别人写的,原来可以运行,后面就不可以运行了,也不知道问题出在 ...

既然代码是别人写的,那就不知道了,你也不清楚别人是否给你留了个后门,你可能把它留在FLASH里的某个地方的标志位擦了,代码就不跑了,这很正常。
标题要写清楚啊,你这不是技术问答,跟段擦和全擦没关系,让大伙在这里给你一阵帮忙。
找别人写代码是要有代价的。

martinhu 发表于 2022-10-10 09:35

楼主是不是把别人写在芯片里的识别密钥擦掉了?

liushiming82 发表于 2022-10-10 09:38

wubangmi 发表于 2022-10-10 09:13
既然代码是别人写的,那就不知道了,你也不清楚别人是否给你留了个后门,你可能把它留在FLASH里的某个地 ...

谢谢大佬的提醒,起码明白了一个问题 扇区擦除和全部擦除是没有关系的,所以明确了问题所在,问题就出现在程序里面,所以就查程序,谢谢各位大佬的回复

软核硬核 发表于 2022-10-12 20:51

Erase full Chip 是擦除全部芯片Flash
Erase Sectors是擦除部分区域Flash

软核硬核 发表于 2022-10-12 20:51

全部芯片Flash就不用多说了,部分区域Flash就是你当前要下载的程序所占的扇区。

天天向善 发表于 2022-10-13 08:00

芯片所有Flash擦除估计是不是把Bootloader程序给擦除了?

sagade 发表于 2022-10-13 15:13

天天向善 发表于 2022-10-13 08:00
芯片所有Flash擦除估计是不是把Bootloader程序给擦除了?

很有可能,BOOT擦掉了,APP虽然能正常烧录,但是没法跳转APP了
页: [1]
查看完整版本: 在keil软件中选Erase full Chip可以下载程序后无法运行?