Niedziałające Arduino?

+6 głosów
389 wizyt
pytanie zadane 4 marca 2016 przez użytkownika maciek13 (11)
Wgrywam przykładowy program blink do arduino, podpinam diodę LED pod pin 11, ale dioda wcale nie zaczyna mrugać, co może być tego przyczyną?
Posiadam Arduino Leonardo.

7 odpowiedzi

+2 głosów
odpowiedź 5 marca 2016 przez użytkownika sebafudi (8)
Zmieniasz pin, który jest w programie? W przykładzie domyślnie jest 13, a ty musisz zmienić na 11. Podłączasz diodę w dobrą stronę? Dłuższa nóżka powinna iść do GND, a krótsza do pinu 11.
komentarz 7 marca 2016 przez użytkownika binariusz (352)
Między źródłem zasilania a diodą powinien być rezystor. Ja używam 220 om i jeszcze żadna dioda mi się nie spaliła. Próbowałem eksperymentować i podłączyłem diodę LED bez rezystora - kilka sekund i dioda martwa (próbowałem na dwóch- zawsze ten sam efekt).
komentarz 11 marca 2016 przez użytkownika Parallel_Highway (42)
to czemu mi się nie palą jak je podłączam bez rezystora do arduino uno
komentarz 11 marca 2016 przez użytkownika binariusz (352)
Nie wiem. Może UNO ma inne napięcie na wyjściach, ale pewnie to Ty masz inne diody.
komentarz 17 lipca 2016 przez użytkownika admin (60)
https://www.arduino.cc/en/Main/arduinoBoardLeonardo
https://www.arduino.cc/en/Main/arduinoBoardUno

Wydajność prądowa 1 pinu cyfrowego dla Leonardo to 40 mA, zaś dla Uno to 20 mA.

Teraz może znajdzie się ktoś mądrzejszy kto odpowie mi na pytania:
1. Arduino posiada zabeczpieczenie dla każdego pinu - że maksymalny prąd jaki z pinu wychodzi to 20 lub 40 mA i po prostu więcej się nie da?
2. Czy nie ma żadnego zabezpieczenia i możemy np. pobrać 60 mA co będzie skutkowało spaleniem Arduino?

Bo jeżeli odpowiedź na 1 pytanie to "tak" to oznacza, że na Uno dioda bez rezystora się nie pali, bo po prostu i tak maksymalnie płynie przez nią 20 mA mimo, że dioda "chce" wycisnąć więcej, a po prostu nie ma z czego. A na Leonardo się pali, bo dostaje 40 mA...
komentarz 15 września 2016 przez użytkownika tomekatomek123456789 (558)
Domyślnie w uno jest 20 mA ze względu na zabezpieczenia a w leonardo ich niema wieć może nawet pójść 120 mA z leonardo . więcej wytłumacze kiedy będe na kompie bo teraz jestem na telefonie więc mam problem bo telefon sam zmienia mi tekst
+3 głosów
odpowiedź 5 marca 2016 przez użytkownika binson (106)
Właściwie to nawet bez podłączania żadnej diody powinna Ci migać dioda "L" na PCB arduino jeżeli wgrywasz blinka prosto z przykładów, oprócz tego blink domyślnie dotyczy pinu 13 a nie 11 więc to może być twój problem.
+1 głos
odpowiedź 5 marca 2016 przez użytkownika pieskasta (112)
Czy arduino działa Ci na innych programach oprócz migania diodą? Jeśli nie, może wystąpić konieczność wgrania bootloadera. Możesz go wgrać za pomocą programatora USB - ASP. Dodatkowo dodam, że USB - ASP nie działa na windows 8 i 10, lecz na windows 7 spokojnie pójdzie po zainstalowaniu sterowników.
komentarz 6 marca 2016 przez użytkownika grzes1616 (28)
Mi doskonale działa programator USB ASP na Windowsie 8.1. Co prawda trzeba się na kombinować, szczegółów szukaj na blogu mirekk36.blogspot.com.
komentarz 8 marca 2016 przez użytkownika binariusz (352)
Celna uwaga. To może być to.
0 głosów
odpowiedź 7 marca 2016 przez użytkownika binariusz (352)
Sprawdź, czy w przykładzie wpisałeś odpowiedni pin, tj. 11. Większość przykładów jest na pin 13. Zobacz też, czy dobrze podłączyłeś diodę - dłuższą nóżką do zasilania (pinu), przez rezystor (najczęściej 220om), a krótszą nóżkę do masy (GND).

Jeżeli to nie te czynniki, obejrzyj sobie na YouTub-ie odcinek: https://www.youtube.com/watch?v=VoIQGlHb7Sw.
komentarz 8 marca 2016 przez użytkownika binariusz (352)
Oczywiście to nie musi być akurat przyczyna z filmu, może być też inna.
komentarz 13 marca 2016 przez użytkownika binariusz (352)
Jeszcze jedno: czy w przykładzie, w funkcji setup, zdefiniowałeś 11-stkę jako wyjście(OUTPUT)?
+1 głos
odpowiedź 12 marca 2016 przez użytkownika JJBinary (42)
Spróbuj wgrać taki program (z diodą podłączoną do jedenastego pinu cyfrowego przez rezystor ok.220 Om).

void setup() {
  pinMode(11, OUTPUT);
}
void loop() {
  digitalWrite(13, HIGH);
  delay(1000);
  digitalWrite(13, LOW);
  delay(1000);
}

Jeśli zaczną wyświetlać się błędy, sprawdź czy poprawnie podłączyłeś arduino (dociśnij kable do portów).

Jeżeli błędy ciągle się będą wyświetlać, sprawdź czy dobrze skonfigurowałeś program (W programie kolejno Narzędzia > Płytka: > Arduino Leonardo a potem Narzędzia > Port > i twój port (Możesz go sprawdzić wybierając w panelu sterowania Urządzenia i drukarki i szukając tam Arduino Leonardo (COMx) x to numer portu. Może być też dwu cyfrowy) Jeśli twojego portu tam nie będzie spróbuj odłączyć i podłączyć arduino).
komentarz 13 marca 2016 przez użytkownika binariusz (352)
U mnie port to COM3 lub COM8. Jeśli w Narzędzia>Port wyświetlać Ci się będzie samo "port", to kliknij i wybierz port COM. Obok portu w nawiasie powinno Ci się wyświetlać "Arduino Leonardo". Jeśli Narzędzia>Port będzie na szaro, znaczy, że komputer nie wyczytuje płytki.
+1 głos
odpowiedź 4 maja 2016 przez użytkownika konradturek (6)
a w blink ustawiles pin na 11 bo chyba domyslnie jest na 13
0 głosów
odpowiedź 15 września 2016 przez użytkownika tomekatomek123456789 (558)
Wgraj arduino IDE przez instalator .exe
komentarz 9 października 2016 przez użytkownika Parallel_Highway (42)
ono chyba jest spalone
...