打印

出个单片机问题考考大家。。。。。。。。

[复制链接]
4822|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gaoyiyiyi|  楼主 | 2011-2-22 16:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
假设输出端的LED是这样变化的:红,绿,蓝,红,绿,蓝。。。。。。
现在在颜色是X的时候,关闭电源。要求打开电源后,LED的颜色是从X开始循环,不能是从其他颜色开始循环。该如何实现?
至于答案么,我这个菜鸟要是知道了,就不会出这问题来“考考”大家了。。。
不知道是该在配置里设置,还是在程序中实现。

相关帖子

沙发
nevsayno| | 2011-2-22 17:03 | 只看该作者
程序运行时把当前的LED状态记录在非易失存储器 系统重新上电后读取这个状态后继续预定的过程
但是要注意
1  非易失存储器有擦写次数的限制 所以需要计算下寿命的问题  
2  另外操作该存储器时需要耗费比较长的时间

使用特权

评论回复
板凳
ayb_ice| | 2011-2-22 17:18 | 只看该作者
这就要使用EE存储状态了

使用特权

评论回复
地板
gaoyiyiyi|  楼主 | 2011-2-22 18:39 | 只看该作者
谢谢LS两位的热心解答,但是还是有点迷糊,我举个例子啊,就以AT89C51为例。
#include<reg51.h>
void delay()
void red()
void green()
void blue()
void main()
{while(1)
{red();
delay();
blue();
delay();
green();
delay();
}
}
应该怎么改呢?是改配置,还是改程序?

使用特权

评论回复
5
ayb_ice| | 2011-2-22 19:23 | 只看该作者
开机后,程序要恢复上次记录状态,根据状态再运行

使用特权

评论回复
6
514271089| | 2011-2-22 20:53 | 只看该作者
改配置是该什么啊?当然是改程序了,而且要用外部存储器吧。

使用特权

评论回复
7
心静自然凉| | 2011-2-22 21:44 | 只看该作者
就这么给你说吧,51单片机有ROM和RAM
ROM是放程序的,不能修改
RAM是运行过程中要用到的,用来暂时存放运算数据的,掉电后数据不保存
你现在想要既能保存数据又能改变数据的"东西",eeprom就能帮你解决这个问题,至于eeprom,你可以去查阅相关资料

使用特权

评论回复
8
xuyaqi| | 2011-2-22 22:23 | 只看该作者
“状态”还可放在有电池供电的RAM里。

使用特权

评论回复
9
t.jm| | 2011-2-23 08:50 | 只看该作者
灯变化不快可加EEPROM,变化很快就得用RAM加备用电池。

使用特权

评论回复
10
米斯特红| | 2011-2-23 08:55 | 只看该作者
如果为了简单好玩,不计成本可以加一个 DS18B20 ,里面有2个字节的 EEPROM, 把灯的状态存在里边

使用特权

评论回复
11
wubowww888| | 2011-2-23 08:56 | 只看该作者
eeprom 是正确之道,RAM加备用电池是不是有点太费劲了。。。

现在的eeprom 也不用考虑外挂存储器,找集成有eeprom的MCU就好啦。。。

使用特权

评论回复
12
gaoyiyiyi|  楼主 | 2011-2-23 09:08 | 只看该作者
我去摸索下EEPROM,谢谢大家啦。

使用特权

评论回复
13
wangkangming| | 2011-2-23 09:58 | 只看该作者
IIC总线的EEPROM的设置好好学学啊,可以交流的啊!我也是新手啊,QQ:506758875

使用特权

评论回复
14
ycz9999| | 2011-2-23 10:15 | 只看该作者
10楼的想法蛮有创意的   呵呵

使用特权

评论回复
15
123jj| | 2011-2-23 10:45 | 只看该作者
呵呵!有趣,菜鸟考高手,倒下一大片。 :dizzy:

使用特权

评论回复
16
XZL| | 2011-2-23 10:51 | 只看该作者
呵呵,许多内部带EEPROM的MCU轻松实现

使用特权

评论回复
17
zq1987731| | 2011-2-23 10:55 | 只看该作者
用FRAM的状态保持器,或者直接挂个FRAM,成本比E2高,但用起来绝对方便
不嫌烦还想省钱么,也可以挂个F级电容让单片机掉电时撑上几十ms,足以让E2写上N字节状态,那么也不至于在频繁擦写下快速失效了

使用特权

评论回复
18
gaoyiyiyi|  楼主 | 2011-2-23 11:07 | 只看该作者
嘿嘿,我对照MCU的DATASHEET实现这功能了,以前还真不知道单片机内部还有这玩意,再次谢谢大家。

使用特权

评论回复
19
lwslws201| | 2011-2-23 11:13 | 只看该作者
用STC89C51RC单片机就有自带2KEEPROM了。

使用特权

评论回复
20
古道热肠| | 2011-2-23 12:31 | 只看该作者
单片机自带的EEPROM存储器,擦写寿命通常不及外置的EEPROM,铁电ROM较适合,一是写的速度快,二是寿命可以认定为无限次擦写。

使用特权

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

本版积分规则

112

主题

792

帖子

2

粉丝