-
Data: 2009-08-07 18:57:31
Temat: Re: avr-gcc - dane w flash
Od: Adam Dybkowski <a...@4...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Sebastian Biały pisze:
> Jaki jest oficjalnie sposob na wciskanie danych do flash z poziomu C?
> Mam tablice N elementow ktora powinna byc w ROM a nie RAM. Ba, moze
> nawet ze wskazaniem dokladnie gdzie (np. z jakis przyczyn na granicy
> 256B).
Standardowo używa się do tego dyrektyw z pliku pgmspace.h, na przykład:
static const prog_uchar crc_table[8] = {0x00, 0x5e, 0xbc, 0xe2, 0x61,
0x3f, 0xdd, 0x83};
A jeżeli potrzebujesz coś specjalnie umieścić w niestandardowym miejscu,
musisz to powiedzieć linkerowi a w kodzie źródłowym dać np:
const city_pos_t cities_tbl[] __attribute__ ((section (".text.cities"))) =
{
{50.056629181, 19.945249557, "Krakow"},
{51.776933670, 19.453847408, "Lodz"},
{52.412016392, 16.919288635, "Poznan"},
{52.217137814, 21.004979610, "Warszawa"},
{51.107861996, 17.021555901, "Wroclaw"}
};
W takim przypadku nie zapomnij linkerowi powiedzieć, co ma zrobić z
sekcją .text.cities; normalnie umieści ją obok innych sekcji .text.
Wszystkie stałe z pamięci programu trzeba odczytywać także w specjalny
sposób, patrz memcpy_P, pgm_read_byte itd. Jest to opisane w
dokumentacji do avr-libc.
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Następne wpisy z tego wątku
- 07.08.09 19:09 Sebastian Biały
- 07.08.09 19:10 Sebastian Biały
- 07.08.09 21:23 Adam Dybkowski
- 07.08.09 21:27 Sebastian Biały
- 07.08.09 22:25 Adam Dybkowski
- 08.08.09 13:16 T.M.F.
- 08.08.09 17:42 identyfikator: 20040501
- 08.08.09 23:47 Adam Dybkowski
- 09.08.09 10:40 identyfikator: 20040501
- 09.08.09 12:58 __Maciek
- 09.08.09 13:07 Zbych
- 09.08.09 13:23 identyfikator: 20040501
- 09.08.09 14:07 Zbych
- 09.08.09 14:19 identyfikator: 20040501
- 09.08.09 14:23 Zbych
Najnowsze wątki z tej grupy
- Długi kabel zasilający a na końcu procek
- Dlaczego nam nie idzie
- Co czujnik to inna temperatura
- Jak naprawić pilota
- Dlaczego TMP wer. 2.0 nie może być sprzedawany jako patyk USB lub karta PCIe 1x?!?
- produkcja w UE
- Pamięć SRAM nie działa z Z80182
- plyta indukcyjna - naprawa
- założyłem kamerę
- syrenki alarmów
- Czym obecnie programuje się EPROM-y?
- zagadka sieciowa
- W Polsce powstaje grawitacyjny magazyn energii
- Linux wciąż wspiera dyskietki. Porządki w sterownikach do FDD
- Koniec z instalacją niezatwierdzonych aplikacji na Androidzie
Najnowsze wątki
- 2025-09-09 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-09-09 Warszawa => Specjalista/tka ds. Administracji <=
- 2025-09-08 Długi kabel zasilający a na końcu procek
- 2025-09-08 Dużo niższe temperatury procesora po obudzeniu komputera... tak ma być czy jest coś nie tak?
- 2025-09-08 Warszawa => Senior Fullstack Developer <=
- 2025-09-08 Warszawa => Head of Technology <=
- 2025-09-08 Pozbawianie obywatelstwa: Rosja olewa konstytucyjny zakaz "jak RP3"?
- 2025-09-08 Wrocław => Android Developer (Java) <=
- 2025-09-08 Warszawa => Programista C <=
- 2025-09-08 Warszawa => Software .Net Developer <=
- 2025-09-08 Polacy zbiednieli
- 2025-09-08 UK: Transparent "Sprzeciwiam się ludobójstwu. Popieram Palestine Action" => 890 "terrorystów" zatrzymanych
- 2025-09-08 Dlaczego nam nie idzie
- 2025-09-08 Co czujnik to inna temperatura
- 2025-09-07 alert mnie zbudził