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



Teraz jest 21 lut 2025, o 20:12


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 
Autor Wiadomość
PostNapisane: 16 paź 2013, o 17:45 
Offline
Użytkownik
Avatar użytkownika

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

Witam :)

Trenuję sobie z przyciskami aby mieć debouce takie małe ale zawsze :)

i mam mały problem .... funkcje klawiszy

S1 = napis GORA
S2 = napis DOL
S1 + S2 = napis GORA I DOL

i wlasnie z tym ostatnim warunkiem mam problem :/

ponizej załączam fragment kodu

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



moze ktos mie powiedziec co robie zle w 3cim ifie ?

------------------------ [ Dodano po: 19 minutach ]

zapisałem to w ten sposób ale może macie inne pomysły ?

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

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2013, o 18:19 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

powinno być
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: 16 paź 2013, o 18:44 
Offline
Użytkownik
Avatar użytkownika

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

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


no wlasnie tez tak sadzilem ale nie :/

gdyz

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


tutaj mam obsluge jednego wcisnietego klawisza ... sadze ze musze to jakos przerobic :) ale jak ? czas na zastanowienie sie ....

moze zalatwic to dwiema funkcjami.

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


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



no chyba ze ktos podpowie jak cos takiego :) uwzglednic w jednej funkcji ?

------------------------ [ Dodano po: 24 minutach ]

aktualnie mam tak i dziala ... ale marwi mnie te wcisniecie klawiszy 2 na raz dziala polowicznie

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


w sensie najpierw pokaze klawisz ktory bedzie 1 wcisniety ... nastepnie te oba....


jak zrobic by odrazu pokazywalo oba ??

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2013, o 19:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 lip 2013
Posty: 106
Pomógł: 0

Nie jestem pewien bo w sumie to wiem mniej od cb ale chyba przyczyną są delay'e...
No bo jest warunek
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
gdzie sprawdzany jest warunek potem oczekiwanie( które zatrzymuje pracę uC i wg mnie tu jest błąd) i znowu sprawdzanie a potem akcja. Ok na 1 przycisku działa ale na dwóch jest problem bo
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
sprawdzasz warunek funkcji która zawiera delay po którym już fizycznie oba przyciski są zwolnione( już ich nie wciskasz) a przez to po delay'u funkcja sprawdź przycisk(...GORA) nie wykonuje się. Po prostu gdy przychodzi na nią czas to Ty już nie wciskasz klawiszy ;) ale to tylko chyba więc mogę się mylić

Tapnięte ze smartfona :) [url='http://tapatalk.com/m?id=10']now Free[/url]

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2013, o 19:43 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

no moim zdaniem jak chcesz żeby program reagował na wciśnięcie jednego i drugiego przycisku to możesz załatwić to flagą. np wykrycie po drganiach jednego przycisku flag=1, wykrycie drugiego flag2=1 a potem
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: 16 paź 2013, o 19:49 
Offline
Użytkownik
Avatar użytkownika

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

ale i tak bedzie najpierw jeden potem drugi ... pojde sladami mrweb ba poszeldem predzej i chce obejsc ten delay

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

aktualnie mam tak
S1 + S2 = GORA I DOL
S2 + S1 = DOL a nastepnie GORA I DOL

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2013, o 20:04 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 sie 2013
Posty: 230
Lokalizacja: Zabrze
Pomógł: 17

Nie jestem pewien w 100% (tak na szybko rzuciłem okiem), warunek:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

powinien być najpierw sprawdzany, a potem (else if) dla pojedynczych klawiszy.

A i jeszcze. Po wykryciu podwójnego klawisza warto sprawdzać czy zostały "puszczone" wszystkie klawisze i dopiero wtedy ponownie "przemiatać" klawiaturę pod kątem następnego wciśnięcia. Pozbywasz się wtedy problemu nierównego puszczenia "dwuklawisza" i błędnego wykrycia pojedynczego klawisza.

_________________
40-32:2=4!



Ostatnio edytowano 16 paź 2013, o 20:12 przez PJS, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2013, o 20:07 
Offline
Użytkownik
Avatar użytkownika

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

hmm samo & tez nie tyka jak powinno

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2013, o 20:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

Tak sobie myślę, że jeśli oba przyciski masz na tym samym porcie to może spróbuj tak
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Nie sprawdzałem tego więc nie wiem czy zadziała.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2013, o 20:13 
Offline
Użytkownik
Avatar użytkownika

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

hmmm zaraz obadam i dam znac

------------------------ [ Dodano po: 8 minutach ]

tak mi dziala prawidlowo wszelkie wczesniejsze opcje zle chodzily

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

_________________
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: 10 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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