如何将一个数组存储到spi flash(如w25p16)中,单片机又要如何读取这个数组。数组为in 30

如何将一个数组存储到spiflash(如w25p16)中,单片机又要如何读取这个数组。数组为int型数据... 如何将一个数组存储到spi flash(如w25p16)中,单片机又要如何读取这个数组。数组为int型数据 展开
 我来答
大维
2015-04-10 · 郑州西亚斯学院副教授
大维
郑州西亚斯学院副教授
采纳数:111 获赞数:365
发表论文14篇。编写教材5部。擅长微控制器应用技术和网络技术

向TA提问 私信TA
展开全部
很简单 如 int a[0] uchar a0h = a[0]>>8; a0L = a[0]; 这样就分开成单字节数 可以存储了。

还有一个方法顶一个联合体
union
{
int a_i[10];
unsigned char b_c[20];
} test.

把数组的值直接 赋给 test.a_i[10],然后利用写字节程序吧 test.b_c[20],写入flash,
读出数据时,把独处的数据给 test.b_c[20],需要整型数 直接去读 test.a_i 就可以了!
NJGQZF
2015-04-10 · TA获得超过1.1万个赞
知道大有可为答主
回答量:3165
采纳率:0%
帮助的人:1202万
展开全部
如果你会对FLASH读写,就很容易解决。存储时顺序读出数组数据,由于是整形数,所以要变换,用除法配合取模运算或者用与运算配合移位运算都能得到两个8位的结果,然后按字节写入FLASH;读出时还要组合成整型变量,用移位和或运算解决,再顺序赋值给数组。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
硬件开发88
2017-11-01 · TA获得超过8674个赞
知道大有可为答主
回答量:1757
采纳率:84%
帮助的人:574万
展开全部
这个W25Q16的Flash存储器网上现成代码可以直接调用的,首先把要写的数据,按照顺序在Flash指定地址顺序开始写入.
然后在写入的Flash指定地址开始读取。
例如写入字符串“123456789”
写入Flash 0x10000地址
读取0x10000地址数据是1
读取0x10001地址数据是2
读取0x10002地址数据是3
......................
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qu...u@163.com
2017-11-19 · TA获得超过426个赞
知道答主
回答量:266
采纳率:25%
帮助的人:73.7万
展开全部
春夜喜雨(杜甫)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
饶磊039
2015-04-10 · TA获得超过989个赞
知道小有建树答主
回答量:933
采纳率:0%
帮助的人:666万
展开全部
我搞过sd卡的
追答
我觉得你把这个芯片的驱动程序写出来就行了,根据数据手册
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式