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



Teraz jest 5 sty 2025, o 00:24


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 15 maja 2015, o 18:47 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 09 maja 2015
Posty: 2
Pomógł: 0

Uczę się na ATB rev:1.04 .

Mam pytanie odnośnie migającej diody a raczej czym spowodowane jest jej miganie jeśli wcisnę i przytrzymam przycisk KEY1. W Bluebooku jest napisane, że drgania styków występują podczas wciskania klawisza. Czyżby występowały również kiedy przycisk jest już wciśnięty?

Jeśli KEY1 tylko nacisnę i puszczę to dioda świeci się tak jak powinna i zgaśnie po ponownym wciśnięciu.

Jak napisać program aby dioda nie migała podczas trzymania wciśniętego przycisku?






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: 15 maja 2015, o 19:16 
Offline
Użytkownik

Dołączył(a): 08 mar 2014
Posty: 397
Lokalizacja: Głogów
Pomógł: 11

To zjawisko nie ma nic wspólnego z drganiami styków.
Spróbuj na spokojnie przeanalizować krok po kroku co program robi, a odpowiedz sama się nasunie.
Jeśli wciśnięty przycisk zmienia stan(np włącza); po 200ms znów sprawdza stan klawisza, znów jest wciśnięty więc znów zmienia stan na przeciwny(wyłącza) po następnych 200ms znów sprawdza, a że dalej wciśnięty to znów zmienia stan(włącza) i tak na okrągło 5 razy na sekundę sprawdza że wciśnięty i zmienia stan na przeciwny.Tak więc będzie dioda będzie zmieniać stan na przeciwny(migać) 5 razy na sekundę.

Aby to rozwiązać to tak na szybko należy np. sprawdzić czy klawisz wciśnięty; jeśli tak to poczekać np 20ms(czas drgania styków)i znów sprawdzić klawisz, tym razem jeśli puszczony to dopiero wtedy zmieniamy stan diody led.
Polecam ten artykuł: http://mirekk36.blogspot.com/2012/10/ob ... w-cd2.html
Powinien rozjaśnić ten temat ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 maja 2015, o 20:07 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 09 maja 2015
Posty: 2
Pomógł: 0

Dziękuję. Rzeczywiście dioda zmienia za każdym razem stan na przeciwny a nie tak jak myślałem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 maja 2015, o 18:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

LED_TOG jest powodem migania albo dodasz flage ze gdy wciskasz to LED_TOG albo zrob ze LEDON gdy wcisniety key a LED_OFF gdy klawisz wyciśnięty.

Namazane ze smarta.

_________________
Usługi druku przestrzennego - www.drumik.pl



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

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