当前位置: 首页 > wzjs >正文

巨腾外贸网站建设公司优化设计方法

巨腾外贸网站建设公司,优化设计方法,网页开发背景与意义,网站做互动文章目录 前言STM32F105的内部ROM分布STM32F10x的闪存擦写解锁FPECMain FLASH 的编写 main Flash的擦除注意点 前言 在通过OTA的方式对设备进行升级,若在使用内部FLASH装载固件程序的方式下,需要擦写 内部FLASH 从而实现把新的固件程序写入到 内部FLASH…

文章目录

  • 前言
  • STM32F105的内部ROM分布
  • STM32F10x的闪存擦写
    • 解锁FPEC
    • Main FLASH 的编写
  • main Flash的擦除
  • 注意点

前言

在通过OTA的方式对设备进行升级,若在使用内部FLASH装载固件程序的方式下,需要擦写 内部FLASH 从而实现把新的固件程序写入到 内部FLASH。

参考文档:ST的闪存编程文档

STM32F105的内部ROM分布

在这里插入图片描述
F105属于互联型设备,其内部的主存储器ROM有256KB。
这256KB 由 128页 ,每页2KB的页面组成

Information block 分为两个部分:System memory 和 Option bytes

  • System memory:
    这个部分存储了是STM32官方系统的bootloader程序,在通过选择对应的BOOT模式可以进入该bootloader程序;该bootloader程序是通过 把USART1的传输过来的程序 写入到Main memory中。
    在互联型产品中,bootloader程序 还可以读取 USART2(重映射)等接口,从而烧录程序。
  • Option bytes
    有两种保护方式:①写包含;②读保护

注意:
1.只有在写FLASH完毕后,才能正确的读取FLASH。在 写FLASH时读取FLASH,将会造成写失败;
2.只有在内部高速晶振开启时,才能写入/擦除内部FLASH。
3.在低功耗模式下,对FLASH的任何访问将被中止。

STM32F10x的闪存擦写

STM32F10x的闪存擦写由 FPEC 控制。

FPEC指Flash program and erase controller,FPEC由7个32位的寄存器组成。
在这里插入图片描述
注意:只有CPU没有访问 正在操作的FLASH,CPU将不会因操作FLASH而阻塞。

解锁FPEC

在复位后,FPEC是被保护着。

需要往 FLASH_KEYR 寄存器写入固定的值,才可解开FPEC的锁。

如果这个值写错了,那么只有在下一次复位后,才能再次接口FPEC的锁。

Main FLASH 的编写

每次只能往main flash写入16位数据。

在写入main flash的指定地址时,若该地址并未被擦除,则FLASH_SR的 PGERR 将会被置位。
若该地址是写保护的(通过 FLASH_WRPR 设置),则FLASH_SR的 WRPRTERR 将会被置位。
在这里插入图片描述

标志的擦写 main Flash的步骤如下:
在这里插入图片描述

main Flash的擦除

在编写 main Flash 之前,需要先擦除。

擦除 main Flash 的方式有两种:页擦除,全擦除。


页擦除:页擦除是擦除 main Flash的一个页面。
在这里插入图片描述

map 0x40000000,0x40080000 read write

注意点

在使用stm32自带的flash保存数据时候,如下特点必须知道:

1、必须是先擦除一个扇区,才能写入

2、读数据没有限制

3、写数据必须是偶数(2字节、4字节),同时写入地址以一定要考虑字节对齐,

4、一般都是在最后几页进行数据保存的,确保数据量不超过flash的的大小,比如f103大容量是2k字节,其实一个扇区只能写入1k数量的2字节的数据。

http://eeskill.com/article/id/29479

5、写入数据时,采用大端模式,如想往 0x0800 0000写入0x31 0x32 0x33 0x34,则写入的数据是uint32_t data = 0x31 + 0x32<<8 + 0x33<<16 + 0x34<<24;即写入0x34333231

6、一旦写入数据,无论你写的是FLASH擦除后的默认值0xff还是其他值,若在不擦除的情况下再次往该地址写数据,必定失败。

7、若遇到写入 或 擦除失败的清空,需要清除标志位后才能再继续写入或擦除。

FLASH_ClearFlag(FLASH_FLAG_EOP |   FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);
flash_sta=FLASH_ErasePage(UPDAFLAG_FLASH_56K);
http://www.dtcms.com/wzjs/81462.html

相关文章:

  • 自己做网站需要服务器吗网络销售
  • 找人做网站一套多少钱网络营销的六大特征
  • 商丘做网站多少钱上海外贸网站seo
  • 商水县建设局网站最新新闻消息
  • 电脑外设网站建设论文网络营销效果评估
  • 苏州网站制作价格网站优化排名提升
  • 电商网站建设技术可行性分析厦门谷歌seo公司有哪些
  • 做查询网站费用seo管理平台
  • 深圳网站建设高端链接转二维码
  • 南通做网站公司seo网站优化培训怎么做
  • dede网站转移武汉百度推广公司
  • 老河口网站定制指数平台
  • 做淘宝网站用什么软件做企业网络营销系统分析报告
  • 找代理做网站网站域名归属谁最新注册域名查询
  • 成都网站改版推广赚钱的项目
  • 手机qq怎么用wordpress网站优化推广怎么做
  • 怎么做贷款网站sem是什么?
  • 无锡网站建设 微信公众号高端网站建设哪个好
  • 做简历的网站viso西地那非片
  • 陈仓网站建设网上推销产品的软件
  • 网站备案信息核验单怎么长春seo快速排名
  • 基于html的网站设计百度热门排行榜
  • 通付盾 公司网站建设怎么宣传自己新开的店铺
  • 做淘宝图的素材搜索网站网站建设方案范文
  • 电商网站首页代码搜索引擎优化简历
  • 中小型网站建设策划百度商业平台
  • 珠海医疗网站建设如何结合搜索检索与seo推广
  • 河南郑州建设网站职业技术培训
  • wordpress rocket江苏seo外包
  • 本地网站可以做吗?十大推广app平台