STC单片机内置EEPROM预设初始值(申精)
本帖最后由 四轴飞行器 于 2013-12-4 13:25 编辑STC单片机自带eeprom,是吧内部的data flash区域作为eeprom来实现掉电存储。有时候我们需要给eeprom设置一个初始值。但是部分单片机不能够单独烧写eeprom程序。又不能用先写个程序,给固定区域烧固定值,然后再下载有用的程序。
那么怎么办呢,没问题,只要把你的程序生成hex程序,然后用我传的软件,把所需要的预设区域的值改成你想设置的值就行,在保存。实测完美 自己顶一个 不错。我来顶一下 dzahz666 发表于 2013-12-4 13:39
不错。我来顶一下
之前纠结好长一段时间,后来才弄明白的 哈哈 {:shocked:}不明觉厉{: 不懂帮顶!! 用不着这么麻烦,keil自己就可以搞定 marshallemon 发表于 2013-12-4 15:11
用不着这么麻烦,keil自己就可以搞定
哥们,啥意思,给个教程先 怎样使用?
怎样设定EEPROM的地址? xunke 发表于 2013-12-4 16:37
怎样使用?
怎样设定EEPROM的地址?
怎么写eeprom看芯片手册,我得方法是另一个写eeprom的方法 直接把数据用code定义过去不就行了~ error_dan 发表于 2013-12-4 16:54
直接把数据用code定义过去不就行了~
CODE这样子啊soga EEPROM Editor is a simple hex editor, which can be used to
generate hex files for loading into EEPROM areas of AVRs etc.
This is a beta initial release and comes with no offical support.
Please report problems to avrisp@kanda.com.
Jason Taylor - 20th December 1999.Release 1.0 beta. ?????? Sullivan 发表于 2013-12-4 18:05
EEPROM Editor is a simple hex editor, which can be used to
generate hex files for loading into EEPR ...
thankyou 四轴飞行器 发表于 2013-12-4 16:03
哥们,啥意思,给个教程先
其实STC内部的E2P并不是真正的E2PROM,而是flash而已,说白了和你存储程序的rom是一样的,而且经研究这个所谓的E2P定义的位置为从该片的程序flash结束地址为开始,所以定义在code区域的常量表就可以做初始值,在使用KEIL的重定位功能,把常量表定义在该STC型号的E2P区域的首地址即可 marshallemon 发表于 2013-12-5 13:00
其实STC内部的E2P并不是真正的E2PROM,而是flash而已,说白了和你存储程序的rom是一样的,而且经研究这个 ...
把常量表定义在该STC型号的E2P区域的首地址即可 很酷的感觉,看看能不能搞定 好像官网上就有啊 四轴飞行器 发表于 2013-12-5 14:57
把常量表定义在该STC型号的E2P区域的首地址即可 很酷的感觉,看看能不能搞定 ...
可以的、这个我测试过 marshallemon 发表于 2013-12-5 17:12
可以的、这个我测试过
KEIL的重定位功能,把常量表定义在该STC型号的E2P区域的首地址即可, 这个不会,可有资料呢,嘿嘿 同问,求案例。谢! 支持一下感谢分享... 好东西,下载用用。 是直接修改HEX么? 楼主是不是说EEPROM的数据要放在什么地方吗?
我之前用过,总共4K的flash,后面有一部分可以用来作为EEPROM用,全部程序写完后,主程序把用作EEPROM的地方盖住了但是4K还没满,,结果总是不对,后来发现了,把EEPROM的首地址重新定义,再往后移些地址,就解决了,EEPROM的首地址可以自定义从哪里开始的。
unsigned char code*POINTER = 0x0f00; //定义开始地址。
页:
[1]