微芯片技术:闪存编程流程与雅可比、黑塞矩阵在存储器中的应用

需积分: 3 71 下载量 139 浏览量 更新于2024-08-08 收藏 8.12MB PDF 举报
"闪存编程-雅可比矩阵和黑塞矩阵在嵌入式系统中的应用" 在嵌入式系统设计中,特别是在使用如PIC18F45K80这样的微控制器时,理解和掌握如何正确地写入闪存程序存储器至关重要。这个过程涉及到一系列精确的操作步骤,以确保数据安全、有效地被编程到存储器中。 首先,编程块的大小为32个字或64字节,这意味着一次编程操作不能针对单个字或字节进行,而是以块为单位。在内部,设备使用表写指令将待写入闪存的内容加载到64个保持寄存器中。表写操作通过TBLWT指令执行,由于TABLAT寄存器仅支持单字节,因此可能需要执行64次以完成整个块的编程。 在写入之前,64字节的数据会被先读入RAM,并根据需要进行更新。接着,要擦除的地址被装入表指针寄存器,执行行擦除过程。然后,要写入的第一个字节地址再次装入表指针寄存器,数据通过自动递增的方式写入保持寄存器。在写操作之前,EECON1寄存器需要设置,其中EEPGD置1以选择程序存储器,CFGS清零以访问该区域,WREN置1以启用字节写操作。 写操作的启动涉及到两个特定的步骤,即写入055h和0AAh到EECON2寄存器,随后设置WR位开始写周期。在这个过程中,CPU会暂停执行,直到内部编程定时器完成操作。写周期结束后,中断会被重新允许,并通过表读操作来验证存储器的正确性。 值得注意的是,器件复位后或写操作完成后,保持寄存器默认值为FFh。写入FFh不会改变其内容,因此,除非想要将位从0变为1,否则无需在写操作前装载所有64个保持寄存器。在执行写操作时,确保表指针地址位于保持寄存器的预期地址范围内,这是成功编程的关键。 这个过程与雅可比矩阵和黑塞矩阵在数学和工程中的应用相比,显得更为底层和具体。雅可比矩阵是描述函数在某一点的局部线性近似,而黑塞矩阵则涉及函数的二阶导数,通常在优化问题和动力系统分析中使用。虽然在嵌入式系统编程中不直接用到这些矩阵,但它们代表了数学工具在高级控制算法或系统建模中的应用,而这些算法和模型可能运行在这些经过精心编程的闪存存储器上。 对闪存程序存储器的编程是一项细致的工作,需要精确的步骤和对微控制器硬件特性的深入理解。这项技术是嵌入式系统开发的基础,确保了软件代码的稳定存储和执行。