龙依然 发表于 2008-6-20 11:03:40

[原创]数据的存储的技术问题

  如果有多个可以存储数据的存储器,如256字节的内部RAM、4KB的内部扩展RAM、32KB的外扩RAM、128字节的Flash、实时时钟内114字节的电池保持RAM和外扩8KB的E2PROM,这么多的数据存储区,一定要仔细分配其用途,以便充分发挥功能和速度。

  如系统作如下分配:256字节的内部RAM读写速度最快,而且它是单片机内核所占用的,所以要减少使用,它用在对速度要求较高且频繁使用的地方,如中断内的变量等;4KB内部扩展RAM和32KB外扩RAM的地位是等同的,一般用作程序的中间变量;128字节的Flash是整片修改的,所以修改之前要把所有数据读到缓冲区,将要修改的字节改掉,再把整片擦除,然后把数据写入。虽然写比较麻烦,但是读取很方便,所以用它存放一些不经常改动而且需要掉电保持的数据,如模拟量的修正值等;实时时钟内114字节的RAM读写速度较快,而且访问方便,所以用它存放需要掉电保持的中间变量,这样可以随意读写;8KB的E2PROM受总线逻辑的限制,读写较慢,但数据区较大,用来存放功能的设定值,在程序初始化的时候把它读出并放到中间变量区,以后不对其操作,修改内部数据操作不宜在中断中进行,防止延长中断时间.
页: [1]
查看完整版本: [原创]数据的存储的技术问题