新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > C8051F020的XRAM和非易失性储存

C8051F020的XRAM和非易失性储存

作者: 时间:2016-11-24 来源:网络 收藏
C8051F020有4Kbyte的XRAM和128byte的非易失性存储(相当于EEPROM)。首先在Keil中按下图勾上两个选项

本文引用地址:https://www.eepw.com.cn/article/201611/320867.htm


那么要使用XRAM,只需将变量类型定义为XDATA即可,最好在定义上不要初始化,否则可能会有问题。如果需要使用非易失性储存,就需要编写驱动,也很容易,首先在操作前先关闭中断;操作完成恢复中断状态即可,与之相关的寄存器是FLSCL和PSCTL,需要注意的是写FLASH只能将1变为0,所以写字节操作前需擦除整个扇区,写字节的变量类型为XDATA,用MOVX,而读的话就是指向CODE,用MOVC,比如写指针可以定义为uchar xdata *pwrite;读的话可以定义为uchar code *pread;当然给指针赋值时应当将转化为指针变量,如pwrite=(uchar xdata *)=addr;pread=(uchar code *)=addr;然后给指针指向的空间赋值就可以了。



评论


技术专区

关闭