打印

单片机为什么不让程序写Flash,用flash取代eeprom

[复制链接]
9401|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
doliphin|  楼主 | 2012-5-11 12:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
lyjian| | 2012-5-11 12:42 | 只看该作者
自己去了解一下FLASH和EEPROM的特性就知道为什么了。
另外,你说的这种应用N年前就有了。

使用特权

评论回复
板凳
delin17| | 2012-5-11 12:46 | 只看该作者
很多单片机,程序的Flash也可以在程序中读写

使用特权

评论回复
地板
ningling_21| | 2012-5-11 16:37 | 只看该作者
STC的和C8051FXXX的都可以用FLASH当EEPROM来用...

使用特权

评论回复
5
lyjian| | 2012-5-11 17:21 | 只看该作者
STC的和C8051FXXX的都可以用FLASH当EEPROM来用...
ningling_21 发表于 2012-5-11 16:37

FLASH做IAP来存数据和当EEPROM来用可是两回事

使用特权

评论回复
6
coody| | 2012-5-11 17:46 | 只看该作者
什么叫EEPROM? EEPROM的定义是什么?

EEPROM (Electrically Erasable Programmable Read-Only Memory),电可擦可编程只读存储器--一种掉电后数据不丢失的存储芯片。 EEPROM 可以在电脑上或专用设备上擦除已有信息,重新编程。一般用在即插即用。

我觉得,FLASH也是电可擦写的,也属于EEPROM,只不过分得更细的一个分支而已。。。。

使用特权

评论回复
评分
参与人数 1威望 +6 收起 理由
McuPlayer + 6
7
lifuhua666666| | 2012-5-11 17:57 | 只看该作者
flash就是EEPROM

使用特权

评论回复
8
amwrdfe| | 2012-5-11 18:16 | 只看该作者
差不多,不过flash写之前得扇区或者整片擦除。

使用特权

评论回复
9
lyjian| | 2012-5-11 18:39 | 只看该作者
差不多,不过flash写之前得扇区或者整片擦除。
amwrdfe 发表于 2012-5-11 18:16

这就是天壤之别了。
EEPROM可以随便修改一个数据,FLASH可就没那么简单了:得要先把整个扇区的数据保存到RAM中(你的MCU得保证有比一个扇区大的RAM),擦除整个扇区,再把原先保存在RAM中的数据和需要修改的数据写回这个扇区。

使用特权

评论回复
10
autopccopy| | 2012-5-11 18:56 | 只看该作者
FLASH 是EEPROM的一种,需扇区擦除,成本低,寿命也低。一般EEPROM可以达到100W次刷写,FLASH只有10W次。另外有一种铁电的EEPROM,基本无限次刷写的,例如RAMTRON 的FM24C02系列,可替代普通24C02。

单片机用FLASH当然是工艺和成本的考虑了。:)

使用特权

评论回复
评分
参与人数 1威望 +6 收起 理由
McuPlayer + 6
11
icecut| | 2012-5-11 23:46 | 只看该作者
还是成本...单片机就那几个字节是搞不定块擦写的.

使用特权

评论回复
12
meihongpu| | 2012-5-12 07:50 | 只看该作者
经典

使用特权

评论回复
13
西门看雪| | 2012-5-12 10:59 | 只看该作者
还是成本...单片机就那几个字节是搞不定块擦写的.
icecut 发表于 2012-5-11 23:46


谁说搞不定??只不过是时间慢了一些,系统复杂了一点点而已。

把需要修改的块①整个copy到一个随机的空闲块②中,然后擦除块①,把需要更新的数据写入块①,把不需要更新的数据从块②中copy到块①中来。

使用特权

评论回复
14
dirtwillfly| | 2012-5-12 11:38 | 只看该作者
大家说的很明白了

使用特权

评论回复
15
autopccopy| | 2012-5-12 15:49 | 只看该作者
本帖最后由 autopccopy 于 2012-5-12 16:35 编辑

拆了片MICROSHIP的I2C的经典EEPROM: 24LC16B----






它的晶圆(DIE)真的很小,所以成本也低,价格不到一元了。 :)

BTW:发个当时测试EEPROM寿命的链接:新手,学前辈破坏性试验IIC串行EEPROM:AT24C02的读写寿http://www.zmdz.com/bbs/forum_read.asp?id=71519&page=1&property=0&ClassID=0



(298)

使用特权

评论回复
16
mcupzf| | 2012-5-13 00:52 | 只看该作者
我这里有赛元的MCU,8051核,10BIT A/D,内置EEPROM,2PWM,和9454硬件兼容。QQ 545671686

使用特权

评论回复
17
icecut| | 2012-5-13 19:21 | 只看该作者
谁说搞不定??只不过是时间慢了一些,系统复杂了一点点而已。

把需要修改的块①整个copy到一个随机的空闲块②中,然后擦除块①,把需要更新的数据写入块①,把不需要更新的数据从块②中copy到块①中来。 ...
西门看雪 发表于 2012-5-12 10:59

你在256byte上搞个块擦写试试.你以为一个快16字节啊

使用特权

评论回复
18
riddlecn| | 2012-5-14 14:37 | 只看该作者
冒似很高深,看不太懂:dizzy:

使用特权

评论回复
19
doliphin|  楼主 | 2012-6-29 20:43 | 只看该作者
学习了,3Q

使用特权

评论回复
20
qingjunfa01| | 2012-6-30 09:18 | 只看该作者
主要还是寿命问题。

使用特权

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

本版积分规则

个人签名:路漫漫其修远兮,吾将上下而求索

0

主题

195

帖子

2

粉丝