打印

这种启动模式有什么用?

[复制链接]
2851|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
rwdx|  楼主 | 2008-6-30 23:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这种启动模式有什么用?
Embedded SRAM Embedded SRAM is selected as the boot space
沙发
香水城| | 2008-7-1 09:56 | 只看该作者

SRAM的启动模式主要用于调试

使用特权

评论回复
板凳
rwdx|  楼主 | 2008-7-1 10:41 | 只看该作者

这种在SRAM中调试程序的操作方式是不是太复杂了呢?

为什么不跟其它arm一样弄个重映射机制,省得去拨插跳线多麻烦

使用特权

评论回复
地板
香水城| | 2008-7-1 10:55 | 只看该作者

你认为复杂可以不用

调试好之后做成产品后,SRAM启动就没有用了,所以不必搞重映射机制,况且调试时也不必拨插跳线;拨插跳线的限制是来自调试软件,而不是STM32,IAR的IDE可以在不改变跳线的情况下正常调试,但MDK却不行。

使用特权

评论回复
5
rwdx|  楼主 | 2008-7-1 11:07 | 只看该作者

调试时不用拔插跳线那就可以了

使用特权

评论回复
6
ijk| | 2008-7-1 11:14 | 只看该作者

SRAM启动模式很有用

SRAM启动模式很有用,特别是在FLASH启动出现异常的情况下

使用特权

评论回复
7
explor| | 2008-7-1 17:30 | 只看该作者

问楼上

SRAM启动模式很有用,特别是在FLASH启动出现异常的情况下 ?
1.怎么理解,说SRAM是接JTAG口调试时用的,那么FLSAH异常用SRAM启动怎么用 ?
2.在SRAM是接JTAG口调试时,要把BOOT0-1设置成SRAM模式吗 ?

使用特权

评论回复
8
香水城| | 2008-7-1 17:36 | 只看该作者

回楼上

1)比如,STM32的JTAG口可以配置成I/O口用,但这样JTAG调试就用不了啦,如果你的程序还没有调好,你就可以通过在RAM中启动的方式擦除并修改Flash中的程序。如果没有这种模式,麻烦就大了,也许这个芯片就不能用了。

2)不一定,请看4楼的回答。

使用特权

评论回复
9
explor| | 2008-7-2 13:43 | 只看该作者

回复

8楼的问题还是不明白,如果JTAG口配置成IO口后不能用了,用RAM启动擦除修改FLASH,那么RAM中的新程序是通过什么方式下载到RAM内 ?

使用特权

评论回复
10
香水城| | 2008-7-2 13:45 | 只看该作者

JTAG

使用特权

评论回复
11
lianshumou| | 2008-7-2 13:55 | 只看该作者

这个模式还有用的!当你的程序因为误操作封了JTAG口时

用RAM启动可以,用JTAG连上并清除FLASH区!这样就算IO分配出了问题而封了JTAG口也不用担心片子废了!

使用特权

评论回复
12
explor| | 2008-7-2 15:09 | 只看该作者

回复

1)如果是RAM启动,是要自己编写bootload,将程序下载到FLASH吗 ?
2)8楼中的问题1,“STM32的JTAG口可以配置成I/O口用”是指在BOOTLOAD程序?
3)用SystemRAM启动ISP的BOOTLOAD的程序是厂商写的,那么用FLASH启动和SRAM启动的BOOTLOAD是自己写吗 ?

使用特权

评论回复
13
香水城| | 2008-7-2 15:14 | 只看该作者

请问你要做什么?

我这里只能支持使用STM32,不能帮你做研究。

所有你的问题都是因为没有搞清什么是Boodloader。

使用特权

评论回复
14
explor| | 2008-7-2 16:53 | 只看该作者

也是用STM32

刚接触STM32,有些疑问没搞明白所以问错的地方还请版主指正。
我的疑问是:
1)上面提到可以用在RAM和FLASH启动模式下下载程序,那么应该有一个BOOTLOAD吧,但资料中只提到SystemRam模式启动才有ISP的bootload ?
2)就是想问问STM32的下载程序的几种方法是怎么实现?看IAR中只提供 flashloader这项功能,其它下到RAM中和ISP功能实现 ?

使用特权

评论回复
15
香水城| | 2008-7-2 17:03 | 只看该作者

下载程序是通过外部的调试器完成,不需要你操心

如果你愿意的话,也可以自己写Bootloader。

还是我上面说的,请搞清楚什么是Bootload,Bootloader是做什么的:Bootloader是为了加载程序,如果调试器已经加载了程序,就不再需要Bootloaer。

使用特权

评论回复
16
explor| | 2008-7-3 18:15 | 只看该作者

RAM下载程序

谢谢香主上面的回答。
1)上面提到的“拨插跳线的限制是来自调试软件,而不是STM32,IAR的IDE可以在不改变跳线的情况下正常调试”,那么用RAM启动下载程序,IAR中需要怎么设置 ?
2)我理解 RAM启动模式是调试程序只下载到RAM中运行,对FLASH不影响。但上面提到的“可以通过在RAM中启动的方式擦除并修改Flash中的程序” ???

使用特权

评论回复
17
香水城| | 2008-7-3 18:47 | 只看该作者

请explor亲自动手做一下就明白了

我不想在此纸上谈兵。

1)论坛中已经讨论很久了,自己找一下吧。
2)在RAM中可以执行擦除并烧写Flash中的程序。这样的问题最好能想过再问。

使用特权

评论回复
18
explor| | 2008-7-4 09:29 | 只看该作者

用RAM加载FlashLoader ?

“这样的问题最好能想过再问”开始就想过,所以我之前想确认一下要自己写一个类似FlashLoader(我误认为是BOOtLoader)程序,但版主又说是调试器加载。那么用RAM加载调试程序后,擦除完FLASH,怎么将二进制文件导入并烧写到FLASH中  ?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

85

帖子

1

粉丝