stm32f2BootLoader升级初接触

最近在进行分时系统硬件部分的开发,由于水平不高所以程序有些漏洞,优化空间很大,由于是产品级的硬件,所以软件升级方便也是很重要的一点

前些时段由于需要操作flash和SD卡读写,对BootLoader的实现原理也不是很熟悉,所以一直拖着没有做,前两天做了数据SD卡读写记录,把板子上的其他模块都调试了一遍,发现在没有接口躲避BootLoader了,所以今天开始着手BootLoader。

说是开发也不算是,已经有一块STM32f1的例子,STM32f1和STM32f2在BootLoader上的不同是两者的flash操作不同

STM32f1的flash擦除操作是以page为单位擦除,而STM32f2将flash分成sector,4个16Kb的sector,1个64Kb,6个128Kb。由于其是sector为单位擦除,擦除时不仅擦除了之前存放的app,也有可能把在此sector中其他的东西擦除掉,所以首先需要确定以下问题:

1、需要确定BootLoader跳转的程序有多大,需要分放在哪个sector里。

2、明确擦除page和擦除sector的不同————软件实现的不同

3、flash写操作会不会也不同,还是通用FLASH_If_Write(flashdestination, (uint32_t*)&send_buf, (j/4));


1、跳转程序需要512Kb的空间,每个程序需要两个128Kb的sector来储存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值