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



Teraz jest 30 mar 2026, o 12:44


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 5 lip 2014, o 00:36 
Offline
Nowy

Dołączył(a): 07 kwi 2014
Posty: 24
Pomógł: 0

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


Witam,
Procesor, który programuję to ATMega8. Na tym forum znalazłem funkcje do zapisywania struktury do EEPROMu napisane przez użytkownika Sunriver i o ile uważam, że działają one dobrze to mam problem z zapisaniem ID czujnika do pamięci EEPROM. Wszystkie inne dane struktury zapisują się poprawnie, tylko właśnie char term1 jest pusty. Próbowałem różnych sposobów przez 2 dni i skończyły mi się pomysły. Dodam jeszcze, że jeśli wypełnię tablicę term[0] liczbami i literami to bez problemu da się zapisać to do pamięci EEPROM. Problem tylko jest wtedy gdy w tej tablicy znajduje się ID czujnika.
Proszę o pomoc w rozwiązaniu problemu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lip 2014, o 09:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 paź 2012
Posty: 119
Pomógł: 3

Hmm jakoś dziwnie mi się patrzy na ten kod, jakby w niektórych miejscach brakowało przecinków :P Ale może tylko mi się wydaje.

Jeśli korzystasz z bibliotek 1wire dołączonych do BlueBook'a to tam masz tablice, która przechowuje ID czujników dostępnych na linii.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Wystarczy przekopiować zawartość tablicy odpowiadającej danemu czujnikowi bajt po bajcie. Przynajmniej ja to kiedyś tak rozwiązałem i z powodzeniem działało, chociaż najpierw kopiowałem te ID do struktury ram, a dopiero cała strukturę ram zapisywałem do eeprom.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lip 2014, o 11:14 
Offline
Nowy

Dołączył(a): 07 kwi 2014
Posty: 24
Pomógł: 0

To jest biblioteka, której używam. Dodam, że mam dwa czujniki działające w trybie parasite. Tak sobie myślę, że może w tablicy term[] wcale nie znajdują się identyfikatory, chociaż wtedy nie powinno działać odczytywanie temperatury.

xpower napisał(a):
najpierw kopiowałem te ID do struktury ram, a dopiero cała strukturę ram zapisywałem do eeprom.

No i ja też tak robię (co widać w kodzie), tylko korzystam z innej biblioteki i nie mogę sobie poradzić.

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: 6 lip 2014, o 00:31 
Offline
Nowy

Dołączył(a): 07 kwi 2014
Posty: 24
Pomógł: 0

Zrobiłem na bibliotece Mirka i jest to samo. Tak jakby tablica struktura.term1 była pusta. Zmieniłem char term1 na uint8_t term1 w strzukturze i też nie działa. Wydaje mi się, że jednak błąd może być w funkcji zapisującej i odczytującej. Proszę o pomoc, jeśli potrzebujecie dodatkowych informacji to proszę pytać.



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: 4 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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