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