EEPROM 90S2313 - czegos nie rozumiem;)

Witam

W jaki sposob moge (ew. czy w ogole da sie) sprawdzic, czy w eepromie (wbudowany) w danej komorce jest cos wpisane?

Chcialem przed petla glowna 'DO..LOOP' odczytac ustawienia, jednak gdy w eepromie nie ma nic wpisanego, czyli sa same FF, to program sie zawiesza.

W jaki sposob moge rozwiazac tn problem?

Reply to
rozrabiak
Loading thread data ...

Użytkownik rozrabiak napisał:

Hmmm... DO..LOOP Szklana Kula jest na urlopie :) Co jest między tym DO..LOOP ???

Pozdrawiam Grzegorz Kurczyk

Reply to
Grzegorz Kurczyk

Grzegorz Kurczyk napisał(a):

W chwili obecnej nic nadzwyczajnego :P W drugiej linijce tego kodu program sie wiesza w momencie gdy nic nie jest zapisane w tej komorce..

Dim Czas As Integer ReadEEprom Czas, 0 'Odczytaj nastawe czasu z eepromu

Do 'wejscie do petli glownej While Pind.2 = 0 'jezeli zwiekszyc czas to Incr Czas 'czas + 1 Wait 1 'odczekaj 1 sekunde Wend

While Pinb.3 = 0 'zmniejszamy czas If Czas > 1 Then 'jezeli zmienna czas > 1 Decr Czas 'zmniejsz zmienna czas o jeden Wait 1 'odczekaj 1s WriteEEprom Czas, 0 'zapisz do eepromu czas End If Wend Toggle Portb.0 'zmien stan pinu 0 portu b Toggle Portb.1 'zmien stan pinu 1 portu b Wait Czas 'odczekaj CZAS sekund Loop 'powrot do petli glownej End 'end program

Reply to
rozrabiak

a nie mozesz odczytac programatorem?

Reply to
BYRRT!

Użytkownik rozrabiak napisał:

nie znam Bascoma. Czy WriteEEprom Czas, 0 oznacza zapisz wartość zmiennej Czas do komórki EEPROM-u o adresie 0 ? Jeśli tak, to spróbuj z inną komórką. Z tego co sobie przypominam te Atmelki miały jakieś problemy z zerową komórką EEPROMu.

Reply to
Grzegorz Kurczyk

Grzegorz Kurczyk napisał(a):

Dokladnie tak.

Zgadza sie, wyczytalem to w Helpie (o tej komorce zerowej). Problem wynika z tego, ze przy pierwszym uruchomieniu programu w Atmelku wszystkie komorki maja wartosc FF (255) czyli:

readeeprom czas, 0 wait czas

przy pierwszym uruchomieniu czas oczekiwania jest rowny...255 sekundom?;] Slodkie.:P

Trzeba bedzie cos wymyslec.

Reply to
rozrabiak

BYRRT! napisał(a):

Tego nie wiedzialem:) Juz obczajam :>

Reply to
rozrabiak

przeciez z poziomu bascoma mozesz zmodyfikowac EEPROM i wyslac go do proca... wpisz wartosc jaka chcesz i juz! :)

Reply to
BYRRT!

rozrabiak napisał(a):

Yhmm dopiero co zaczynam z mikrokontrolerami ... ale imho mozna przecież eeprom zaprogramować podczas programowania układu jakimiś wartościami początkowymi (chyba że nie można) :D

Willy.

Reply to
Willy

Użytkownik Willy napisał:

Można :)

Reply to
Grzegorz Kurczyk

rozrabiak snipped-for-privacy@maila.pl napisał(a):

A najlepiej to zadeklaruj zmienną w eeprom-ie :)

Dim Eczas as Eram Integer At 2 (przypisz zmienną Eczas od adresu np. 2 w eepromie) czas=eczas (przepisz do zmiennej w ram bo eeprom ma jednak skończoną ilość zapisów) .. czas=czas+1 .. eczas=czas (to zapisze zmienną czas w eepromie i nie potrzeba writeeeprom czy readeeprom)

Pzdr. Piotrek Sz.

Reply to
Piotrek Sz.

ale to przeciez nic nie zmieni w zwiazku z jego problemem...

Podczas programowania wystarczy zamiast zakladki Flash czy jakos tak wybrac EEPROM i masz na ekranie obraz EEPROMu...

Reply to
byrrt

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.