
C51单片机数组存到内部flash
我用8051F040单片机的过程中发现RAM不够用,想把一部分数据存在FLASH中,不知是否可行?若可行的话,如何将数组存在FLASH中?请高手们不吝赐教!...
我用8051F040单片机的过程中发现RAM不够用,想把一部分数据存在FLASH中,不知是否可行?若可行的话,如何将数组存在FLASH中?请高手们不吝赐教!
展开
1个回答
展开全部
数组是可以存在FLASH中的,但是这样并不可行,8051单片机主要是片内没有EEPROM,一般在FLASH中存储一些掉点不丢的东西,如果存数组的话,首先得写一个读写FLASH的函数专门去存放它,这样本身就比较小的RAM,更加不够用了。
不过8051单片机,一般都有个DATA区和一个XDATA区,我估计你是把所有的变量全部定义在DATA区了,才导致DATA区溢出的问题,你可以试着这样定义你的数组:
xdata unsigend char ARRAY[128];
试试这样可行不,或者你已经这样试过了的话,那就换芯片吧。
不过8051单片机,一般都有个DATA区和一个XDATA区,我估计你是把所有的变量全部定义在DATA区了,才导致DATA区溢出的问题,你可以试着这样定义你的数组:
xdata unsigend char ARRAY[128];
试试这样可行不,或者你已经这样试过了的话,那就换芯片吧。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?

2023-06-12 广告
单片机汇编程序是用汇编语言编写的程序,用于控制单片机的操作。汇编语言是一种比较接近计算机硬件语言的低级语言,相对于高级语言来说更容易理解和实现。下面是单片机汇编程序的基本步骤:1. 将代码和数据汇编到规定的段中。2. 在存储器中用未初始化的...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询