CodeVision - EEPROM



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "Przemek" <cibor_at_nospam_zsem.waw.ids.pl>
Subject: CodeVision - EEPROM
Date: Tue, 19 Nov 2002 17:08:06 +0100


Jakos nie mam pomyslu na cos tego typu, moze to proste, wiec z gory sorka ze
zawracam glowe.
Chce miec zmienna w eeprom, np: eeprom int x; ma byc ich troszke, i funkcja
ktora by te wartosci modyfikowala, taki zapis ustawien.
Gdy inicjalizacja zmiennej globalnej wyglada tak eeprom int x = 0;
to jest ok, lecz to bez sensu gdyz po to robie to w eepromie aby zostaly
wartosci po odlaczeniu zasilania.

Moglby ktos powiedziec jak poprawnie uzywac zmiennych w eeprom?

Dziekuje i pozdrawiam. Przemek Ciborowski



Poprzedni Następny
Wiadomość
Spis treści
From: zielpro_at_nospam_cavern.pl (ziel)
Subject: RE: CodeVision - EEPROM
Date: 19 Nov 2002 22:16:13 +0100


Moglby ktos powiedziec jak poprawnie uzywac zmiennych w eeprom?


On-line się nie da.
Trzeba zapisać zmienną w RAM, a nastepnie poprzez procedurę
przepisać ją do EEPROM.
pzdr
Artur

--
Archiwum grupy: http://niusy.onet.pl/pl.misc.elektronika


Poprzedni Następny
Wiadomość
Spis treści
From: Marcin E. Hamerla <mehamerla_at_nospam_pro.onet.pl>
Subject: Re: CodeVision - EEPROM
Date: Tue, 19 Nov 2002 22:24:29 +0100


ziel napisal(a):

Moglby ktos powiedziec jak poprawnie uzywac zmiennych w eeprom?


On-line się nie da.
Trzeba zapisać zmienną w RAM, a nastepnie poprzez procedurę
przepisać ją do EEPROM.

A taka deklaracja zmiennej?:

eeprom BYTE fs;

--
Pozdrowienia, Marcin E. Hamerla

"Spiżowy król spoglądał z niesmakiem na zwożonych autokarami ludzi,
z ich pracowicie przygotowanymi kukłami, trumienkami, krzyżami,
szubienicami i innymi wiecowymi gadzetami."

Poprzedni Następny
Wiadomość
Spis treści
From: zielpro_at_nospam_cavern.pl (ziel)
Subject: RE: CodeVision - EEPROM
Date: 19 Nov 2002 23:45:06 +0100


Behalf Of Marcin E. Hamerla

A taka deklaracja zmiennej?:

eeprom BYTE fs;

No i fajnie zmienna jest zadeklarowana :-)

Teraz tylko wystarczy dopisać :
Czy to jest EEPROM w procku, czy w układzie zewnętrznym?
Jaka magistrala - I2C, 1Wire, innna?
Czas potrzebny do zapisu, metoda weryfikacji zapisu.
Zakladam, że numer fizyczny komórki jest kontrolowany
przez kompilator i zarezerwuje odpowiednią ilość miejsca,
żeby zmienne nie zachodziły na siebie.

pzdr
Artur

--
Archiwum grupy: http://niusy.onet.pl/pl.misc.elektronika


Poprzedni Następny
Wiadomość
Spis treści
From: "Przemek" <cibor_at_nospam_zsem.waw.ids.pl>
Subject: Re: CodeVision - EEPROM
Date: Wed, 20 Nov 2002 17:20:01 +0100


On-line się nie da.
Trzeba zapisać zmienną w RAM, a nastepnie poprzez procedurę
przepisać ją do EEPROM.

Wielkie dzieki za pomoc.

eeprom int e_ala;
int z_ala;
void zapisz (void);
void odczytaj (void);
void main(void)
{
if (costam) zapisz();
if (costam) odczytaj();
}
// -- Funkcje --
void zapisz (void)
{
e_ala = 5;
return;
}
void odczytaj (void)
{
z_ala = e_ala;
return;
}

Przyklad programu, problem jest w tym, ze mam Warning: uninitialized EEPROM

Jak sie go pozbyc?

Pozdrawiam Przemek Ciborowski
PS. Dziekuje za wszystkie odpowiedzi.



Poprzedni Następny
Wiadomość
Spis treści
From: Marcin Stanisz <mstanisz_at_nospam_poczta.onet.pl>
Subject: Re: CodeVision - EEPROM
Date: 20 Nov 2002 16:38:05 GMT


W artykule <argcnj$d3j$1_at_nospam_news.tpi.pl> Przemek napisal(a):
Przyklad programu, problem jest w tym, ze mam Warning: uninitialized
EEPROM

Jak sie go pozbyc?

Przemku - nie używam CV (choć mam go w wersji demo AVR zainstalowanego)
i posługując się helpem i przykładami dostałem takie oto wyniki:

1. Nie trzeba przepisywać z pamięci RAM, można bezpośrednio pisać (patrz
help -> Accessing the EEPROM).

2. żeby ostrzeżenie się nie pojawiało, albo zainicjuj zmienną (nadając jej
wartość początkową), albo użyj konstrukcji:

#pragma warn-
eeprom int zmienna;
#pragma warn+

Pozdrawiam

Marcin Stanisz
--

"A lie will go round the world before the truth has got its boots on"
Terry Pratchett, "Truth"

Poprzedni Następny
Wiadomość
Spis treści
From: "Przemek" <cibor_at_nospam_zsem.waw.ids.pl>
Subject: Re: CodeVision - EEPROM
Date: Wed, 20 Nov 2002 17:53:21 +0100


dzieki:)

Z tym ze zmienne przechowuje w wartosci po to aby po wylaczeniu i ponownym
wlaczeniu urzadzenia byly one pamietane, wiec deklaracja jej z jakas
wartoscia nie ma sensu chyba... moge sie mylic oczywiscie.

Pozdrowionka Przemek.



Poprzedni Następny
Wiadomość
Spis treści
From: Marcin Stanisz <mstanisz_at_nospam_poczta.onet.pl>
Subject: Re: CodeVision - EEPROM
Date: 20 Nov 2002 16:57:55 GMT


W artykule <argem3$qh4$1_at_nospam_news.tpi.pl> Przemek napisal(a):
Z tym ze zmienne przechowuje w wartosci po to aby po wylaczeniu i ponownym
wlaczeniu urzadzenia byly one pamietane, wiec deklaracja jej z jakas
wartoscia nie ma sensu chyba... moge sie mylic oczywiscie.

Ale tu się nie mylisz :-) Dlatego druga konstrukcja i już.

Marcin Stanisz
--

"A lie will go round the world before the truth has got its boots on"
Terry Pratchett, "Truth"

Poprzedni Następny
Wiadomość
Spis treści
From: Marcin E. Hamerla <mehamerla_at_nospam_pro.onet.pl>
Subject: Re: CodeVision - EEPROM
Date: Thu, 21 Nov 2002 07:42:52 +0100


Przemek napisal(a):

Z tym ze zmienne przechowuje w wartosci po to aby po wylaczeniu i ponownym
wlaczeniu urzadzenia byly one pamietane, wiec deklaracja jej z jakas
wartoscia nie ma sensu chyba... moge sie mylic oczywiscie.

A Helpa chociaz otworzyles? Cytuje pierwsze linijki:

Accessing the AVR internal EEPROM is accomplished using global
variables, preceded by the keyword eeprom.

Example:

/* The value 1 is stored in the EEPROM during chip programming */
*********************
eeprom int alfa=1;

podkreslenie - MEH

--
Pozdrowienia, Marcin E. Hamerla

"Spiżowy król spoglądał z niesmakiem na zwożonych autokarami ludzi,
z ich pracowicie przygotowanymi kukłami, trumienkami, krzyżami,
szubienicami i innymi wiecowymi gadzetami."

Poprzedni Następny
Wiadomość
Spis treści
From: zielpro_at_nospam_cavern.pl (ziel)
Subject: RE: CodeVision - EEPROM
Date: 20 Nov 2002 20:48:05 +0100


Wielkie dzieki za pomoc.


Ciekawe czemu sobie założyłem, ze to chodzi o pamięć zewnętrzną? :=(
pzdr
Artur

--
Archiwum grupy: http://niusy.onet.pl/pl.misc.elektronika