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



Teraz jest 12 gru 2024, o 01:01


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
Autor Wiadomość
PostNapisane: 24 gru 2014, o 21:30 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 cze 2014
Posty: 47
Pomógł: 0

Witam, niedawno, przerabiając bluebooka dotarłem do obsługi sprzętowego I2C. Niestety, pojawił się bardzo dziwny problem.
Otóż program zawiesza się na pętlach oczekujących w funkcjach najniższego poziomu. Np tu:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Dzieje się tak niezależnie czy wgrywam przykład z książki czy własny program, chociaż tu nie ma wielkich różnic, tylko nazwy funkcji i argumentów są inne. Wadliwy mikroklocek też raczej odpada (sprawdziłem 2 megi 32). Błąd połączenie odrzuciłem, pracuję na ATB, zworki zapięte z góry na dół(równolegle do procka).
Spotkał się ktoś kiedyś z takim czymś??



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 gru 2014, o 21:36 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

Ja sie spotkalem u siebie (przy zabawie z Qtouchem ) :) walczylem dlugooooo z problem. Okazaly sie nastepujace rzeczy :
+ Uklad docelowy wymagal specyficznego podejscia do I2C (inne niz w bibliotece Mirka)
+ Uklad docelowy nie odzywal sie dopoki nie przeprowadzilem w nim wymaganego HW reseta :) opisane to bylo w DS a ja to zignorowalem.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 gru 2014, o 10:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 kwi 2014
Posty: 438
Lokalizacja: Zambrów
Pomógł: 22

No ja mam podobny problem. Mam podłączony wyświetlacz przez ekspandera PCF8574. Ogólnie jest wszystko ok, jednak mam w urządzeniu scalak, który wprowadza pewne zakłócenia do układu. No i jak on zaczyna działać to mimo stosowania się do zasad filtracji zasilania (wszędzie kondensatory 100n i 47u przy każdym układzie) ma wpływ na powstawanie losowych błędów na I2C w ATMedze.

Walczyłem z tym różnie i jedynym sposobem jaki się okazał skuteczny to po prostu przerobienie Mirkowych funkcji podstawowych TWI_wtop, TWI_Write i TWI_Start dodając w pętlach TIMEOUTY i obługę błędów.

Całą noc urządzenia działało i dzisiaj rano wstałem i mimo błędów dalej działa i wyświetla poprawnie więc jak ktoś nie ma pomysłu jak można takie błędy na magistrali wytępić to trzeba se radzić programowo :D

Równolegle wczoraj powstał również podobny wątek topic9839.html

_________________
.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 gru 2014, o 20:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 cze 2014
Posty: 47
Pomógł: 0

Sprawdziłem porady z drugiego wątku, program kolegi matw - pokazuje błąd połączenia. Linie SDA i SCL są podłączone poprawnie, zasilanie PCFa też, dioda podłączona do nóżki przerwania miga ładnie. Po wprowadzeniu timeoutów dostaję przy odczycie po 165 z każdej komórki RAMu. Programowe TWI zwraca same zera(z PCF-a). Zmiana adresu nic nie daje, z resztą moje ATB 1.04b ma zwarty pin adresu od zegara na sztywno do vcc. Kolega z drugiego wątku rozwiązał problem właśnie przez zmianę adresu układu, jednak ja nie mam takiej możliwości(brak kwarca zegarowego, jakbym miał to bym sprawdził jeszcze na stykówce).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 21:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 cze 2014
Posty: 47
Pomógł: 0

No, po długich kombinacjach nareszcie działa :D. Okazało się, że to układ EEPROM robił jakieś problemy. Po jego wyjęciu z zestawu wszystko śmiga. Zastanawia mnie tylko co się mogło w nim popsuć na tyle, żeby rozwalał całą magistralę.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lut 2015, o 22:02 
Offline
Moderator
Avatar użytkownika

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

A jaki masz ten EEPROM ? sprawdziłeś symbol jaki na nim jest ?

_________________
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: 9 lut 2015, o 15:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 cze 2014
Posty: 47
Pomógł: 0

To jest 24c04, nie dawałem nic innego niż było domyślnie.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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