Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Tablica w pamięci Flash, dane Int i String

dasej 06 Lut 2018 17:07 486 8
  • #1 06 Lut 2018 17:07
    dasej
    Poziom 30  

    Witam.

    Potrzebuję w pamięci procesora umieścić tablicę.
    Zakres danych dla poz to 115 do 940 a dla każdej pozycji string sześcio znakowy.

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Powyższy kod podaje jako przykład, który obecnie wchodzi w segment danych.

    Dane muszę umieści przy pomocy PROGMEM,
    ale nie wiem jak mam się do tego zabrać i czy da się w ogóle w ten sposób rozwiązać mój problem.

    Procesor Atmega328

    0 8
  • #2 06 Lut 2018 17:49
    grko
    Poziom 33  

    Użyj rozszerzenia gcc dla AVR: __flash

    Kod: c
    Zaloguj się, aby zobaczyć kod


    PS: oczywiscie sama tablica również może rezydować w pamięci flash:

    Kod: c
    Zaloguj się, aby zobaczyć kod

    0
  • #4 06 Lut 2018 18:39
    BlueDraco
    Specjalista - Mikrokontrolery

    Użyj PROGMEM, a wcześniej poczytaj i przejrzyj przykłady użycia. Proste?
    No w każdym razie tak postępuje każdy, kto na tym forum udziela rad.
    No i skąd wziął się obowiązek używania archaicznych wersji oprogramowania?

    0
  • #6 06 Lut 2018 19:26
    grko
    Poziom 33  

    @dasej Dokładnie tak musisz zrobić używając PROGMEM. BTW: co stoi na przeszkodzie abyś użył toolchania z naszej ery? Używasz teraz WinAVR-20100110?

    0
  • Pomocny post
    #8 06 Lut 2018 19:38
    grko
    Poziom 33  

    @dasej Jest jakiś techniczny argument za tym aby uprawiać tego typu archeologię?

    0