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



Teraz jest 28 mar 2024, o 16:21


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 12 ] 
Autor Wiadomość
PostNapisane: 4 lis 2019, o 19:38 
Offline
Użytkownik

Dołączył(a): 05 gru 2017
Posty: 408
Lokalizacja: Puck
Pomógł: 7

Witam
Próbuję uruchomić pilota w kodzie z poradnika na temat RTC DS3231SN
i coś mi nie wychodzi czy moglibyście zerknąć na kod i podpowiedzieć
jak go ruszyć

Funkcja parse_ir nie chce się przełączyć i niewiem dlaczego

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: 5 lis 2019, o 09:24 
Offline
Moderator
Avatar użytkownika

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

Cytuj:
Funkcja parse_ir nie chce się przełączyć i niewiem dlaczego

a co to oznacza "nie chce się przełączyć" ?

_________________
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: 5 lis 2019, o 14:32 
Offline
Użytkownik

Dołączył(a): 05 gru 2017
Posty: 408
Lokalizacja: Puck
Pomógł: 7

Po naciśnięciu klawisza pilota powinien się wyświetlić testowy napis parse_ir
i być na ekranie lcd przez 1 sekundę
informując mnie że wszedłem do funkcji parse_ir
Lecz zamiast tego po naciśnięciu klawisza pilota tylko lekko zaczyna drgać
ekran lcd i testowy napis się nie pojawia a tym samym nie wchodzę do funkcji parse_ir
Nie wiem dlaczego

Ale skoro ekran lcd drga po naciśnięciu klawisza pilota to coś się dzieje tylko co ?
i dlaczego nie wchodzi do funkcji parse_ir



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lis 2019, o 15:02 
Offline
Użytkownik

Dołączył(a): 18 kwi 2013
Posty: 181
Lokalizacja: Kraków
Pomógł: 30

Tak na szybko, to nie kasuje się flagi przerwania INT0 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.


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


I nie bardzo rozumiem ten zapis w funkcji parse_ir():
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

czyli zawsze gdy zmienna addr jest różna od zera, funkcja parse_ir() zaraz po wywołaniu kończy działanie. To addr ma być równe 0?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lis 2019, o 17:42 
Offline
Użytkownik

Dołączył(a): 05 gru 2017
Posty: 408
Lokalizacja: Puck
Pomógł: 7

janusz17

Sprawdziłem w Mirka poradniku jeszcze raz tak dla pewności
i jest tak jak napisałem, błędu niema
zegarek chodzi wszystko się prawidłowo wyświetla na lcd

ale funkcja z parse_ir nie chce zaskoczyć mimo że eclipse nie zgłasza
błędu w kodzie



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lis 2019, o 21:39 
Offline
Moderator
Avatar użytkownika

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

janusz17 napisał(a):
GIFR = (1<<INTF0);

to była słuszna uwaga - ale ty jakby w ogóle nie reagujesz na sugestie i nie opisujesz dokładnie co robisz

_________________
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: 6 lis 2019, o 08:55 
Offline
Użytkownik

Dołączył(a): 18 kwi 2013
Posty: 181
Lokalizacja: Kraków
Pomógł: 30

A próbowałeś zakomentować te dwa pierwsze ify w funkcji parse_ir()?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lis 2019, o 09:11 
Offline
Użytkownik

Dołączył(a): 05 gru 2017
Posty: 408
Lokalizacja: Puck
Pomógł: 7

Panie Mirku
uwaga może i byłą słuszna ale ja jednak bardziej polegam na Pana zdaniu
a w poradniku Pan mówił jak należy kasować flagę
i kilka krotnie pisał jak należy ją kasować i zostało na tym że powinna być
kasowana właśnie w ten sposób GIFR |= (1<<INTF0);
No ale jesteśmy tylko ludżmi i możemy się mylić


http://www.youtube.com/watch?time_conti ... PxRkYTtvYg

Proszę przejrzeć od 1:12:24 zwrócić uwagę na moment 1:14:00



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lis 2019, o 09:31 
Offline
Moderator
Avatar użytkownika

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

miki53 napisał(a):
Panie Mirku
uwaga może i byłą słuszna ale ja jednak bardziej polegam na Pana zdaniu
a w poradniku Pan mówił jak należy kasować flagę
i kilka krotnie pisał jak należy ją kasować i zostało na tym że powinna być
kasowana właśnie w ten sposób GIFR |= (1<<INTF0);
No ale jesteśmy tylko ludżmi i możemy się mylić

No ale to pokazuje, że nie oglądałeś wszystkich moich poradników bo w innych wyjaśniałem ten mój błąd i wręcz przy wielu różnych tematach gdy trzeba było kasować flagę czy flagi to wyjaśniałem dlaczego nie można stosować tego operatora dwuczłonowego |=

------------------------ [ Dodano po: 1 minucie ]

miki53 napisał(a):
Proszę przejrzeć od 1:12:24 zwrócić uwagę na moment 1:14:00

więc ja nie muszę przeglądać - to raczej tobie polecam sukcesywnie oglądać inne kolejne poradniki - nawet jeśli czasem dotyczą tematów których akurat nie realizujesz - ale ja zawsze sporo w nich mówię na temat programowania w C i sporo się można nauczyć wtedy nawet na zapas że tak powiem.

_________________
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: 6 lis 2019, o 09:41 
Offline
Użytkownik

Dołączył(a): 05 gru 2017
Posty: 408
Lokalizacja: Puck
Pomógł: 7

janusz17

Próbowałem za komentować te ify w parse_ir
bez rezultatu
próbowałem za komentować flagi w main.c mimo że zegar dalej się wyświetlał
to obsługa pilota dalej nie działa
wstawiałem rejestrację parse_ir do flagi w main.c bo myślałem że coś
zakłóca rejestrację i też bez rezultatu
Nie wiem dlaczego mi ta funkcje parse_ir nie wchodzi
coś jednak się dzieje gdy nacisnę klawisz pilota to tylko lekko drga
ekran lcd i nic więcej

------------------------ [ Dodano po: 9 minutach ]

Panie Mirku
Pana poradniki cenię sobie bardzo i zawsze kiedy mam jakiś problem
szukam rozwiązania właśnie w nich

ale w tym przypadku nie mam zielonego pojęcia dlaczego nie chce
działać mi obsługa podczerwieni
Gdyby miał pan troszkę czasu i mógł coś doradzić ?
Bo nie wiem czy ktoś o prucz Pana może rozwiązać ten problem



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lis 2019, o 11:59 
Offline
Użytkownik

Dołączył(a): 05 gru 2017
Posty: 408
Lokalizacja: Puck
Pomógł: 7

Zastosowałem w tym projekcie biblioteką do podczerwieni
z YB od projektu zegara, czy ona mogła by nie współgrać
z całością kodu z poradnika DS3231SN ?

Ale biblioteka działa niezależnie i to nie powinno mieć wpływu
ale sam już nie wiem



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lis 2019, o 19:39 
Offline
Użytkownik

Dołączył(a): 05 gru 2017
Posty: 408
Lokalizacja: Puck
Pomógł: 7

Problem rozwiązany miałem dwa głupie błędy
jeden polegał na tym że miałem ustawiony port PD6
jako wyjście dla diody testowej i ten fragment kodu nie za komentowałem
A PD6 jest ustawiony jako wejście dla czujnika podczerwieni

Drugi polegał na tym że zegar fajnie działał ale na fladze bez obsługi przerwania
które było za komentowane, ja nie zwróciłem na to uwagi bo wszystko działało
tylko nie podczerwień

Po poprawkach podczerwień ruszyła

Dziękuję wszystkim za poświęcony mi czas i chęci pomocy



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 7 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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO