(29-12-2018, 21:47)blaberk napisał(a): Zadaniem tego forum jest zachęcać młodych ludzi (nie tylko wiekiem ale i doświadczeniem) do zabawy z elektroniką.Nie jest łatwa, tylko propaganda Arduino tak wmawia. Widać to na forach, gdzie banalny problem dla Arduinowca jest ścianą nie do przebicia.
Pokazanie, że elektronika i pisanie programów na procesory nie jest aż takie trudne.
(29-12-2018, 21:47)blaberk napisał(a): Tymczasem Ty piszesz: "wybierz sprzęt (uC) do zadania" oraz "To jest BEZ SENSU!".Jaki problem zamiast przestarzałego AVR o małych możliwościach użyć np https://kamami.pl/stm32-nucleo/557904-ka...&results=8
STM także produkuje płytki ze złączem Arduino i wbudowanym programatorem od F0xx, przez F1, F2, do F4. Arduino IDE obsługuje F1, F4, nie pamiętam czy F2, F3.
(29-12-2018, 21:47)blaberk napisał(a): I na koniec. Znam producenta mierników teletechnicznych. Urządzeń zaawansowanych technicznie.Napisane w ArduinoIDE czy użyte płytki Arduino? Zrobiłem kilka projektów na ARM jak i AVR na płytkach Arduino ale używając "normalnych" narzędzi, bez uciekania się do beznadziejnych bibliotek Arduino. W Arduino nawet obsługa GPIO jest spier.... po co tylke wywołań funkcji, przeliczeń i magii gdy wystarczy proste
Jednak ostatnio wdrożył nowy projekt którego sercem jest ... właśnie Arduino.
Właśnie wyprodukował kolejnych 500 urządzeń.
Czy dalej będziesz twierdzić, że to jest bez sensu!
Kod:
PORTx |= _BV(y);
Na Forbocie ciągnie się temat 14 przycisków, autor tematu ma problem jak na raz ustawić 12 portów, jaki probem
Kod:
PORTx = xx; PORTy |= zz;
Większość projektów na Arduino jestem w stanie położyć w kilka sekund, bo praktycznie nigdy nie sa sprawdzane błędy, nie ma reakcji na nie. Sztandarowy przykład wszystko z 1-Wire, gdzie zwarcie magistrali do masy zwraca 0 (np zero stopni).
Gdzie jest więc czekanie na H po reset?
Gdzie sprawdzanie czy slave nie przedłużył resetu zgłaszając przerwanie?
Gdzie jest czekanie na H po presence?
Gdzie sprawdzanie CRC?
To samo gdy wypnę termometr mamy magiczne -127stopni
O WDG to chyba Arduinowcy wcale nie słyszeli i uważają ten układ za zbędny bajer.
Nadużywanie liczb zmiennoprzecinkowych to norma!
To samo z klasą String. Program pochodzi kilka godzin i się wiesza. Dlaczego w tak małym uC używane są klasy String? Dlaczego w ogóle C++? C++ rzadko używa się na uC z kilkudziesięcioma kB RAM a co dopiero w malutkim AVR z 2kB RAM.
To jest po prostu chore!
A wystarczyłoby użyć C, uC z min 4 czy 8kB RAM, kilkoma UART, mostek USB na FT20x lub FT22x albo uC z USB.
Z AVR godne uwagi są Mega1284, Mega1281/1280.
Bilioteki pisane z głową, testowanie błędów a użytkownicy bibliotek reagować na błędy.
BEZWZGLĘDNIE używać WDG!
Wiele potrzeba? Nie!