seanwu 发表于 2021-7-2 12:23

新手请教:如何利用STC8G1K08的EEPROM减轻Flash压力?

STC8G1K08有8KB Flash和4KB EEPROM,程序build后的结果如下:
Program Size: Code=10024 RO-data=508 RW-data=180 ZI-data=220
如何利用EEPROM,让上面的代码跑起来?

autopccopy 发表于 2021-7-3 17:24

不能。

xxdcq 发表于 2021-7-5 10:59

你真是抠门抠到家了

fcccc 发表于 2021-7-5 19:45

本帖最后由 fcccc 于 2021-7-5 19:50 编辑

好像可以,要设计一个流程;
将相对独立的一块代码/函数写入EEPROM;
系统上电运行后,通过程序将EEPROM读取然后搬到内存.作为RAM_FUNCTION就可以了.


或者,你这么大的代码里面肯定有很大一部分常量数组什么的吧,可以放入EEPROM,
要用再读取到内存.

再者, 优化你的代码,缩减2KB也不是没可能.




lulipro 发表于 2021-7-7 16:17

你这是选型错误,建议换STC8G1K17

gx_huang 发表于 2021-7-7 16:26

fcccc 发表于 2021-7-5 19:45
好像可以,要设计一个流程;
将相对独立的一块代码/函数写入EEPROM;
系统上电运行后,通过程序将EEPROM读取然 ...

51没法在RAM里运行呀。
我也奇怪,厂家为何要浪费这么多FLASH空间,不增加程序空间,估计就是为了赚钱,一样的成本,低价的就限制程序区的大小。

fcccc 发表于 2021-7-7 21:03

gx_huang 发表于 2021-7-7 16:26
51没法在RAM里运行呀。
我也奇怪,厂家为何要浪费这么多FLASH空间,不增加程序空间,估计就是为了赚钱, ...

???可能你应该学习一下计算机基础知识.任何MCU都是要把指令和数据读取到内存来执行的.

linguanghua 发表于 2021-7-8 08:44

RO-data可以移到EEPROM.
但是解决不了你的这个问题。flash太小。

gx_huang 发表于 2021-7-8 09:22

fcccc 发表于 2021-7-7 21:03
???可能你应该学习一下计算机基础知识.任何MCU都是要把指令和数据读取到内存来执行的. ...

来来来,麻烦解释一下8051的MCU,没有外部总线,如何把指令和数据读取到内存来运行?我学51,用51,都30多年了,除了早期芯片外部总线,外挂的,特殊处理,单板机,可以程序区数据区都可以访问。
页: [1]
查看完整版本: 新手请教:如何利用STC8G1K08的EEPROM减轻Flash压力?