硬汉嵌入式论坛

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

[有问必答] Boot from embedded SRAM for STM32F407 (STM32-V5)

[复制链接]

1

主题

2

回帖

1

积分

新手上路

积分
1
发表于 2013-12-24 11:49:25 | 显示全部楼层 |阅读模式
請教版主
STM32F4 的 Boot mode 有三種,分別為
1. Flash memory
2. System memory
3. Embedded SRAM

如果我想把F/W直接放在 SRAM 然後 boot
那麼 CPU 的兩支 pin 腳,boot0 及 boot1 都必須 pull high
但是貴司的 boot1 線路是否已接死到 Ground ?
回复

使用道具 举报

116

主题

800

回帖

1148

积分

至尊会员

积分
1148
QQ
发表于 2013-12-24 12:16:49 | 显示全部楼层
貌似仿真的时候没关系
回复

使用道具 举报

747

主题

1049

回帖

3295

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3295
发表于 2013-12-24 12:35:49 | 显示全部楼层
没必要用这个硬件SRAM模式了。
固件放在SRAM的2个目的:
(1) 临时调试,不破坏Flash程序。
      解决方法: 只需要在调试器初始化文件中配置好中断向量表,并跳转到SRAM执行。
   我们的很多例子都支持SRAM调试,并不需要你去修改BOOT状态,引导模式始终是Flash启动,肯定比你去拨动跳线帽很方便的。

(2)运行中将应用程序复制到SRAM运行。
     解决方法: 这种情况,你肯定要编写一个启动引导程序存放在Flash。由这段引导程序完成向量表重新分配,并负责跳转。

除此之外,我实在想不出还有什么情况会用到SRAM启动模式。
回复

使用道具 举报

1

主题

2

回帖

1

积分

新手上路

积分
1
 楼主| 发表于 2013-12-26 01:00:24 | 显示全部楼层
請問板主
我今天試了許久,雖然光盤上的例子可以在SRAM中調試
但卻同時也把 code 燒入 CPU 的 flash 中
無論我怎麼嘗試關閉 flash programming,都無法正常 SRAM 調試
感覺上像是 CPU 必須將 code 從 flash 覆寫到 SRAM,才能調試
不知是我哪裡不清楚,還是有什麼地方沒處理好

想請問一下
有沒有配置是完全不用把 code 寫入 flash 而可以正常調試的呢
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107396
QQ
发表于 2013-12-26 12:38:07 | 显示全部楼层

回 blusos 的帖子

blusos:

請問板主
我今天試了許久,雖然光盤上的例子可以在SRAM中調試
但卻同時也把 code 燒入 CPU 的 flash 中
無論我怎麼嘗試關閉 flash programming,都無法正常 SRAM 調試
.......
你看看你那里是不是有没设置好的地方,或者换别的例子试试。
保证下面几个地方的设置
1。选择CpuRAM
1.png

2. 记得填上VECT_TAB_SRAM
2.png

3. 初始化文件一定要有
3.png

4.
4.png


按如上操作基本就可以了。
回复

使用道具 举报

747

主题

1049

回帖

3295

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3295
发表于 2013-12-28 18:56:25 | 显示全部楼层
本身就不用写入Flash的,调试器传输代码到SRAM然后开始运行。
回复

使用道具 举报

1

主题

2

回帖

1

积分

新手上路

积分
1
 楼主| 发表于 2013-12-30 00:45:56 | 显示全部楼层
原來我在移除 CpuRAM.ini 裡的中文亂碼時,不小心刪除了其中一行 script
貴司的例子是可行的

謝謝板主
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-29 16:51 , Processed in 0.301678 second(s), 34 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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