Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 22 mar 2026, o 21:53


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 17 ] 
Autor Wiadomość
PostNapisane: 13 lis 2013, o 21:18 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Witajcie.
Mimo czystego przykładu wciąż nie mogę nic zapisać do EEPROM.
Przykłady są łatwe i czytelnie opisane - ale mimo to jedne działają a inne nie - czyli to nie taka prosta rzecz. Np. http://hobby.abxyz.bplaced.net/index.php?pid=8&tid=54
jest napisane, że z EEPROMA korzystamy w ten sposób
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


lub ten sposób
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

ten pierwszy przypadek mi się nie kompiluje, ale drugi jak najbardziej:
i mam zrobione w taki sposób:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


i co ciekawe pod zmienną kWh_stan jest dziesiętnie liczba 255.

Za pierwszym razem zadeklarowałem zmienną
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
, żeby zmienić jej wartość z FF na 00. Ale po takiej operacji zamiast 0 odczytuje z EEPROM dziesiętnie 128.

a jeszcze na takiej stronie http://www.if.pw.edu.pl/~agatka/psm/wyklad_02.pdf
jest zapisywanie i odczytywanie tak zrobione:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

i też nie działa.

A może działa tylko jest błąd w kodzie?

cały projekt wygląda tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lis 2013, o 21:33 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

tu może sobie poczytaj o eeprom

http://mirekk36.blogspot.com/2012/11/av ... iazek.html

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 00:01 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Dziwne Panie i Panowie, ale to niby działa.

NIe wiem co prawda dlaczego, ale jakoś działa - już tłumacze.

Po zaprogramowaniu uC robiłem reset przez odłączenie zasilania i za każdym razem program startował od 255 w górę zliczając kWh. Tak to testowałem i dlatego nigdy nie działało.

A zadziałało jak nie odłączając uC uruchomiłem mkAVR Calculator i dałem odczyt danych.
Po odczycie resetował się układ i zlicza już poprawnie od zera a nie od 255. Jak się teraz odłączy zasilanie to będzie kontynuował zliczanie ale od wartości mniejszej o 1 - tak jakby ostatni zapis odbywał się tylko na ekranie, bo teraz każdorazowy reset nie powoduje cofnięcia się licznika, ale po ponownym zaprogramowaniu znowu trzeba odpalić mkAVRCalculator i odczytać układ.

O co w tym chodzi? Nic nie programuje w tym programie tylko robię odczyt.



Ostatnio edytowano 14 lis 2013, o 01:11 przez iwi, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 01:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 paź 2013
Posty: 57
Pomógł: 0

Sprawdź to co w załączniku.
Ja wykonałem zapis i odczyt . Tak jak wcześniej Ci to opisywałem w drugim temacie.


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

_________________
Chomikujemy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 01:12 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

a może chodzi o te fusBity EESAVE=0 zmienić trzeba na EESAVE=1

zaprogramowałem układ Twoim wsadem, ale nic się nie dzieje. Nie mam wyświetlacza żeby móc odczytać - tylko terminal. A w tym hexie nie ma biblioteki więc sam wsad niewiele daje



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 01:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 paź 2013
Posty: 57
Pomógł: 0

Podłącz terminal a zobaczysz :)
Dodałem odpowiednie biblioteki;)

_________________
Chomikujemy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 01:26 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

sprawdzałem - nic - cisza - nic nie miga (PD7 dioda) nic się nie dzieje na terminalu.

ALe jeszcze jedna uwaga. NIe wiem co oznacza to resetowanie przez mkAVRCalculator, ale niestety działa po zliczeniu pierwszej kWh. czyli muszę odczekać parę godzin, żeby zresetować.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 01:28 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 paź 2013
Posty: 57
Pomógł: 0

dziwne u mnie wszystko działało no ale jak mówisz że nie działa ok

_________________
Chomikujemy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 01:29 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Muszę się przespać z tym tematem bo już sam nie wiem o co chodzi.
Czy EEMEM ma stać za kWh_stan_ee czy za kWh_stan.
Bo zmienna to ta druga, a ta pierwsza to adres.
Wydawało się to proste, ale poświęciłem już na tego EEPROMa z 20godzin i nie działa jak potrzeba.

Idę dalej z programem nauki, a jego zostawię na koniec - może coś się dowiem ciekawego w międzyczasie.

i powyrzucam te moje litanie do osobnych funkcji bo pętla while już jest praktycznie niewidoczna.

Podeślij kod źródłowy a nie hexy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 01:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 paź 2013
Posty: 57
Pomógł: 0

Sprawdź dokładnie to co dałem we wcześniejszym załączniku. Zmieniłem tylko odczyt i zapis do eeprom.
A u mnie na terminal wszystko ładnie leciało.

_________________
Chomikujemy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 14:23 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Może wgrałem źle.
W MKAVRCalculatorze zaznaczam flash - wybieram plik Twój
Zaznaczam EEPROM i tez wybieram plik.

Potem zakładka ZAPISZ z lewej strony i na dole ZAPISZ do uC.
i potem cisza. Nic się nie dzieje i nic nie wyświetla.

A wrzuć którąś diodę na PD7, PB0, PB1 lub PB2

i jeszcze czy częstotliwość masz ustawioną na 8MHz czy 1MHz.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 14:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

Jak wgrywasz za pomocą Eclipsa to musi być włączona opcja "from build" przy eepromie w propertis w zakładce Flash/EEPROM.

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 14:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 paź 2013
Posty: 57
Pomógł: 0

Napisze jeszcze raz. W twoim programie nic nie zmieniałem oprócz zapisu i odczytu eeprom.
Diody zostały tak jak masz. zaprogramowałem teraz i przykładowo PD7 sobie mruga ładnie co 1 sek. Na terminalu widać wszystko co wysyła uC.
Oczywiście taktowanie na 8Mhz

_________________
Chomikujemy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 15:03 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

kurnachatka napisał(a):
Jak wgrywasz za pomocą Eclipsa to musi być włączona opcja "from build" przy eepromie w propertis w zakładce Flash/EEPROM.

może to będzie to - zaznaczona opcja była "do not upload eeprom image" i zmieniłem jak na rysunku.
Obrazek

Mipsa napisał(a):
W twoim programie nic nie zmieniałem oprócz zapisu i odczytu eeprom.

OK - myślałem, że to jest hex z tego pierwszego Twojego linka.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 15:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 paź 2013
Posty: 57
Pomógł: 0

Coś musisz źle robić przy tym wgrywaniu.
zawsze możesz wgrać Eclipsikiem :)

_________________
Chomikujemy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 16:53 
Offline
Użytkownik

Dołączył(a): 05 lis 2013
Posty: 353
Lokalizacja: Kraków
Pomógł: 6

Wgrałem Eclipsikiem i działa Twój programik z tym, że jest o 1kWh do tyłu.
tzn po uruchomieniu pokazuje 65535kWh po 1kWh pokazuje 0 a dopiero po drugiej 1.

Ale &kurnachatka też ma rację. Po zaznaczeniu tej opcji "mój" program też działa z tym , że dałem jeszcze małego ifa
tzn
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Wiedziałem, że sprawa jest prosta, ale nie wiedziałem że aż tak.

Dzięki koledzy i koleżanki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2013, o 17:34 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 paź 2013
Posty: 57
Pomógł: 0

no to super że działa :)

_________________
Chomikujemy



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 17 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO