打印

EEPROM问题

[复制链接]
2268|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dfsa|  楼主 | 2013-1-9 22:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
准备做一个计算器(基于C51或者AVR都行),要能算三角,初等函数,积分,微分。
算法什么的都好说,大概在Turbo C上尝试了一遍。
但是遇到一个蛋疼的问题:C51内存太小了,尽管我用的是C516RD+,有1280的内存
只要500个的int变量数组就直接溢出了,溢出的结果就是直接冲垮别的变量。
我想到了EEPROM,但是EEPROM在读写时候的时间不去说它,据说晶振频率高了以后读写就会出错……请教一下怎么避免这个问题,因为我以前的程序都没有用过EEPROM,所以不了解,DATA SHEET看了,还是不大明白……
我可是打算把STC89C516RD+的晶振频率提高到80MHZ这个极限的。(为的就是计算快一点,功率什么的不考虑)
就算用AVR开发也会遇到同样的问题吧。
所以请教一下大家:
1:EEPROM作为数据存储应该注意什么,怎么打到高速而且不出错?
2:有没有更好的数据存储芯片(不需要掉电保存数据)?
3:能不能想办法在单片机内使用链表(Keil)?(没有malloc很不会用的说)

相关帖子

沙发
火箭球迷| | 2013-1-9 22:47 | 只看该作者
1、实际说主频过高操作失败,这是因为每个芯片都有自己的时序,你的操作时序不符合芯片要求的,当然会出错。
   IO模拟I2C,时序是可控的。
2、我推荐的AT24CXX就很可靠了。
3、链表,指针这些是实现手段,KEIL支持标准C也就支持这些。毫无疑问的事情

使用特权

评论回复
板凳
yybj| | 2013-1-9 23:10 | 只看该作者
用汇编写,1280的内存足够了。
实在不行,就用一个SDRAM,并口的,只是电路有些复杂。

使用特权

评论回复
地板
sinadz| | 2013-1-9 23:13 | 只看该作者
1. 换RAM大单片机
2. 外扩RAM,使用EEPROM 当RAM 用,效率低的可怜,强烈不推荐。

使用特权

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

本版积分规则

282

主题

2404

帖子

2

粉丝