用单片机做一个计数器

[复制链接]
4014|23
 楼主| supernan 发表于 2012-10-7 17:16 | 显示全部楼层 |阅读模式
我要做一个计数器,要求能掉电**,因为计数是时刻变化的,因此不能用24Cxx,因为它有速度限制和次数限制,不可能时刻往里写,大家有什么好的办法,请指教
栩栩如生 发表于 2012-10-7 17:16 | 显示全部楼层
掉电保护的RAM,比如ds1302,虽然是时钟,但是里面也有ram
dingy 发表于 2012-10-7 17:18 | 显示全部楼层
买一个计数器来看看就是了
几十块钱一个,我记得是用的24C02,但应该程序有特殊处理的,那东西能用好几年
houcs 发表于 2012-10-7 17:19 | 显示全部楼层
不需即时记录,只是掉电时才记录数据
加个掉电检测电路,有什么不可以的?
 楼主| supernan 发表于 2012-10-7 17:20 | 显示全部楼层
是不是这样的
用一个掉电监测电路,监测到掉电时,将计数值保存到24C02,重新上电,只需从24C02中取即可。
liuzaiy 发表于 2012-10-7 17:21 | 显示全部楼层
一般的EEPROM可以写100万次
在关机时保存数据,平均每天使用100次,可以使用1万年...
yinxiangh 发表于 2012-10-7 17:23 | 显示全部楼层
还可以采用轮询记录
一般不会把整个芯片同时写满,可以采用分期分批记录在不同的地址,这样能提高寿命好多
juventus9554 发表于 2012-10-7 17:24 | 显示全部楼层
根据你的数据量,EEPROM的空间可以分块处理,另辟一个计数用的空间,这加起来算一个数据块,整个E2PROM可划分出若干个块,每个块都有100万次擦写寿命。100万次后仍可以当作RAM来使用。
llljh 发表于 2012-10-7 17:26 | 显示全部楼层
对,如果频繁写,不如考虑用铁电,寿命理论上无限,关键操作时间短,可以减少被干扰的机会。
再或者就是像前面朋友说的,加个掉电检测电路和备用电源(或电容),掉电前和累计一定数量再写入。
dingy 发表于 2012-10-7 17:27 | 显示全部楼层
RAM+电池就不会丢了。

用铁电的也可以,还省了电池。
chenjunt 发表于 2012-10-7 17:29 | 显示全部楼层
做掉电监测,平时就在单片机的RAM,掉电就写到24C02。
选择带片内FLASH的单片机,掉电写FLASH。或者直接写在EEPROM.
juventus9554 发表于 2012-10-7 17:30 | 显示全部楼层
加一个掉电检测,4楼说得对,很多应用都是这样的
hawksabre 发表于 2012-10-7 18:13 | 显示全部楼层
计数器,就看你是外部计数,还是内部计数, 一般说来在编程的时候,都会用到内部计数的,也就是说定时的方式;如果是外部计数的话,那就需要用到单片机的IO口了,用定时器的外部IO口来进行中断处理的。
hawksabre 发表于 2012-10-7 18:16 | 显示全部楼层
在网上找了几篇技术文档 希望对你有帮助 谢谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
pengf 发表于 2012-10-7 19:37 | 显示全部楼层
各位兄弟的回答真是文不对题!

如果你的计数器,变化的变频小于50HZ(即每20MS数值变化一次,一秒钟,数值变化50次,数字以这个速度变化的话,人眼基本就看不清数值了,只看到数字在不停的跳)的话,我想EEPROM的写入速度不是问题。至少可以精确的记录到断电瞬间的前20ms甚至更少的时间 数据。这个我想应该不会影响你的应用。(即计数器的误差小于1)
zyf部长 发表于 2012-10-7 19:38 | 显示全部楼层
LS你才错了,你根本不需要知道数怎么跳,只要把掉电最后一次数寄上就行。
小小猫咪 发表于 2012-10-7 19:40 | 显示全部楼层
只有检测到掉电才将计数数据写到EEPROM,但是我比较好奇,单片机检测到掉电后,哪来的能量支持单片机完成相关动作
ousj 发表于 2012-10-7 19:40 | 显示全部楼层
一般需要监测掉电的设备,都带有比较大的电容器,作为掉电保存动作供电。
liuzaiy 发表于 2012-10-7 19:42 | 显示全部楼层
贊同 RAM+电池 ,平時吃市電,掉电時切為电池供电
 楼主| supernan 发表于 2012-10-7 19:42 | 显示全部楼层
多谢各位大侠,我缕一缕吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

730

主题

10412

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部