找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2647|回复: 16
打印 上一主题 下一主题
收起左侧

STC89C52单片机内部的8KFlash和5K EEPROM是做什么用的呀?

  [复制链接]
跳转到指定楼层
楼主
ID:417092 发表于 2021-9-7 01:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STC89C52内部的8KFlash和5K EEPROM是做什么用的呀?

EEPROM好像是保存编写的单片机程序用的。

8K Flash做什么用的呀?

能不能像24C02哪样保存变量,掉电不丢失呀!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:161164 发表于 2021-9-7 02:09 | 只看该作者
8K Flash才是保存编写的单片机程序用的!
5K EEPROM要用EEPROM函数读写,STC_ISP里有例程
Flash和EEPROM都是可掉电保存的
但只有EEPROM可以在运行期间读写
回复

使用道具 举报

板凳
ID:213173 发表于 2021-9-7 05:52 | 只看该作者
8K flash用于储存用户应用程序,4K EEPROM等同于24C02。
回复

使用道具 举报

地板
ID:584814 发表于 2021-9-7 08:34 | 只看该作者
Flash 和 EEPROM 其实都是可擦写的EEPROM相当于电脑的硬盘。
Flash 是个特殊的分区,内有用户程序,无论是否支持在线升级都是整个分区内容一次性全部擦写(可反复擦写),罕有支持部分擦写 Flash 内容的芯片;
EEPROM 相当于用户分区,这个里面可以自由存取信息,可看作内建了多个24C02。
那么这个“电脑”的启动系统在哪里 ? 答案是隐藏在芯片里除非厂家专用程序是没办法读取和修改的,同一芯片所谓的版本号不同就是指这个系统的版本不同,厂家修正芯片BUG除了硬件还有这个软件。当然,部分厂家也会适时开放一些相关的读写权限或方法,包括但不限于可以读出芯片的序列号等。
回复

使用道具 举报

5#
ID:517951 发表于 2021-9-7 08:45 | 只看该作者
8K flash 是单片机跑的代码,还有不用变动的常量比如3.1415等等的这些东西的存放空间。 4K e2prom 相当于硬盘,存放需要掉电保持,但又需要能够改写内容的存放空间。
回复

使用道具 举报

6#
ID:514901 发表于 2021-9-7 17:57 | 只看该作者
FLASH一般是保存编译后的代码用的,烧录的hex文件一般就保存于这个区域。EPPROM一般用于保存掉电不丢失的数据。
回复

使用道具 举报

7#
ID:417092 发表于 2022-6-2 23:36 | 只看该作者
wulin 发表于 2021-9-7 05:52
8K flash用于储存用户应用程序,4K EEPROM等同于24C02。

程序运行产生的数据,可以保存在EEPROM内。
单片机,启动时,可以从EEPROM读取数据,作为运行参数。。。

这样理解对吗。。。
回复

使用道具 举报

8#
ID:624769 发表于 2022-6-3 16:14 | 只看该作者
ZMRGHY 发表于 2022-6-2 23:36
程序运行产生的数据,可以保存在EEPROM内。
单片机,启动时,可以从EEPROM读取数据,作为运行参数。。。 ...

基本正确,
Eeprom 就是用来存储掉电后可以不丢失的数据的。
只不过读写方式比起变量,要来的复杂而已。
极端情况下,在对速度没有要求时,通过合适的代码,把Eeprom 做成虚拟内存也不是不可以。
回复

使用道具 举报

9#
ID:230742 发表于 2022-6-4 18:31 | 只看该作者
EEPROM用在另外的一种方式,叫做掉电储存。
比如闹钟。就可以存储在EEPROM 里。就是89C52掉电了,只要1302有备用电池,系统就不会有影响。上电后时间继续走,闹钟也还在。
主要用来保存系统设置。比如一台机器的运行有许多的参数,可以存储在EEPROM里。如果遇到停电,参数不好丢失。上电后可以继续工作。看你怎么用了。
回复

使用道具 举报

10#
ID:1032210 发表于 2022-6-4 20:49 | 只看该作者
电容 掉电存储
回复

使用道具 举报

11#
ID:965189 发表于 2022-6-4 23:25 | 只看该作者
8KFlash是存放编程生成的hex的,5K EEPROM是存储要保存的变量数据的。
回复

使用道具 举报

12#
ID:64283 发表于 2022-6-5 22:42 | 只看该作者
Flash是记录程序数据的,只能通过烧录形式写入
EEPROM,是可以通过程序进行读写,清除,通过程序形式写入,读出,实现断电记忆
回复

使用道具 举报

13#
ID:329625 发表于 2022-6-8 18:59 | 只看该作者
可以实现掉电不丢失数据
回复

使用道具 举报

14#
ID:1040470 发表于 2022-8-13 15:31 | 只看该作者
8K Flash应该是一个存储器和ROM不同,是不可更改的,当定义一个数表里面元素太多时,可以将数表存到Flash里面,Flash内存也大
回复

使用道具 举报

15#
ID:57657 发表于 2022-8-13 19:25 | 只看该作者
EEPROM数据断电不丢失,擦/写有寿命次数限制 (读无限制)。
片内EEPROM 字节读、字节写、只有扇区擦除,没有字节擦除。
24C02只有字节读/字节写,没有扇区的说法,存储原理不同。
回复

使用道具 举报

16#
ID:1044091 发表于 2022-9-20 20:45 | 只看该作者
片上5K EEPROM写之前要擦除扇区吗?官方给的例程是先擦除再写数据,对寿命有无影响?
回复

使用道具 举报

17#
ID:883242 发表于 2022-9-21 16:05 | 只看该作者
关于作用,楼主理解反了。EEPROM只能把1写成0,无法把0写成1,所以写之前必须要擦除成0xff才可以,至于是擦除扇区和擦除字节,要看具体单片机手册,没有统一的说法。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表