打印

刚学单片机,问个关于e2prom的问题。

[复制链接]
2223|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yzcook|  楼主 | 2018-11-7 13:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想存个很大的数组 num = [32][8][8]={0};怎么把他存到e2prom里。数据就算掉电也不会丢失,是否需要配置
iic什么的。我是想存进去,然后再需要的用的时候随时可以调用。
用的芯片是stc12c5a32s2 。之前完全没用过e2prom,希望解答一下。

相关帖子

沙发
mohanwei| | 2018-11-7 14:14 | 只看该作者
定义错了……
多维数组在存储空间上都是连续的,所以可以当一维字节数组操作,也就是强制转换为(unsigned  char *)pUchar指针连续写/读即可

使用特权

评论回复
板凳
yzcook|  楼主 | 2018-11-7 14:18 | 只看该作者
mohanwei 发表于 2018-11-7 14:14
定义错了……
多维数组在存储空间上都是连续的,所以可以当一维字节数组操作,也就是强制转换为(unsigned  ...

好的 知道了,谢谢。但是怎么放在eeprom里呢。主函数要调用他,有时还要修改他的值

使用特权

评论回复
地板
mohanwei| | 2018-11-7 14:32 | 只看该作者
yzcook 发表于 2018-11-7 14:18
好的 知道了,谢谢。但是怎么放在eeprom里呢。主函数要调用他,有时还要修改他的值 ...

STC单片机datasheet里有例程

使用特权

评论回复
5
mcu5i51| | 2018-11-7 14:34 | 只看该作者
按照函数声明给出参数调用E2P写入函数就好了,如果你没有这个函数就根据硬件自己写;

使用特权

评论回复
6
mcu5i51| | 2018-11-7 14:35 | 只看该作者
另外你的数组空间有2K了,RAM小的芯片不能直接定义;

使用特权

评论回复
7
ningling_21| | 2018-11-7 15:47 | 只看该作者
这个芯片的RAM 够数组用不?

使用特权

评论回复
8
yzcook|  楼主 | 2018-11-7 16:21 | 只看该作者
ningling_21 发表于 2018-11-7 15:47
这个芯片的RAM 够数组用不?

不够 所以要放在e2p

使用特权

评论回复
9
ningling_21| | 2018-11-7 16:23 | 只看该作者
yzcook 发表于 2018-11-7 16:21
不够 所以要放在e2p

e2p 的空间够吗

使用特权

评论回复
10
yzcook|  楼主 | 2018-11-7 16:35 | 只看该作者

够的

使用特权

评论回复
11
冷画| | 2018-11-7 16:47 | 只看该作者
STC的Datasheet看的脑瓜疼

使用特权

评论回复
评论
冷画 2018-11-8 08:42 回复TA
@小小电子爱好者 :是真的脑瓜疼 没有打广告 
小小电子爱好者 2018-11-8 08:14 回复TA
所以要用 芯圣 
12
yzcook|  楼主 | 2018-11-7 16:51 | 只看该作者
冷画 发表于 2018-11-7 16:47
STC的Datasheet看的脑瓜疼

。。。我只是想简单的存个数组到内部e2p  但是之前完全没用过这个,。,,

使用特权

评论回复
13
冷画| | 2018-11-7 16:53 | 只看该作者
yzcook 发表于 2018-11-7 16:51
。。。我只是想简单的存个数组到内部e2p  但是之前完全没用过这个,。,, ...

官方有例程的  联系原厂

使用特权

评论回复
14
diy1997| | 2018-11-7 18:32 | 只看该作者
STC的e2prom好像是flash,必须先擦再写,而且,是按区擦除的......

要修改某个地址的数据,只能先把这个地址所在的区读出来暂存,

再把这个区擦除,然后把刚才读出的数据修改后再写入。

使用特权

评论回复
15
小小电子爱好者| | 2018-11-8 08:21 | 只看该作者
这个芯片 32KFlash程序空间  29K内部eeprom(data flash)随便用  外部的话就直接字节写 字节读就好了

使用特权

评论回复
16
gx_huang| | 2018-11-8 08:25 | 只看该作者
RAM不够的话,操作EEPROM很困难的,中间数值如何保存?RAM起码要足够一个EEPROM的容量。

使用特权

评论回复
17
一叶倾城wwq| | 2018-11-8 08:34 | 只看该作者
EEPROM不适合存储大数据,你这样用难保过几天EEPROM就坏了,毕竟质量不能保证

使用特权

评论回复
18
tianye907| | 2018-11-9 09:07 | 只看该作者
楼猪只是想知道,咋操作,你们净扯别的。单片机引脚模拟IIC与EEPROM通信即可读写数据

使用特权

评论回复
19
yueguang3048| | 2018-11-9 11:58 | 只看该作者
STC的EEPROM擦除时候是按照块擦除的

使用特权

评论回复
20
硕烁儿| | 2018-11-9 13:51 | 只看该作者
1 配置i2c引脚 2 i2c初始化 3 写i2c写程序 4 写i2c读程序 5 要写数据的时候调i2c写程序 6 读数据的时候调用读程序,你看我这样说够清楚了吗?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

28

主题

84

帖子

0

粉丝