Arduino Polska Forum

Pełna wersja: Problem z błędami w kodzie
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam mam problem a mianowicie po tym jak połączyłem dwa kody w jedną całość gdy wgrywam je do arduino nie działa ono poprawnie i do tego w systemie występują błędy. Prosił bym o odpowiedź co zrobiłem źle. W kodzie chodzi aby dwa przełączniki mechaniczne były odpowiedzialne za "x" i "z" i dodatkowo ledy zmieniały kolory. Po wgraniu ledy działają prawidłowo ale przyciski albo same się klikają albo coś się włącza w systemie bez mojej ingerencji


Działający kod przycisków : https://pastebin.com/DxcXsS6V
Działający kod ledów : https://pastebin.com/Lq1a7pDq
Połączony kod powodujący błędy : https://pastebin.com/uvp8BAYh

Prosił bym o pomoc w ewentualnym poprawieniu błędu w kodzie lub o podanie połączonego już kodu. Ponieważ nie znam się za bardzo za programowaniu arduino i nie potrafię powiedzieć co wkleiłem źle że nie działa jak powinno Smile
Arduino Micro Pro, diody APA106
Co to oznacza, że:
nie działa ono poprawnie?
w systemie występują błędy (jakim systemie?)
dwa przełączniki mechaniczne ... ...same się klikają(może duchy?)
coś się włącza w systemie bez mojej ingerencji( co się włącza? w jakim systemie? może duchy?)
Co to znaczy połączony kod? (połączone to mogą być siły zbrojne Mordoru)
Bez tych odpowiedzi nikt Ci nie pomoże.

A cha, nie działa, jak powinno?
Kod zawsze działa tak, jak go napisano, więc wszystko działa, jak powinno.
Ech... Ja też się trochę pomądrzę, ale to dlatego, że rzeczywiście nie postawiłeś precyzyjnych pytań.
Po pierwsze, jeśli jesteś początkujący, nie łącz kodów. Generalnie jest to nie najlepsza praktyka, bo każdy pisze inaczej, inaczej nazywa zmienne i może się okazać, że dwie zmienne mające przechować inne wartości, mają tę samą nazwę, i to wprowadza problemy w programie. O niebo lepiej jest przemyśleć swój kod i napisać go samemu. Jeśli nie potrafisz - zajmij się prostszymi projektami.
Co zrobiłeś źle... źle połączyłeś dwa kody. Jak napisał Robson Kerman, program działa tak, jak jest napisany. Jeśli działa nie tak, jak sobie tego życzyłeś, to nie jest wina programu. Z tego samego powodu popularny w mediach 'błąd komputera' nie ma racji bytu, bo winny jest człowiek.

(16-03-2018, 17:17)bezi2002 napisał(a): [ -> ]W kodzie chodzi aby dwa przełączniki mechaniczne były odpowiedzialne za "x" i "z" i dodatkowo ledy zmieniały kolory. Po wgraniu ledy działają prawidłowo ale przyciski albo same się klikają albo coś się włącza w systemie bez mojej ingerencji
Kiedy byłem uczniem szkoły średniej, na ścianie pracowni był dowcipny, pochodzący z praw Murphy'ego tekst 'Jeśli nie wiesz co robisz, rób to dokładnie'.
Spróbuj rozpisać na kartce program, rysując kwadrat oznaczający każdą zmienną (oczywiście opisz każdy kwadrat nazwą odpowiedniej zmiennej). W kwadraty wpisuj wartości (na początku możesz wszędzie wpisać zera, chyba że program powie inaczej), i, śledząc program linia po linii, wpisując odpowiednie wartości do kwadratów. Sam bardzo szybko dojdziesz do tego, co jest nie tak w Twoim kodzie, i wtedy poprawisz go tak, aby był poprawny.

Aaa, co do przycisków jeszcze... jak je podłączyłeś do układu? Program sugeruje, że z jednej strony do pinu Arduino, z drugiej - do masy. Czy tak?