微芯片闪存程序存储器操作指南
需积分: 50 186 浏览量
更新于2024-08-10
收藏 6.84MB PDF 举报
"闪存程序存储器的概述集中在对PIC16F/LF1825/1829等器件的编程和读取操作上,强调了擦除、编程过程以及读取机制。"
在微控制器领域,闪存程序存储器是一种重要的非易失性存储器类型,用于存储程序代码和某些配置数据。在11.3章节中,介绍了闪存程序存储器的基本操作,特别是对于PIC16F/LF1825/1829这样的芯片。这些器件的闪存程序存储器按照行进行操作,每一行包含了固定数量的14位程序存储字。行是擦除操作的最小单位,用户可以通过软件进行擦除。
擦除和编程闪存有特定的条件,比如目标地址必须位于未被写保护的存储段内,这部分由配置字2的WRT<1:0>位定义。在擦除一行后,用户可以重新编程该行的全部或部分数据。编程过程中,数据写入14位宽的数据写锁存器,用户无法直接访问这些锁存器,而是通过EEDATH:EEDATL寄存器对填充数据。锁存器的数量并不等于行单元数,因此编程可能需要多次操作,如对于一个有8个写锁存器且行大小为32个字的器件,可能需要执行4次编程操作。
读取闪存程序存储器的步骤包括设置低和高有效地址,清除EECON1寄存器的CFGS位,设置EECON1的EEPGD控制位,然后置位RD控制位。一旦RD被置位,数据将在下一个指令周期读取,可用作两个字节。值得注意的是,如果想要修改已编程行的一部分,需要先读取整个行并保存到RAM中,然后在擦除后进行更新。
表11-1列出了不同器件的闪存构成,例如PIC16F/LF1825/1829,它们的擦除块(行)大小为32字,边界由EEADRL<4:0>确定,写锁存器数量也为32字,边界同样由EEADRL<4:0>决定。此外,读取操作后的两条指令必须是NOP,防止双周期指令的执行。无论CP位设置如何,都可以读取闪存程序存储器。
这份资料还提醒用户,Microchip Technology Inc.提供的中文版本仅供参考,重要信息仍需参考英文原版。使用Microchip的器件时,买方需自行承担风险,Microchip不对信息的准确性或使用后果负责。此外,Microchip的知识产权受到法律保护,未经授权不得转让。
2022-07-14 上传
2009-12-07 上传
2018-12-06 上传
2021-11-19 上传
2021-05-27 上传
2008-03-16 上传
2009-09-23 上传
2014-12-05 上传
2021-09-30 上传
刘兮
- 粉丝: 26
- 资源: 3855
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍