LPC178x/177x E2PROM 控制与寄存器详解
需积分: 45 119 浏览量
更新于2024-08-06
收藏 18.87MB PDF 举报
"LPC178x系列微控制器的E2PROM控制和寄存器配置"
在LPC178x系列微控制器中,E2PROM(Electrically Erasable Programmable Read-Only Memory)是一种非易失性存储器,用于存储需要在系统断电后仍然保持的数据。它在微控制器中的应用广泛,如存储配置参数、固件更新等。本部分主要介绍了E2PROM的功能、寄存器结构以及操作。
5.16 E2PROM存储器
E2PROM是LPC178x的一个重要组成部分,提供了一种灵活的存储解决方案。它包含了多个寄存器来控制和管理E2PROM的操作,如命令、地址、数据以及中断相关的寄存器。
5.16.1 描述
E2PROM允许用户进行读取、写入和擦除操作。它的特点是可以通过电子方式擦除和重新编程,因此可以在程序运行过程中动态修改存储的内容。复位值仅反映了使用位的数据,而不包含保留位的内容。
5.16.2 特性
- **E2PROM命令寄存器 (EECMD)**:这个寄存器用于启动读、写或擦除/编程操作。向该寄存器写入特定的命令字节会触发对应的操作。
- **E2PROM地址寄存器 (EEADDR)**:用于指定要访问的E2PROM的地址。
- **E2PROM写数据寄存器 (EEWDATA)**:在执行写操作时,通过这个寄存器写入数据到E2PROM。
- **E2PROM读数据寄存器 (EERDATA)**:用于读取E2PROM中的数据。
- **E2PROM等待状态寄存器 (EEWSTATE)**:指示E2PROM操作的状态,例如写入或擦除操作是否正在进行。
- **E2PROM时钟分频器寄存器 (EECLKDIV)**:控制E2PROM操作的时钟频率。
- **E2PROM掉电寄存器 (EEPWRDWN)**:用于在低功耗模式下管理E2PROM。
- **E2PROM中断寄存器**:包括中断使能(EEINTEN)、中断使能清除(EEINTENCLR)、中断使能设置(EEINTENSET)、中断状态(EEINTSTAT)以及中断状态清除(EEINTSTATCLR)和设置(EEINTSTATSET)寄存器,用于控制和检查E2PROM操作相关的中断事件。
5.16.3 寄存器描述
每个寄存器都有其特定的功能和访问权限。例如,E2PROM命令寄存器(EECMD)是可读写的,复位值为0,地址为0x0020 0080。写入特定的命令到这个寄存器会启动E2PROM的操作。其他寄存器如E2PROM地址寄存器(EEADDR)和E2PROM写数据寄存器(EEWDATA)也分别用于设定地址和写入数据。
5.16.4 E2PROM操作
E2PROM的操作流程通常包括:
1. 设置E2PROM命令寄存器(EECMD)以选择适当的操作(如读、写或擦除)。
2. 设置E2PROM地址寄存器(EEADDR)以选择要操作的存储位置。
3. 如果是写操作,将数据写入E2PROM写数据寄存器(EEWDATA)。
4. 监视E2PROM等待状态寄存器(EEWSTATE),等待操作完成。
5. 使用中断寄存器来处理中断事件,如果启用中断功能。
在进行E2PROM操作时,开发者需要注意时序和数据完整性,以及可能的等待时间,因为E2PROM操作通常比RAM操作慢。
LPC178x的E2PROM功能提供了灵活且可靠的非易失性存储选项,适用于需要持久存储的场合。通过精心设计的寄存器结构,开发者可以方便地控制E2PROM的操作,确保数据的安全性和正确性。
2024-11-19 上传
2024-11-19 上传
2024-11-19 上传
2024-11-19 上传
2024-11-19 上传
Yu-Demon321
- 粉丝: 23
- 资源: 3963
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析