微芯片单片机擦除闪存程序存储器步骤详解
需积分: 3 159 浏览量
更新于2024-08-08
收藏 8.12MB PDF 举报
该文主要介绍了在PIC18F45K80微控制器中擦除闪存程序存储器的过程,以及涉及的相关寄存器设置和步骤。文章内容基于Microchip Technology Inc.的数据手册。
在微控制器编程中,擦除闪存程序存储器是一个关键操作,特别是对于那些使用闪存存储代码和数据的设备。在PIC18F45K80这款芯片中,擦除操作是以32个字或64字节的块为单位进行的,不支持字级别的擦除。在擦除过程中,高16位的TBLPTR寄存器用于指定要擦除的块的地址,而低6位被忽略。控制擦除操作的关键寄存器是EECON1,需要设置EEPGD位为1以指向闪存程序存储器,CFGS位清零以访问程序存储器,同时设置WREN位使能写操作,以及FREE位使能擦除操作。
擦除序列的详细步骤如下:
1. 设置表指针寄存器(TBLPTR)为要擦除的块地址。
2. 配置EECON1寄存器,包括设置EEPGD、CFGS、WREN和FREE位。
3. 禁止中断以确保操作的原子性。
4. 写入EECON2的特定序列(55h然后是0AAh)来启动擦除过程。
5. 设置EECON1的WR位开始擦除操作,此时CPU会暂停执行,直到擦除完成。
6. 擦除结束后,重新启用中断。
在示例代码中,给出了擦除一行闪存程序存储器的具体C语言实现,包括加载地址到TBLPTR寄存器,配置EECON1寄存器,并执行EECON2的写启动序列。
需要注意的是,擦除操作会暂停CPU的执行,直至内部编程定时器结束长写周期。这个过程对于保证数据的安全性和完整性至关重要,同时也强调了在进行这类操作时中断管理的重要性。
此外,文档还提醒读者,尽管提供了中文翻译,但应以英文原文为准,因为英文版可能包含更详细的信息和技术规格。Microchip Technology Inc.对其知识产权有严格的保护,并明确指出不为任何潜在的误解或错误翻译承担责任,用户在使用Microchip器件时应遵循技术规范,自行承担应用风险。在生命维持和生命安全应用中使用Microchip器件,所有责任由用户自负。
2020-10-17 上传
2019-11-02 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
沃娃
- 粉丝: 31
- 资源: 3983
最新资源
- 掌握Jive for Android SDK:示例应用的使用指南
- Python中的贝叶斯建模与概率编程指南
- 自动化NBA球员统计分析与电子邮件报告工具
- 下载安卓购物经理带源代码完整项目
- 图片压缩包中的内容解密
- C++基础教程视频-数据类型与运算符详解
- 探索Java中的曼德布罗图形绘制
- VTK9.3.0 64位SDK包发布,图像处理开发利器
- 自导向运载平台的行业设计方案解读
- 自定义 Datadog 代理检查:Python 实现与应用
- 基于Python实现的商品推荐系统源码与项目说明
- PMing繁体版字体下载,设计师必备素材
- 软件工程餐厅项目存储库:Java语言实践
- 康佳LED55R6000U电视机固件升级指南
- Sublime Text状态栏插件:ShowOpenFiles功能详解
- 一站式部署thinksns社交系统,小白轻松上手