[mirne OT] avr-gcc a umisteni promennych
Ondrej Tuma
konference na webjet.cz
Pátek Květen 17 15:34:17 CEST 2013
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Dobré odpoledne,
v deklaraci proměnné, lze říct, na jaké místo v paměti se odkazuje.
Díky tomu sem například programově četl celou programovou flash. Nevím
ale zda lze toto i u EEPROM. V každém případě mi byly oporou hlavičkové
soubory jednotlivých AVR čipů, ze kterých sem tyto deklarace okoukal.
Jak se to přesně zapisuje nemůžu najít, ale ty hlavičkové soubory
napoví.
Ondřej Tůma
V Fri, 17 May 2013 12:35:05 +0200
Jan Kasprzak <kas na fi.muni.cz> napsáno:
> Dobre odpoledne - jde nejak linkeru z GNU binutils rict,
> aby staticke promenne byly v pameti umistene v nejakem konkretnim
> poradi?
>
> Konkretni problem se tyka avr-gcc: mam "konfiguracni" promenne
> umistene do EEPROM (coz se v avr-gcc dela atributem promenne), a
> chtel bych byt schopen prislusny mikrokontroler konfigurovat jen
> prepsanim EEPROM (EEPROM ma 10x vetsi zivotnost nez programova flash
> pamet). No a jde mi o to, aby ten format dat byl nezavisly na tom,
> jak se mi zrovna tento tyden slinkuje vlastni firmware. Coz bych
> chtel resit tak, ze nejak vynutim umisteni jednotlivych promennych.
>
> Zatim jsem vypozoroval, ze objektovy modul ktery je na
> prikazove radce linkovaciho prikazu jako prvni, ma sve EEPROM
> promenne v EEPROM umistene taky jako prvni. Ale to je zrejme jen
> nahoda. Jde to nejak explicitne vynutit?
>
> Ty promenne jsou konfiguracni nastaveni k ruznym castem kodu,
> takze reseni "dat to vsechno do jedne struktury" nepovazuju za
> stastne. A reseni "cti EEPROM od adresy 0 a rucne to interpretuj" je
> zase zbytecne slozite, a programove pameti je malo.
>
> Diky za tipy.
>
> -Y.
- --
Ondřej Tůma <mcbig na zeropage.cz>
www: http://ipv6.mcbig.cz jabber: mcbig na jabber.cz twitter: mcbig_cz
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iEYEARECAAYFAlGWMdkACgkQBmNIPxOnb/J+2QCffHbcttgDwS7I+kcKRXs/LUj4
iPcAn3QMbgfZ16WL63DDhp1zUF//7hUV
=M+zz
-----END PGP SIGNATURE-----
Další informace o konferenci Linux