Dzien dobry - Wersja do druku +- Arduino Polska Forum (https://forum.arduinopolska.pl) +-- Dział: Start (https://forum.arduinopolska.pl/dzial-start) +--- Dział: Przywitanie (https://forum.arduinopolska.pl/dzial-przywitanie) +--- Wątek: Dzien dobry (/watek-dzien-dobry--3944) |
Dzien dobry - Mi010101 - 01-02-2021 Pozwolilem sobie zaistniec tu by poszukac odpowiedzi na problem , ktory co jakis czas obserwuje i chcialbym wreszcie zrozumiec rozwiazac. Dlaczego arduino? bo ogarniam narzedzie, ktore jest skonfigurowane do pracy z malym prockiem. Choc brakuje mi mozliwosci debugowania procesorka przy uruchamianiu. Mam srednie doswiadczenie z procesorami - wczesniej pare zajec na studiach jakies OMG 30 lat temu, a teraz jak dorosle dzieci odlecialy z gniazda , hobbystycznie zacząłem sie tym zajmowac. Klece - to dobre okreslenie - programy w arduino do realizacji prostych funkcjonalnosci w domu. Nie mam wyksztalcenia informatycznego wiec wszystko trwa dlugo i wiedze zdobywam walka lub spacerowaniem przez pole minowe. Staram sie zrozumiec, co jest zrobione w bibliotekach, ktore trzeba dolaczyc aby uruchomic jakis czujnik czy wyswietlacz. Dzida na ktora sie czasem nadziewam jest nastepujaca klon arduino nano lulb klon uno na procesorze ATmega328p Gdy program skompilowany ( bez warningow i bledow) zajmuje wiecej niz 60% pamieci programu i ok 60 % pamieci dynamicznej to procesor sie resetuje po ok 2sek albo "idzie w maliny" i to jeszcze w ramach setup{}. Jesli zakomentuje dowolny fragment programu w petli loop {} ( wiele prob z roznymi czesciami programu ) tak ze w wyniku kompilacji zajetosc zasobow jest <60% to dziala jak planowalem. Jesli caly program podzielilem na bloki ( obsluga wyswietlacza, obsluga 1-wire, I2C) i skompilowalem osobno , to w swoim zakresie dzialaly bez problemow . Prosze o informacje, co powinienem sprawdzic. Pozdrawiam RE: Dzien dobry - Jarewa0606 - 01-02-2021 Stos..... RE: Dzien dobry - Mi010101 - 02-02-2021 (01-02-2021, 17:53)Jarewa0606 napisał(a): Stos.....Dziekuje za odpowiedz. Zapewne zwiazane jest to zachowanie ze stosem. Jednak nie wiem jak to a arduino zarzadzac. Nie napisalem programu "pod korek" , zostalo wolne ponad 700byte w RAM wiec spodziewam sie , ze jest miejsce na stos. OK przerwania jakies w tle o ktorych nie wiem pewno maja miejsce ( ot chocby timer do millis()). Czy mozesz mi podac jakies narzedzie zeby to ogarnac, albo komende dla kompilatora, ktora by ostrzegala o tym ze moze byc problem ze stosem? lub ustawiala odpowiednio SP? Pozdrawiam RE: Dzien dobry - Jarewa0606 - 02-02-2021 Narzędzie i owszem jest ale trzeba z niego umieć korzystać "debugger" ........ Jedyna rada to unikać co pamięciożerne... https://www.codeproject.com/Tips/753716/Howto-find-out-how-much-RAM-your-Arduino-program-u |