STM8S的eeprom 烧写问题
刚刚使用STM8S,看了很多资料也没说明白,怎么样直接把数值在初始时就写入到EEPROM?直接定义?EEPROM unsigned char?目前使用的四IAR 1.40RE:STM8S的eeprom 烧写问题
STM8S的内部EEPROM是可以像FLASH那样直接写操作的。1、先定义要写入的内容,比如你的EEPROM unsigned char EEPROM_BUFF=“内容”;
2、实现一个写子程序;eeprom_write()
3、在主程序初始化的时候开始写入。
回复:STM8S的eeprom 烧写问题
没有什么宏定义直接把数据定义在EEPRO内?回复:STM8S的eeprom 烧写问题
回复第 2 楼 于2013-12-03 14:19:54发表:STM8S的内部EEPROM是可以像FLASH那样直接写操作的。
1、先定义要写入的内容,比如你的EEPROM unsigned char EEPROM_BUFF=“内容”;
2、实现一个写子程序;eeprom_write()
3、在主程序初始化的时候开始写入。
你好,我刚刚做STM8s,有些还是没明白,按照你说的这样,在EEPROM在运行中更改后,过些时候再启动,不是又会在初始化的时候执行eeprom_write()把本来改过的值冲掉?
回复:STM8S的eeprom 烧写问题
回复第 4 楼 于2013-12-03 14:42:36发表:回复第 2 楼 于2013-12-03 14:19:54发表:
STM8S的内部EEPROM是可以像FLASH那样直接写操作的。
1、先定义要写入的内容,比如你的EEPROM unsigned char EEPROM_BUFF=“内容”;
2、实现一个写子程序;eeprom_write()
3、在主程序初始化的时候开始写入。
你好,我刚刚做STM8s,有些还是没明白,按照你说的这样,在EEPROM在运行中更改后,过些时候再启动,不是又会在初始化的时候执行eeprom_write()把本来改过的值冲掉?
你设定好初始化内容后,执行一次程序,把固定内容烧写到EEPROM的固定存储区中,默认地址:0x1000开始吧,这个程序只需要执行一次,同时写个读取函数,读出来看看是否成功写入。然后,你再进行正常编程
正常编程的时候,你就需要把原来的EERPM写程序修改了,改成你需要的功能
回复:STM8S的eeprom 烧写问题
回复第 5 楼 于2013-12-03 15:07:22发表:回复第 4 楼 于2013-12-03 14:42:36发表:
回复第 2 楼 于2013-12-03 14:19:54发表:
STM8S的内部EEPROM是可以像FLASH那样直接写操作的。
1、先定义要写入的内容,比如你的EEPROM unsigned char EEPROM_BUFF=“内容”;
2、实现一个写子程序;eeprom_write()
3、在主程序初始化的时候开始写入。
你好,我刚刚做STM8s,有些还是没明白,按照你说的这样,在EEPROM在运行中更改后,过些时候再启动,不是又会在初始化的时候执行eeprom_write()把本来改过的值冲掉?
你设定好初始化内容后,执行一次程序,把固定内容烧写到EEPROM的固定存储区中,默认地址:0x1000开始吧,这个程序只需要执行一次,同时写个读取函数,读出来看看是否成功写入。然后,你再进行正常编程
正常编程的时候,你就需要把原来的EERPM写程序修改了,改成你需要的功能
哦,如果是大批量生产的时候也要烧写两次程序?
回复:STM8S的eeprom 烧写问题
回复第 6 楼 于2013-12-03 15:15:24发表:回复第 5 楼 于2013-12-03 15:07:22发表:
回复第 4 楼 于2013-12-03 14:42:36发表:
回复第 2 楼 于2013-12-03 14:19:54发表:
STM8S的内部EEPROM是可以像FLASH那样直接写操作的。
1、先定义要写入的内容,比如你的EEPROM unsigned char EEPROM_BUFF=“内容”;
2、实现一个写子程序;eeprom_write()
3、在主程序初始化的时候开始写入。
你好,我刚刚做STM8s,有些还是没明白,按照你说的这样,在EEPROM在运行中更改后,过些时候再启动,不是又会在初始化的时候执行eeprom_write()把本来改过的值冲掉?
你设定好初始化内容后,执行一次程序,把固定内容烧写到EEPROM的固定存储区中,默认地址:0x1000开始吧,这个程序只需要执行一次,同时写个读取函数,读出来看看是否成功写入。然后,你再进行正常编程
正常编程的时候,你就需要把原来的EERPM写程序修改了,改成你需要的功能
哦,如果是大批量生产的时候也要烧写两次程序?
当然,这个也可以在一个程序中实现,需要作判断处理,初始化后,先判判EEPROM存储区有无固定存储内容,若无,则执行写操作,无有,则进行校验,和固定内容比较或写入某个值操作。
回复:STM8S的eeprom 烧写问题
回复第 7 楼 于2013-12-03 15:50:49发表:回复第 6 楼 于2013-12-03 15:15:24发表:
回复第 5 楼 于2013-12-03 15:07:22发表:
回复第 4 楼 于2013-12-03 14:42:36发表:
回复第 2 楼 于2013-12-03 14:19:54发表:
STM8S的内部EEPROM是可以像FLASH那样直接写操作的。
1、先定义要写入的内容,比如你的EEPROM unsigned char EEPROM_BUFF=“内容”;
2、实现一个写子程序;eeprom_write()
3、在主程序初始化的时候开始写入。
你好,我刚刚做STM8s,有些还是没明白,按照你说的这样,在EEPROM在运行中更改后,过些时候再启动,不是又会在初始化的时候执行eeprom_write()把本来改过的值冲掉?
你设定好初始化内容后,执行一次程序,把固定内容烧写到EEPROM的固定存储区中,默认地址:0x1000开始吧,这个程序只需要执行一次,同时写个读取函数,读出来看看是否成功写入。然后,你再进行正常编程
正常编程的时候,你就需要把原来的EERPM写程序修改了,改成你需要的功能
哦,如果是大批量生产的时候也要烧写两次程序?
当然,这个也可以在一个程序中实现,需要作判断处理,初始化后,先判判EEPROM存储区有无固定存储内容,若无,则执行写操作,无有,则进行校验,和固定内容比较或写入某个值操作。
很感谢你,以后有问题还会咨询,谢谢
RE:STM8S的eeprom 烧写问题
EEPROM 不是系统地址,因此无法初始化时即把数据写入EEPROM,只能指定一个地址,使用EEPROM的读写函数使用IIC总线把数据写进去
页:
[1]