eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaavr-gcc - dane w flashRe: avr-gcc - dane w flash
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.task.gda.pl
    !news.wp.pl!not-for-mail
    From: Adam Dybkowski <a...@4...pl>
    Newsgroups: pl.misc.elektronika
    Subject: Re: avr-gcc - dane w flash
    Date: Fri, 07 Aug 2009 20:57:31 +0200
    Organization: Wirtualna Polska S.A. http://www.wp.pl
    Lines: 36
    Sender: a...@a...neoplus.adsl.tpnet.pl
    Message-ID: <h5htel$2ul$1@news.wp.pl>
    References: <h5hsal$adp$1@achot.icm.edu.pl>
    NNTP-Posting-Host: aemb145.neoplus.adsl.tpnet.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    X-Trace: news.wp.pl 1249671445 3029 79.191.53.145 (7 Aug 2009 18:57:25 GMT)
    X-Complaints-To: a...@w...pl
    NNTP-Posting-Date: Fri, 7 Aug 2009 18:57:25 +0000 (UTC)
    X-Organization-Notice: Organization line has been filtered
    In-Reply-To: <h5hsal$adp$1@achot.icm.edu.pl>
    User-Agent: Thunderbird 2.0.0.22 (Windows/20090605)
    X-Original-Organization: Wirtualna Polska S.A. http://www.wp.pl
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:568643
    [ ukryj 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.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: