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



Teraz jest 25 lut 2025, o 16:36


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 5 paź 2013, o 21:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 24 gru 2012
Posty: 146
Lokalizacja: Racibórz
Zbananowany użytkownik

Pomógł: 0

Mam problem z przerwaniami ( dopiero się uczę języka C dla AVR). Chciałem wykorzystać przerwania w programie ale coś mi nie działały. Zrobiłem więc taki mały programik dla próby - i tez nie działa. Co robię źle ?

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


Wejścia INT0 i INT1 mam podłączone do przycisków. Powiny się pojawić napisy w terminalu a się nie pojawiają - oczywiście za wyjątkiem pierwszego



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 paź 2013, o 21:30 
Offline
Moderator
Avatar użytkownika

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

no przykład z książki wysyłania przez uart bazuje na tym że wysyła dane z użyciem przerwań a ty robisz to czego się nie powinno robić czyli wysyłasz taką procedurą dane w przerwaniu ... ale nie mogą być wysłane no bo przerwania są wyłączone w obsłudze przerwań i koło się zamyka

skorzystaj z flag i dane wysyłaj z pętli głównej

_________________
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 paź 2013, o 21:51 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 24 gru 2012
Posty: 146
Lokalizacja: Racibórz
Zbananowany użytkownik

Pomógł: 0

No tak - to mogłem długo szukać :evil: . Ale poza tym samo ustawienie przerwań mam prawidłowe? Wysyłanie tekstu do terminala to była taka "pomocnicza" opcja dla sprawdzenia czy mam prawidłowo ustawione przerwania. W konkretnym programie przewiania obsługują co innego. I też mam gdzieś błąd - ale o ile przerwania są prawidłowo ustawione to go znajdę bez problemu - nie byłem pewien przerwań bo na programie próbnym z wiadomych przyczyn nie działały.

------------------------ [ Dodano po: 37 minutach ]

No i teraz pięknie działa. Znalazłem błąd w programie - nieszczęsne volatile - zapomniałem o dodaniu przed zmienną używaną w przerwaniu i programie głównym. Zmyliło mnie niedziałanie kontrolnego tekstu w terminalu.



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

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