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



Teraz jest 28 mar 2024, o 23:37


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 25 lis 2018, o 23:55 
Offline
Użytkownik

Dołączył(a): 07 gru 2013
Posty: 90
Pomógł: 6

Witam, jak w temacie nie mogę uruchomić przerwania na pinach PCINT ( PCINT3,PCINT4,PCINT5 - tylko tych potrzebuję ). poniżej trochę kodu - nie mam już pomysłu co może być nie tak. sei() - na pewno jest przed pętlą while, w up włączona jest dodatkowo obsługa kontrolera lcd ( zwykły lcd ciekłokrystaliczny ).

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


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

Niestety mimo zmian stanów na tych trzech pinach na żadnym program nie "wskakuje" do przerwania.

Przepraszam za edytowanie.
Próbowałem na szybko na innej płytce z tym samym up, lecz efekt ten sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 lis 2018, o 08:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

A skąd wiesz, że nie wskakuje?
Zmienna aaa jest z przedrostkiem volatile?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 lis 2018, o 08:45 
Offline
Użytkownik

Dołączył(a): 07 gru 2013
Posty: 90
Pomógł: 6

Dlatego że zmienna "aaa" nie zmienia stanu, próbowałem zmieniać w przerwaniu stan innego pinu ( led-a ) i też bez skutku. Za to znalazłem notę AVR529 opisującą różnice pomiędzy Atmega169P a Atmega169PA. Wieczorem powalczę więcej z tym avr-em.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 lis 2018, o 09:42 
Online
Użytkownik
Avatar użytkownika

Dołączył(a): 15 lut 2017
Posty: 369
Lokalizacja: Gliwice
Pomógł: 34

jony15 napisał(a):
Witam, jak w temacie nie mogę uruchomić przerwania na pinach PCINT ( PCINT3,PCINT4,PCINT5 - tylko tych potrzebuję ). poniżej trochę kodu - nie mam już pomysłu co może być nie tak.
po main:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.




Wg mnie zabrakło jeszcze obsłużenia rejestru PCICR
"• Bit 0 – PCIE0: Pin Change Interrupt Enable 0
When the PCIE0 bit is set (one) and the I-bit in the Status Register (SREG) is set (one), pin change interrupt 0 is
enabled. Any change on any enabled PCINT[7:0] pin will cause an interrupt. The corresponding interrupt of Pin
Change Interrupt Request is executed from the PCI0 Interrupt Vector. PCINT[7:0] pins are enabled individually
by the PCMSK0 Register".

Inaczej pisząc:
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: 26 lis 2018, o 15:42 
Offline
Użytkownik

Dołączył(a): 07 gru 2013
Posty: 90
Pomógł: 6

Udało się, działa.
Kolego "Zealota" ten up nie posiada rejestru PCICR.

Przyczyna - jak się okazało to nie up Atmega169 a Atmega169PA, do tej pory myślałem że litery na końcu up PA ,A to mało znaczące jak w Atmega8 i Atmega8A; a w przypadku Atmega169PA różnią się rozmieszczenie bitów w rejestrze EIMSK i EIFR odpowiedzialnym za przerwania na pinach PCINT. Opisuje to pdf AVR529 http://ww1.microchip.com/downloads/en/AppNotes/doc8295.pdf

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


Człowiek całe życie się uczy.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

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