Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[Attiny2313][C] zapis danych w flash

micha_ 01 Nov 2008 22:09 1666 4
  • #1
    micha_
    Level 11  
    halo
    na roznych stonach znalazlem informacje o tym ze mozna w czasie dzialajacego programu pisac w pamieci flash
    nie ma problemu przed wystartowaniem fukcji main, nie ma problemu czytac flash ale nie moge pisac
    do initialisacji uzywam : uint8_8 pgm_data[xxx] PROGMEM ={};
    do czytania : bit_sys = &pgm_data[xxx];
    a jak zapis???
  • #2
    Dr.Vee
    VIP Meritorious for electroda.pl
    Inicjalizację masz OK, ale resztę do bani.

    O czytaniu zmiennych z pamięci programu poczytaj w dokumentacji avr-libc. W skrócie:
    Code:

    /* deklaracja */
    uint8_t pgm_data[10] PROGMEM = {1,2,3,4,5,6,7,8,9,10};
    /* odczyt */
    uint8_t bajt = pgm_read_byte(&pgm_data[5]);
    /* zapis */
    /* poczytaj w datasheecie procesora */


    Poza tym pamięć flash nie za bardzo nadaje się do częstego zapisu (tylko 1000 cykli gwarantowanych), do tego trzeba ją kasować/zapisywać całymi stronami. Prawdopodobnie wykorzystanie pamięci EEPROM będzie tutaj lepsze.

    Pozdrawiam,
    Dr.Vee
  • #3
    micha_
    Level 11  
    zapis potrzebny jest w flash poniewaz eeprom jest za maly zeby przejac tyle danych.arrays ma byc dopasowane po zaprogramowaniu uc przez terminala i nawet jezeli wytrzymuje tylko iles set czy tysiecy razy to nie problem ,poniewaz chcialbym sprobowac zapisac kazda cele osobno
  • #4
    kedzi1
    Level 18  
    Zamiast kombinować zastosuj DataFlash z interfejsem SPI. Pojemności od 1 do 32 Mbit (do 4MB). Ich ceny na dzień dzisiejszy są śmiesznie niskie.
  • #5
    micha_
    Level 11  
    nie chodzi tutaj o kombinowanie czy tez cene .soft jest gotowy ,pare minut konfiguracji i dzala wrzysko tak jak ma.oczywiscie nie ma problemu uc wyciagnac i programowac go extra no ale dlaczego sie meczyc jak tak bylo by prosciej