[STM32F1] 不需要bootloader了吧

[复制链接]
 楼主| pengf 发表于 2018-8-16 10:56 | 显示全部楼层 |阅读模式
如果我让代码从system memory启动的话 ,system memory即固有的bootloader代码的起始地址是0x1fff f000,那么程序应该是从这里启动的吧,那他是是不是应该从bootloader的地址这里跳到flash的起始地址0x800 0000开始正常程序的运行啊,那跳的方式是怎么样的啊,如果我用jtag进行程序的烧写,就不需要bootloader了吧。
renyaq 发表于 2018-8-16 10:58 | 显示全部楼层
不是,一般是bootloader起始地址为0x800 0000,因为复位后,先运行的是bootloader,bootloader运行完,跳转到应用程序的.
 楼主| pengf 发表于 2018-8-16 11:03 | 显示全部楼层
如果我自己写了一个bootloader的程序,用作IAP下载,我看资料上说对用户flash区的开始进行4页写保护,假如我的bootloader的起始地址是0x800 0000,那是不是对这里开始的四页进行写保护了
supernan 发表于 2018-8-16 11:07 | 显示全部楼层


什么意思?不是很明白你说的什么,能再解释一下这个现象吗
 楼主| pengf 发表于 2018-8-16 11:13 | 显示全部楼层


那也就是说我自己写的bootloader不会被改掉 但是如果我自己想改该怎么改动那
juventus9554 发表于 2018-8-16 11:17 | 显示全部楼层


ST原本就有内部Bootloader,如果你使用厂家自带的Bootloader,当然不用再自己造轮子了;
如果你用JLINK等工具烧录,自然也就无需用到什么Bootloader
llljh 发表于 2018-8-16 14:34 | 显示全部楼层
对前4k有保护的,保护是指不能够通过编程指令修改
houcs 发表于 2018-8-16 14:37 | 显示全部楼层


嗯,但可以通过仿真器下载bin或者hex等方式修改的,
 楼主| pengf 发表于 2018-8-16 14:40 | 显示全部楼层
固有的bootloader是不是不可以更改的,但是我怎么看网上有说官方发布了一个什么东西,可以用对固有bootloader升级,是这样的吗
houcs 发表于 2018-8-16 14:44 | 显示全部楼层
不清楚,指知道使用固有的bootloader需要硬件支持的,必然扫描IO口电平进入编程模式,反之bootloader跳入应用程序.
 楼主| pengf 发表于 2018-8-16 14:46 | 显示全部楼层
固有的bootloader的地址不是0x800 0000吧,如果我用ISP下载方式的话起始地址应该是0x1fff f000吧,手册上是这个意思吗,不是很理解,另外如果我用jtag下载方式需要经过固有的bootloader吗
houcs 发表于 2018-8-16 14:50 | 显示全部楼层
请教高手,STM32 FLASH 可以这样用吗?BOOTLOAD区,应用程序区,升级文件缓存区和操作记录区。多谢!
pangb 发表于 2018-8-16 14:52 | 显示全部楼层


注意flash扇区的大小,有些东西放到内部的flash是不合适的,扇区太大
yinxiangh 发表于 2018-8-16 14:58 | 显示全部楼层


我买了片STM32F103C8T6最小系统板    boot0  高    b00t1 低电平    用j-lkink    刷入bootloader 文件     起始地址 为0x8000000    刷完后 boot0  ;   b00t1  都接 低电平   这样对么?
 楼主| pengf 发表于 2018-8-16 15:01 | 显示全部楼层
结贴了,多谢大家讨论这么多哈,呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

718

主题

10129

帖子

3

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