lwss08 发表于 2007-5-24 14:52:28

GCC(WINAVR)里定义的EEPROM变量是如何绝对定位的?哪里有这方面的介绍?

GCC(WINAVR)里定义的EEPROM变量是如何绝对定位的?哪里有这方面的介绍?

gugou 发表于 2007-5-24 16:12:49

我也很想知道,用绝对地址定义的时候,eeprom里面的是一些乱数,需要初始化,但是不用绝对地址,用变量定义的时候,一开始里面就会被初始化了,都是0.

比如:

#definea0x01;

#defineb0x02;

这样定义不知道对不对.

Elex 发表于 2007-5-24 17:51:18

#definea( unsigned char *)0x01;

#defineb( unsigned char *)0x02;

hualang0929 发表于 2007-5-24 18:41:40

编译连接时加-WL 参数, 指定地址



具体我自己也没用过,等待高手~~~

lwss08 发表于 2007-5-25 09:50:22

用#define 能将变量定义到EEPROM里面吗?

cjf0930 发表于 2007-9-11 19:41:19

static unsigned char epvar __attribute_((section(".eeprom"))) = {1,4,5};

或者

#include<avr/eeprom.h>

unsigned char epvar[] EEMEM ={"dfdkhd"};

ssyniuej 发表于 2007-9-11 21:54:22

自己用自己的函数,或者用自带的函数,但在使用的时候直接传递地址就行了。

ndust 发表于 2008-12-31 01:05:45

jh

huang_zl 发表于 2010-8-21 11:53:57

#definea( unsigned char *)0x01;
#defineb( unsigned char *)0x02;

引用展开,如:
a = x;
b = y;
展开后:
(unsigned char *)0x01 = x;
(unsigned char *)0x02 = y;
相当于给0x01和0x02地址附值,指向x和y。

wsygb 发表于 2010-11-16 08:47:34

记下来楼的。

xuejianhua1986 发表于 2010-11-16 11:00:48

mark

Kidult 发表于 2013-3-25 16:03:25

cjf0930 发表于 2007-9-11 19:41 static/image/common/back.gif
**** 作者被禁止或删除 内容自动屏蔽 ****

这个挺好,嘿嘿~
页: [1]
查看完整版本: GCC(WINAVR)里定义的EEPROM变量是如何绝对定位的?哪里有这方面的介绍?