[STM32F1] 不勾选能正常运行

[复制链接]
607|17
 楼主| ousj 发表于 2020-5-27 23:37 | 显示全部楼层 |阅读模式
硬件为STM32F103VCT6,使用J-link V8在线烧写。

设备支持远程在线升级功能,其烧写文件由IAP.hex和APP.hex文件合并而成。

不勾选options->project settings->production->Secure ship时,设备能正常运行,反正则不能运行。
llljh 发表于 2020-5-27 23:41 | 显示全部楼层

什么意思?不是很明白你说的什么,能再解释一下这个现象吗
 楼主| ousj 发表于 2020-5-27 23:45 | 显示全部楼层
该加密方式在之前的项目STM32F207上面执行是正常的,不知为何在F103上却不行。
pangb 发表于 2020-5-27 23:48 | 显示全部楼层
这个问题我没有遇到过 看看别人懂不懂
 楼主| ousj 发表于 2020-5-27 23:52 | 显示全部楼层

没有碰到过么?
guoyt 发表于 2020-5-27 23:54 | 显示全部楼层
是不是那个不支持加密。
wangpe 发表于 2020-5-27 23:57 | 显示全部楼层
没勾选过。这个是设置啥呢
wenfen 发表于 2020-5-28 21:54 | 显示全部楼层
ST-LINK呢?
juventus9554 发表于 2020-5-28 21:56 | 显示全部楼层

怎么解决?
pengf 发表于 2020-5-28 22:03 | 显示全部楼层

这个加密有啥用。
yinxiangh 发表于 2020-5-28 22:06 | 显示全部楼层
还是真没见过加密情况
 楼主| ousj 发表于 2020-5-28 22:11 | 显示全部楼层
问题已经找到:
前提:Secure ship勾选烧写时,设备需要断电重启才能有效(单片机上的3.3V必须耗光)。
原因:设备断电的时间不够长导致,当设备断电后,3.3V会保持大概4S左右,而之前测试时都是断电后立马就上电,所以才会出问题。

题外话:
我的设备是支持IAP远程升级功能的,如果在IAP程序或是APP程序中加入下面的加密语句
if(FLASH_GetReadOutProtectionStatus() == RESET)
  {
    FLASH_Unlock();//This MUST done first
    FLASH_ReadOutProtection(ENABLE);
    FLASH_Lock();
  }
,则会影响到升级功能,会报HardFault_Handler错误,具体什么原因没有去查明,所以才有了Secure ship勾选来加密的方案。
guoyt 发表于 2020-5-28 22:16 | 显示全部楼层
原来设备要彻底断电一次啊。
wangpe 发表于 2020-5-28 22:19 | 显示全部楼层
有没有办法直接自动重启。
 楼主| ousj 发表于 2020-5-28 22:22 | 显示全部楼层

好的,我明天去单位试一下,多谢各位大侠了哈        
paotangsan 发表于 2020-6-8 14:57 | 显示全部楼层
不是很明白
renzheshengui 发表于 2020-6-8 14:57 | 显示全部楼层
这个选项是干嘛的啊
wakayi 发表于 2020-6-8 14:57 | 显示全部楼层
是非加密吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

712

主题

7557

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部