4708|11

71

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

STM32 不知算不算是个BUG [复制链接]

当将外部总线FSMC_DataSetupTime = 0 时,程序(哦,不是,应该是芯片)蹦溃,仿真器能找到内核,但无法擦除和下载程序。(程序蹦溃是正常的,但无法再次下载程序和擦除,这就有点搞怪了~~)

解决办法,将BOOT0拉高,进入BOOT模式,擦除下载,将BOOT0置0,一切正常~~~
此帖出自stm32/stm8论坛

最新回复

除了对下载接口或相应功能禁用,其他的程序意外让IC程序无法更新或整个IC功能失效(非硬件烧坏),这样算是个BUG了吧 如果,我的BOOT0直接接地,我始不是要把这只脚焊开才能让IC活过来?? 有没有文档说明 FSMC_DataSetupTime 不能等于0??? 1)调试环境与实际应用环境不同,你需要预留一些调试需要的功能,比如BOOT0引脚。 2)关于FSMC_DataSetupTime,请看手册中对应的说明如下: 下载 (15.55 KB) 2010-5-10 16:27 3)关于运行的程序干扰了烧录或下载,以前有很多讨论,你可以搜索一下,也可以看看这个文档的第68页:STM32F10x常见应用解析(2008年9月)。  详情 回复 发表于 2010-5-10 16:27
点赞 关注
 

回复
举报

79

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
                                 
此帖出自stm32/stm8论坛
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
....你的是那个型号啊?
我用STM32F107RC  没法ISP,,一次都不成功,试了几天。
此帖出自stm32/stm8论坛
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

4
 
                                 ,自问自答啊
此帖出自stm32/stm8论坛
 
 
 

回复

87

帖子

0

TA的资源

一粒金砂(初级)

5
 
                                 JFLASH试试
此帖出自stm32/stm8论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

6
 
                                 什么思路?
此帖出自stm32/stm8论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

7
 
                                 5楼意思是说看能不能烧写?
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

8
 
无法擦除和烧录新的程序是因为你原先的程序干扰了擦除和烧录的过程。

从上电到调试器控制住芯片,已经有部分的程序已经运行了,就是这运行的部分程序干扰到了擦除和重新烧录。

如果从BOOTLOADER模式启动芯片,你原先的代码就不会运行,因此可以执行擦除和烧录。


这是很正常的。
此帖出自stm32/stm8论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

9
 
                                 正常?楼上,你不知道擦写和烧写有个RESET过程吗?
此帖出自stm32/stm8论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

10
 
除了对下载接口或相应功能禁用,其他的程序意外让IC程序无法更新或整个IC功能失效(非硬件烧坏),这样算是个BUG了吧

如果,我的BOOT0直接接地,我始不是要把这只脚焊开才能让IC活过来??

有没有文档说明 FSMC_DataSetupTime 不能等于0???
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

11
 
呵呵,我前面说过了,调试器要控制住芯片内核是需要时间的,即便是很短的ms级,也足够代码从reset开始运行了。你的现象很明显的说明了:
1, 芯片没有问题,因为从BOOTLOADER可以正常烧录
2, 你的代码干扰了烧录,因为你的代码一运行就不能正常烧录了

其实STM32的烧录过程是先烧录一段BOOTLOADER代码到RAM区,然后运行,运行的这段BOOTLOADER代码负责接收数据,并将之烧录到FLASH内。

所以,一旦烧录到RAM区的BOOTLOADER代码,被你自己的程序干扰到了,整个FLASH的烧录过程也就不能正常执行了。

用户代码干扰到RAM区的原因有很多,以前有贴子讨论过的,最常见的是启动了DMA。
此帖出自stm32/stm8论坛
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

12
 
除了对下载接口或相应功能禁用,其他的程序意外让IC程序无法更新或整个IC功能失效(非硬件烧坏),这样算是个BUG了吧

如果,我的BOOT0直接接地,我始不是要把这只脚焊开才能让IC活过来??

有没有文档说明 FSMC_DataSetupTime 不能等于0???
1)调试环境与实际应用环境不同,你需要预留一些调试需要的功能,比如BOOT0引脚。

2)关于FSMC_DataSetupTime,请看手册中对应的说明如下: STM32_FSMC_DATAST_Description.GIF

3)关于运行的程序干扰了烧录或下载,以前有很多讨论,你可以搜索一下,也可以看看这个文档的第68页:STM32F10x常见应用解析(2008年9月)。
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表