logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Rozwiązano] [BASCOM] Jak zapisać zmienną long do pamięci 24Cxx w Bascom?

ziguś 27 Kwi 2016 00:26 1203 1
REKLAMA
  • #1 15633088
    ziguś
    Poziom 23  
    Witam,
    Proszę o podpowiedź jak zapisać zmienną typu long, konkretnie wartość np. 1.357936 do komórek pamięci 24Cxx. Chodzi o zapis w Bascomie.

    Moderowany przez tmf:

    Poprawiłem temat, aby było wiadomo o co chodzi.

  • REKLAMA
  • #2 15633703
    marky1
    Poziom 17  
    Witam,


    Ważna uwaga: typ long jest całkowity, nie ma części ułamkowej, trzeba użyć single lub double.

    Mała wskazówka z helpów (polski ubogi pełny po angielsku w programie)

    Pamięć ERAM.
    Większość procesorów serii AVR posiada wbudowaną pamięć EEPROM. Pamięć ta może przechowywać dane nawet po wyłączeniu zasilania. Jak podaje producent nawet do 10 lat. Pamięć tą w języku BASCOM AVR oznaczono skrótem ERAM.
    Pamięć ERAM może być używana jak normalna pamięć, w której można umieszczać dane lub zmienne. Jednak należy uważać by nie stosować zmiennych w ERAM, do których często zapisywane będą dane - np. zmienna sterująca pętli. Dzieje się tak dlatego, iż nominalnie pamięć EEPROM ma ograniczona możliwość przeprogramowywania. Producent gwarantuje tylko 100 tyś. operacji zapisu.
    Łatwo więc w tym przypadku o przekroczenie tej liczby w dość krótkim czasie.
    Dlatego nie należy pochopnie używać tej pamięci, i w żadnym wypadku nie w instrukcjach
    pętli!

    Użycie jak w helpie angielskim:

    Dim b as byte, bx as ERAM byte (tu można zmienić typ zmiennej z byte np na long, Single lub Double wedle zastosowań zmiennej)

    B= 1

    Bx=b ' zapis do pamięci EEPROM

    B=bx ' odczyt z pamięci EEPROM

    Nie ma co często bezpośrednio zapisywać do eeprom, lepiej operować na zwykłej zmiennej i raz na jakiś czas aktualizować wartość w EEPROM
REKLAMA