• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > C8051F35X单片机内部Flash存储器的擦写方法

C8051F35X单片机内部Flash存储器的擦写方法

录入:edatop.com     点击:

4 Flash数据写入

Flash存储器可一次写1个字节,也可一次写1组字节,寄存器PFEOCN中的FLBWE位为一次Flash写操作可写入1个或2个字节。当FLBWE清零时,每次Flash写操作写入1个字节;当FLBWE位置为"1"时,每次Flash写操作写入2个字节(块写)。块写时间与单字节写的时间相同,在向Flash存储器写入大量数据时可节省时间。在单字节写Flash时,分别写入字节数据,每个MOVX写指令执行一次Flash写操作。C805lF35X的Flash存储器写入程序代码如下:

5 Flash数据读取

由于Flash读操作采用MOVC指令实现,因此用于读操作的Flash指针必须是CODE类型。由于Flash写操作是用MOVX指令实现的,所以写入或擦除操作的Flash指针必须是XDATA类型。对于C8051F35X的Flash存储器读取数据程序代码如下:

6 实际应用

C805lF35X内部Flash存储器的读写操作可应用于包装机控制器的参数存储。在开机运行时如果每次重新输入分装重量值、分装精度等参数会降低工作效率,这时需在系统上电后自行调用事先设置的参数以简化工作人员的操作步骤,提高生产效率。图2是包装机参数调用流程。开机上电后先初始化串口,如果按下设置键重新设置分装重量,内部Flash需保存新参数,先将事先保存在Flash内的数据删除后再写入新数据,使掉电时数据不丢失,可在下次开机时直接调用数据。此方法已成功运用于包装机控制器中。

7 结论

C805lF系列的其他型号的单片机Flash的基本操作只需修改上述程序代码即可完成Flash存储器的相关操作。此外,在线写入C805lF35X单片机片内Flash时需注意:1)Flash读写或擦除地址超出用户代码空间引起系统复位;2)1个Flash位一旦清零,必须经擦除才能回到"1"状态,在重新写入之前,一般要将数据字节擦除(置为0XFF);3)为保证Flash内容的正确性,用户使用软件对Flash存储器进行写或擦除操作时,需先使能片内VDD监视器。

作者:陈富安 张 莹 河南工业大学 来源:电子设计工程

上一篇:基于FPGA的双口RAM实现及应用
下一篇:IPv6应用技术之RFID与IPv6结合

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图