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



Teraz jest 21 cze 2026, o 04:31


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 4 gru 2016, o 11:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 kwi 2014
Posty: 150
Pomógł: 1

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

oraz napisaną instrukcję w wywoływaną po wciśnięciu klawisza z pilota:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Kłopot polega na tym, że po wpisaniu wartości 1 do tablicy chose_led[1] (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.


wciśnięcie dowolnego klawisz powoduje ponowne wejście w instrukcję switch. Tak jakby warunek if(chose_led[1] != 1) w ogóle nie był brany pod uwagę. Dlaczego tak się dzieje?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 gru 2016, o 13:14 
Offline
Użytkownik

Dołączył(a): 18 kwi 2013
Posty: 183
Lokalizacja: Kraków
Pomógł: 30

Może sprawdź na początek czy ta linijka kodu case SUBMIT: na pewno się wykonuje. Podłącz jakiegoś leda i zapalaj go w tej linii kodu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 gru 2016, o 00:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 kwi 2014
Posty: 150
Pomógł: 1

Hej,
Kolego janusz17, wyświetlam wartość tablicy na wyświetlaczu LCD i ładnie zmienia się jej wartość w zależności od wciśniętego klawisza.
Więc program wchodzi w tego case'a.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 gru 2016, o 08:44 
Offline
Użytkownik

Dołączył(a): 25 lip 2015
Posty: 140
Zbananowany użytkownik

Pomógł: 18

Jaką wartość ma etykieta RESET? Rozumiem, że do detekcji wejścia w blok switch służy Ci ten LED4_3? I że masz pewność, że blok ten jest wykonywany
gdy chose_led[1] jest równe 1?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 gru 2016, o 09:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 kwi 2014
Posty: 150
Pomógł: 1

Etykieta RESET ma wartość 62 - jest to wartość jednego z klawiszy. Tak, zarówno zmienna LED4_3, podpięty wyświetlacz LCD z wypisywaną wartością chose_led[1] oraz maksymalne rozbłyśnięcie diody RGB kolorem białym. Tak więc mam potrójne sprawdzenie ;)



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 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