EEPROM-muistin käyttö

Codevision-koodaaja

Kiitos avusta edelliseen viestiini vastanneille nimimerkeille asödkjfölaksjdfasdf ja keksa. Näillä pääsen eteenpäin toistaiseksi.

Mulla olisi myös toinen pulma, nimittäin mikro-ohjaimen sisäisen EEPROM-muistin käyttö. Projektissani tullaan joskus myöhemmin tarvitsemaan jonkinlaista keinoa säilyttää muuttujien arvoja sähkökatkoksen yli, ja EEPROM voisi olla ratkaisu.

Tietääkö joku, millaisilla komennoilla ja funktioilla EEPROM-muistiin viedään muuttujia ja niiden arvoja ja miten ne saadaan sieltä ulos? Kutsutaanko ne käyttöön globaalisti, vai funktiokohtaisesti?

Kiitos etukäteen.

4

1052

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Codevision-koodaaja

      ollaan siis edelleen tietysti CodevisionAVR-kääntäjäympäristössä.

    • keksa

      hmm eikös eeprom vaatinut sen, että data "poltetaan" muistiin valolla tms?

      Saako siihen vehkeeseen Flash-muistia kiinni?

      Muisti näkyy prosessorille aina jonain muistiosoitteina, johon siirretään tietoa ihan kuten muutenkin.

      intel 8051 prossussa tai olla, että sisäiseen muistiin kirjoitettiin MOV-käskyllä ja ulkoisiin MOVX-käskyllä.

      MOVX 2000H, A #siirtää rekisterin A sisällön tuohon muistiosoitteeseen.

      Ei kovin tarkasti muista 10v takaisia juttuja

      • Codevision-koodaaja

        EEPROM voidaan ymmärtääkseni ohjelmoida ja tyhjentää sähköisesti, onhan nyt kyseessä AVR-ohjeimen sisäinen EEPROM. Sen nimikin tulee sanoista "Electricly eraseable Programmable Read Only Memory."

        Yhden e:n prom, eli EPROM vaati ultraviolettia tyhjennykseen.


    • ökjaösdkjfaöklsdf

      Prosessorin user manualissa on varmaan kerrottu EEPROM:n käytöstä tai annettu linkki johonkin muuhun dokumenttiin joka selventää asiaa. Atmellin sivuilta löytyi seuraava dokumentti, (en tiedä koskeeko prosessoriasi).

      http://www.atmel.com/dyn/resources/prod_documents/doc0932.pdf

      Jos tuon linkin mukaan tekee yksinkertaiset luku ja kirjoitus rutiinit (joka käsittelee tavua), niin taitavat mennä jotenkin seuraavasti CodeVisionilla:

      --- ALKAA ---

      void eeprom_write(int osoite, char merkki);
      char eeprom_read(int osoite);

      /* Kirjoittaa merkin EEPROM muistiin haluttuun osoitteeseen */
      void eeprom_write(int osoite, char merkki)
      {
         /* Odotetaan että edellinen kirjoitus on suoritettu loppuun */
         while(EECR.1);

         /* Asetetaan osoiteen ylempi ja almepi tavu johon kirjoitetaan */
         EEARH = (osoite >> 8) & 0xff;
         EEARL = (osoite >> 0) & 0xff;

         /* Asetetaan kirjoitettava data */
         EEDR = merkki;

         /* Otetaan keskeytykset pois */
         #asm("cli");

         /* Asetetaan EEMWE (EEPROM master write enable) bitti päälle */
         EECR.2 = 1;

         /* Asetetaan EEWE (EEPROM write enable) bitti päälle */
         EECR.1 = 1;

         /* Sallitaan kesketytykset */
         #asm("sei");
      }

      /* Lukee merkin EEPROM muistista halutusta osoitteesta */
      char eeprom_read(int osoite)
      {
         char merkki;

         /* Odotetaan että edellinen kirjoitus on suoritettu loppuun */
         while(EECR.1);

         /* Asetetaan osoiteen ylempi ja almepi tavu johon kirjoitetaan */
         EEARH = (osoite >> 8) & 0xff;
         EEARL = (osoite >> 0) & 0xff;

         /* Asetetaan EERE (EEPROM read enable) bitti päälle */
         EECR.0 = 1;

         /* Luetaan merkki */
         merkki = EEDR;

         /* Palautetaan luettu merkki */
         return merkki;
      }


      --- LOPPUU ---

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Persuja ei aluevaltuustoissa näy

      Ei tunnu persuja paljon paikalliset asiat kiinnostavan, vaan ainoastaan ulkomaalaiset, joku Israel ja Trumpin fanitus.
      Maailman menoa
      58
      3723
    2. Päivän Riikka: Uudenkaupungin autotehdas hiljeni

      Näin ne 100 000 uutta pysyvää ei-tempputyötä yksityiselle sektorille tämän hallituksen ansiosta syntyy. Työntekijöille j
      Maailman menoa
      85
      3113
    3. Riikka vie Suomen kohta ykköseksi työttömyyskisassa

      Espanja: 10,5 % Suomi: 10,3 % Ruotsi: 9,3 % Kisa on tiukkaa, mutta Riikalla hyvä draivi päällä. Vasemmistolaisen päämin
      Maailman menoa
      64
      2318
    4. Mikä ihme teitä savolaisia tuossa

      p*rs*reiässä niin kiinnostelee? Että siitä pitää päntönnään huutaa.
      Tuusniemi
      14
      1530
    5. Laita tunniste josta kaivattusi tietää sun kirjoittavan täällä

      Joku yksilöity yhteinen juttu joka on sun ja kaivattusi välillä. Tuntomerkkinä esim. punainen pipopää, tonttu-ukko tai m
      Ikävä
      65
      1309
    6. Mikä tekee naisesta

      Seksikkään ja viehättävän? Entä miehestä?
      Ikävä
      87
      1169
    7. Varusmiehen kuolema

      Ei ollut vahinko, ei aiheuttanut vaaraa muille, eikä ollut rikos, mitä jää jäljelle? Oliko kyseessä oman käden kautta lä
      Kajaani
      29
      1029
    8. Kumpaan rahat, mummojen vaippoihin vai Nalle WahIroosille?

      JOS siis sinä saisit päättää?
      Maailman menoa
      1
      991
    9. Huippu, kaupunki ostaa hotellin

      Hyvä juttu meillä on oma hotelli iloitsi Pirtihirmukin. Nyt vaan rekryt päälle ja uusi henkilökunta. Tarvitaan tekijöitä
      Ähtäri
      55
      965
    10. Mitä ajattelet rakkaastasi tällähetkellä?

      Itse haluaisin jo hänen viereen..
      Ikävä
      47
      952
    Aihe