USB3300芯片手册:程序存储器修改与配置空间访问指南

需积分: 0 16 下载量 185 浏览量 更新于2024-08-08 收藏 8.3MB PDF 举报
"USB3300芯片手册-修改闪存程序存储器及访问用户ID、器件ID和配置字" 在微控制器编程过程中,修改闪存程序存储器是常见的任务,尤其是在涉及PIC16F1937这类芯片时。根据提供的文件信息,以下是关于这个过程的详细步骤和注意事项: 1. **修改闪存程序存储器步骤**: - **读取现有数据**:在修改存储器行中的数据之前,必须先读取这一行的数据并存储到RAM(随机存取存储器)中,以保留原有信息。 - **装载地址**:确定要修改的行的起始地址,并加载到相应的寄存器中。 - **保存和修改数据**:将读取的数据保存到RAM映像,并在RAM中进行必要的修改。 - **重新装载地址**:再次加载要写入新数据的行的起始地址。 - **擦除操作**:对程序存储器行执行擦除操作,准备写入新的数据。 - **加载数据到写锁存器**:将RAM中的新数据加载到写锁存器中。 - **启动编程**:执行编程操作,将数据写入闪存。 - **重复操作**:如果需要修改多行,重复步骤6和7。 2. **用户ID、器件ID和配置字访问**: - 当EECON1寄存器的CFGS位设为1时,访问的不再是程序存储器或EEPROM,而是用户ID、器件ID/版本ID和配置字。 - 这些特定区域是在PC<15> = 1时访问的,但不是所有地址都是可访问的。表11-2列出了不同地址的读写权限。 - 对于表11-2之外的地址进行读取操作,EEDATH和EEDATL寄存器将被清零。 - 示例代码展示了如何读取程序内存中的一个字,使用了BANKSEL、MOVLW、MOVWF等指令来选择正确的银行、存储地址低字节和清除地址高字节,以及如何使用EECON1寄存器进行读操作。 3. **安全性和责任声明**: - 提供的中文文档仅供参考,重要信息仍需参考英文原文。 - Microchip Technology Inc.不对翻译中的错误负责,也不对使用这些信息造成的后果承担责任。 - 使用Microchip器件应用于生命维持或生命安全系统,风险由使用者自行承担,Microchip不对此类应用提供任何担保。 这个过程涉及到微控制器编程的基本原理,包括存储器操作和寄存器交互,这对于理解和开发基于PIC16F1937的系统至关重要。正确地遵循上述步骤和访问规则可以确保有效的程序修改和数据管理。