Skocz do zawartości

Zawieszanie się programu podczas odczytywania wejścia analogowego


XPapekX

Pomocna odpowiedź

Witam Panów i Panie,

Robiąc projekt zegarka z funkcją budzika, natrafiłem na dość specyficzny błąd. Mianowicie próba odczytania wartości analogowej z A0 skutkowała zawieszeniem się całego programu, a było to spowodowane tym iż korzystałem z zapisu wykonania głównej funkcji programu int main(), a nie void setup() i void loop(). Oczywiście korzystanie z int main() pozwala zaoszczędzić trochę pamięci mikrokontrolera, ale jak widać nie współpracuje to z funkcją analogRead(). Ponadto dzielę się tym spostrzeżeniem bo inne osoby również mogą w przyszłości na taki błąd wpaść. Jeżeli też ktoś z Państwa wie co jest powodem takiego błędu i jak się go pozbyć to zapraszam do podzielenia się informacjami. Zamieszczam również screena z przykładem o którym mowa.

Pozdrawiam oraz przepraszam jeżeli już gdzieś na forum był opisany ten problem.

535353.png

Link do komentarza
Share on other sites

@XPapekX witam na forum 🙂 Temat wydzieliłem z kursu Arduino, bo nie jest związany bezpośrednio z omawianymi tam tematami. Podczas korzystania z Arduino powinno się korzystać z funkcji setup i loop - to "główne" elementy tego ekosystemu. Brak wywołania takich funkcji może powodować również inne błędy. Więcej informacji na ten temat znaleźć można w artykule opisującym jak jest zbudowane Arduino: https://forbot.pl/blog/arduino-co-w-srodku-3-zrodlo-wbudowanych-funkcji-id17291

  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.