擦除闪存程序存储器步骤详解

需积分: 44 141 下载量 11 浏览量 更新于2024-08-10 收藏 9.9MB PDF 举报
"擦除闪存程序存储器是微控制器编程中的一个重要步骤,尤其对于基于PIC18F45K系列的单片机。在这些设备中,擦除操作涉及到一系列的寄存器设置和特定的写启动序列,以确保安全有效地清除存储在闪存中的程序数据。" 在7.4章节中,描述了擦除闪存程序存储器的过程,该过程主要用于删除或更新单片机内部的固件。擦除块的大小是32个字或64字节,而单片机不支持字级别的擦除,只能进行块擦除。在擦除操作中,高16位的TBLPTR寄存器用于指向要擦除的块,而低6位则被忽略。 擦除操作是由EECON1寄存器控制的。首先,需要将EEPGD位置1,这样就指定了闪存程序存储器。接着,CFGS位应被清零,以便访问程序存储器。WREN位被置1,开启写操作的权限,而FREE位置1则启动擦除操作。为了防止意外修改,执行擦除前需要通过EECON2寄存器的写启动序列,即先写入55h,再写入0AAh,最后设置WR位开始擦除过程。 在擦除期间,CPU会暂停执行其他指令,直到内部编程定时器完成擦除操作。中断在此过程中会被临时禁用,以防止任何干扰,擦除完成后需重新启用中断。例7-2展示了完整的擦除一行闪存程序存储器的步骤,包括设置表指针寄存器TBLPTR和EECON1寄存器,以及执行写启动序列。 值得注意的是,这个过程是基于Microchip Technology Inc.的特定微控制器系列,如PIC18F45K,采用nanoWatt XLP技术的增强型闪存单片机。文档DS39977C_CN提供了这些详细信息,强调了使用英文原版文档的重要性,因为它们包含了关于Microchip产品性能和使用的关键信息。 最后,Microchip Technology Inc.提醒用户,他们不对翻译的准确性承担责任,并且对于器件的应用信息,用户应自行确认符合技术规范,因为这些信息可能会随更新而改变。此外,使用Microchip器件于生命维持和/或生命安全应用的风险由购买者承担。同时,知识产权的保护意味着未经许可,不得转让任何许可证。