ATNEL tech-forum https://forum.atnel.pl/ |
|
Drgania styków w przerwaniach https://forum.atnel.pl/topic22437.html |
Strona 1 z 1 |
Autor: | mateusz186 [ 23 lip 2019, o 21:30 ] |
Tytuł: | Drgania styków w przerwaniach |
Witam mam problem: język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Na początku program ma pokazywać na wyświetlaczu 7 segmentowym x4 "0000" po naciśnięciu przycisku nr 1 (przerwanie int0) wartość ma wzrastać o jeden tz."0001" jeżeli wciśniemy przycisk nr 2 (przerwanie int 1) ma odejmować o jeden. Program działa w przedziałach od 0 do 9999. Do tych przycisków chciałem zrobić "wygaszanie" drgań styków podobnie jak jest to wytłumaczone w tym temacie : forum.atnel.pl/topic6956.html niestety nieskutecznie. Czy wie ktoś co mam zrobione nieprawidłowo oraz w jaki sposób zrobić tak żeby działało ? |
Autor: | SylwekK [ 24 lip 2019, o 05:59 ] |
Tytuł: | Re: Drgania styków w przerwaniach |
Po wciśnięciu przycisku przerwanie się uaktywni, ale w jego obsłudze ustawiasz tylko flagę, która będzie widoczna w pętli głównej i to tam dalej robisz kontrolę przycisku z filtrem debounce. Jeśli przycisk okaże się zatwierdzony wykonujesz co tam miałeś wykonać, a wcześniej (lub po tym fakcie - w zależności od potrzeb) kasujesz flagę, która przyszła z przerwania. |
Autor: | mateusz186 [ 24 lip 2019, o 16:52 ] |
Tytuł: | Re: Drgania styków w przerwaniach |
Wymyśliłem coś takiego działa ale nwm dlaczego na początku pokazuje mi się wartość 1 i automatycznie przeskakuje na zero zamiast 0 na początku |
Autor: | SylwekK [ 24 lip 2019, o 17:10 ] |
Tytuł: | Re: Drgania styków w przerwaniach |
Bezsensowne są te warunki w zewnętrznych przerwaniach. Tam tylko flagę ustawiaj. Poza tym odliczenie do 40 w pętli głównej bez żadnego opóźnienia to tak jak by od razu było tam 40 Proponuję zaopatrzyć się w BB na początek i liznąć postaw. Aha, czy naprawdę przyciski muszą być z przerwań obsługiwane. Ja nie twierdzę, że czasem jest taka potrzeba (np. wybudzenie procka), ale stosowanie ich ot tak, bo są to proszenie się o problemy, zwłaszcza początkujący. Trzeba wiedzieć, że to strasznie czułe wejścia i nawet ich konfiguracja w złej kolejności może mieć wpływ na spodziewane działanie (o czym się chyba właśnie przekonałeś). |
Autor: | mateusz186 [ 24 lip 2019, o 17:27 ] |
Tytuł: | Re: Drgania styków w przerwaniach |
Która lekcja w książce jest o przerwaniach zewnętrznych i flagach bo właśnie zakończyłem przerwania wewnętrzne |
Autor: | mirekk36 [ 24 lip 2019, o 17:30 ] |
Tytuł: | Re: Drgania styków w przerwaniach |
mateusz186 napisał(a): Która lekcja w książce jest o przerwaniach zewnętrznych i flagach bo właśnie zakończyłem przerwania wewnętrzne Zajrzyj chociażby do przykładu o RTC gdzie pokazuję ogólnie mechanizm flagi A przy okazji ustaw sobie na forum (w ustawieniach swojego profilu ikonkę - że masz już BB) |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |