[AVR单片机] MEGA128的掉电恢复问题!!!!!!!!!

[复制链接]
4194|16
 楼主| yxhao881208 发表于 2012-9-6 12:48 | 显示全部楼层 |阅读模式
因为利用的是电池供电  所以必须保证单片机能正常工作,熔丝位设置的是BOD4V,但是好像不到4点几伏就不工作了,还有我在掉电之前对EEPROM的写入数据  等下次在充电满了之后没有继续顺着先前掉电的地方走,我想问的是:一、MEGA128的掉电后的恢复怎么用,有哪些需要设置的东西或者寄存器。
二、EEPROM的写入掉电后应该不会消失的啊,不知道为什么不能继续先前的程序。
在线急等!!!!!!!!!!!!!!!!!!!
NE5532 发表于 2012-9-7 08:15 | 显示全部楼层
1.不要好像,自己写测试程序来测。
2.E2写入时电源电压必须稳定,否则写入可能出错。
3.掉电以后程序不可能顺着原路继续跑,你只能想办法记录掉电前的状态,让单片机醒来以后继续做前面的事。
4.掉电保护是软硬件综合的技术,不要死盯着一边做。
 楼主| yxhao881208 发表于 2012-9-7 13:34 | 显示全部楼层
2# NE5532 哦  那要怎么软硬件联合啊?我就是记录的掉电前的状态  但是好像没有用  是不是程序有问题啊
NE5532 发表于 2012-9-7 14:31 | 显示全部楼层
先明确你要保存什么东西,这个课题太大了,你给的信息不足以分析。
 楼主| yxhao881208 发表于 2012-9-7 20:43 | 显示全部楼层
4# NE5532 它里面不是有个掉电检测BOD的嘛  我设置了这个熔丝位,然后还设置了擦写单片机的时候不改变E方的数据的熔丝位。BOD我设置的是4V的  但是程序里面当我检测到电压为4.1V的时候我就将当前的一些数据的状态存入E方里面,当然存入E方的地址我是事先设置好的,在程序初始化的时候就设置了的,  所以我认为当单片机再次上电时程序会首先取出先前我存入的E方里的数据,然后进行比对,从而达到继续从单片机掉电前的地方开始运行的目的,不知道我这么说你看明白没有。举个例子,我先往E方里面存入很多的数据,然后现在我要开始E方里把数据读出来,但是有可能在我读出E方数据的时候,单片机会断电,所以呢我就检测电压值,当电压达到先前的那个4.1V时,我的程序会自动将当前发送的E方里面的数据所在的地址也保存到E方里的一个特定的地址里,然后程序等待单片机的掉电 和电压的恢复,当电压恢复 单片机苏醒时 程序首先会检查那个特定的存储空间里的数据看是否有数据,如果有则将其取出进行比对  从而恢复到上次掉电时的地方继续往下执行.


jiushi zhege
NE5532 发表于 2012-9-7 20:46 | 显示全部楼层
BOD不是你想要的功能,BOD是直接连在单片机硬件复位电路上的,当电源电压跌落到这个程度时候,复位单片机,用来应对电源瞬时跌落的问题,你要的掉电功能,是单片机正常运行,但是检测到电源已经掉电了,利用这段时间差进行的保护,通常需要有掉电检测和储能装置,建议楼主跟身边做硬件时间长的兄弟交流一下这个问题,掉电保护是非常复杂的事情。
pa2792 发表于 2012-9-7 21:21 | 显示全部楼层
为了稳定,最好还是把BOD设为2.7V.
 楼主| yxhao881208 发表于 2012-9-7 21:31 | 显示全部楼层
6# NE5532
你的意思是BOD只是让单片机复位 而不能让单片机进入累死休眠一样的状态等待电压的恢复?
 楼主| yxhao881208 发表于 2012-9-7 21:31 | 显示全部楼层
6# NE5532
你的意思是BOD只是让单片机复位 而不能让单片机进入累死休眠一样的状态等待电压的恢复?
 楼主| yxhao881208 发表于 2012-9-7 21:31 | 显示全部楼层
6# NE5532

你的意思是BOD只是让单片机复位 而不能让单片机进入累死休眠一样的状态等待电压的恢复?
 楼主| yxhao881208 发表于 2012-9-7 21:31 | 显示全部楼层
6# NE5532

你的意思是BOD只是让单片机复位 而不能让单片机进入累死休眠一样的状态等待电压的恢复?
NE5532 发表于 2012-9-7 22:37 | 显示全部楼层
6# NE5532  
你的意思是BOD只是让单片机复位 而不能让单片机进入累死休眠一样的状态等待电压的恢复?
yxhao881208 发表于 2012-9-7 21:31


兄弟从哪里看到BOD是这个意思的呀……………………我还从来没有见过任何一个单片机有这种功能。
 楼主| yxhao881208 发表于 2012-9-8 08:32 | 显示全部楼层
12# NE5532 那我想实现这个功能应该要怎么操作呢
NE5532 发表于 2012-9-8 21:29 | 显示全部楼层
首先要有储能元件,比如超级电容、大电容,其次还要有掉电检测电路,通过中断提示单片机保存数据,建议楼主跟常年搞硬件的人讨论一下,感觉目前凭你个人可能暂时做不了这块。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

15

帖子

0

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