STM32F101xx/STM32F103xx FLASH及Option Byte寄存器详解
需积分: 32 181 浏览量
更新于2024-08-10
收藏 4.73MB PDF 举报
"STM32固件库, FLASH寄存器结构, 信而泰bigtao系列选型手册"
本文档主要介绍了基于ARM微控制器的STM32F101xx和STM32F103xx系列的固件函数库,以及其FLASH寄存器结构。STM32F101x系列微控制器的固件库包含了一系列程序、数据结构和宏,用于简化对所有外设的操作,提供驱动描述和应用示例,从而减少用户编程工作量并降低开发成本。
STM32F101xx和STM32F103xx的FLASH寄存器结构由以下部分构成:
1. ACR (FLASH访问控制寄存器): 控制FLASH的访问特性,如预取缓冲器的使能和等待状态的设置,以优化访问速度。
2. KEYR (FPEC密钥寄存器): 用于执行闪存编程和擦除操作的密钥输入,必须正确写入特定的密钥序列才能执行这些操作。
3. OPTKEYR (选择字节密钥寄存器): 同样用于访问选项字节的密钥,防止未经授权的修改。
4. SR (FLASH状态寄存器): 显示闪存操作的状态,如错误标志和操作完成标志。
5. CR (FLASH控制寄存器): 用于配置和控制闪存操作,如编程、擦除和选项字节的写入。
6. AR (FLASH地址寄存器): 存储要访问的闪存地址。
7. OBR (选择字节和状态寄存器): 包含选项字节和一些状态信息,如Boot配置、RDP(readout protection)等级等。
8. WRPR (选择字节写保护寄存器): 用于设置写保护区域,防止某些存储区被意外修改。
选项字节(Option Byte)寄存器包括:
- RDP (读出保护): 控制读保护级别,防止芯片被读出。
- USER (用户选择字节): 可由用户定义的选项字节,通常用于存储配置信息。
- Data0 和 Data1: 提供额外的数据存储空间。
- WRP0 到 WRP3 (写保护选择字节): 定义闪存的写保护区域。
固件库遵循严格的ANSI-C标准,提供了一个统一的应用编程接口(API),方便跨开发环境使用。库中的错误检测功能通过实时校验输入值来提高软件的健壮性,但在最终优化的应用程序中,这部分可以被移除以减小程序大小和提高执行效率。
固件库适用于大部分应用场景,但对于有严格代码大小和速度要求的项目,开发者可以参考库函数进行自定义优化。固件库用户手册详细描述了库的结构、使用方法和每个外设的函数,为开发者提供了全面的指导。
2018-09-28 上传
2021-10-08 上传
571 浏览量
2021-12-29 上传
154 浏览量
2016-08-24 上传
点击了解资源详情
点击了解资源详情
马运良
- 粉丝: 34
- 资源: 3883
最新资源
- 高清艺术文字图标资源,PNG和ICO格式免费下载
- mui框架HTML5应用界面组件使用示例教程
- Vue.js开发利器:chrome-vue-devtools插件解析
- 掌握ElectronBrowserJS:打造跨平台电子应用
- 前端导师教程:构建与部署社交证明页面
- Java多线程与线程安全在断点续传中的实现
- 免Root一键卸载安卓预装应用教程
- 易语言实现高级表格滚动条完美控制技巧
- 超声波测距尺的源码实现
- 数据可视化与交互:构建易用的数据界面
- 实现Discourse外聘回复自动标记的简易插件
- 链表的头插法与尾插法实现及长度计算
- Playwright与Typescript及Mocha集成:自动化UI测试实践指南
- 128x128像素线性工具图标下载集合
- 易语言安装包程序增强版:智能导入与重复库过滤
- 利用AJAX与Spotify API在Google地图中探索世界音乐排行榜