• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Jak ustawić funkcje czasu wyjścia na określony i off
#13
(04-07-2019, 05:55)Jarewa0606 napisał(a): Myślałem że masz coś innego na myśli..  Raczej jak ktoś tworzy program na Ardunio to raczej nie potrzebuje wysokiej precyzji czasu
Jeśli chcesz odmierzyć 6 sekund to dopuszczalna jest odchyłka o +50%?
Gdyby chodziło o minuty, to jest różnica pomiędzy jajkiem na miękko a na twardo.

(04-07-2019, 05:55)Jarewa0606 napisał(a): a wysyłkę i odczyt uwzględnia.
Najczęściej nie da się, bo czasy wykonania operacji mogą i przeważnie są różne przy każdym obiegu pętli głównej.

(04-07-2019, 05:55)Jarewa0606 napisał(a): W przypadku Przerwania od timera trzeba uwzględnić ze  niektóre biblioteki na Ardunio z niego korzystają  wtedy może pojawić się konflikt.
Po "pierwsze primo" uC maja kilka timerów, jak jest za mało to trzeba wybrać taki, który ma ich więcej. Jak AVR ma ich mało (max 6) to trzeba wybrać ARM STM32 gdzie 16 timerów to nie problem.
Po "drugie primo", ok 1ms przerwanie od T0 jest od przepełnienia, nie ma problemu aby wykorzystać jedno z dwu T0 od porównania.
Po "trecie primo", aby odmierzanie czasu działało dobrze, łatwiej to zrobić na przerwaniach czy sprzętowo niż w pętli głównej. Ponadto zmiany w programie nie wpływają na odmierzane czasy, no chyba, ze ktoś stosuje złe praktyki i zawiesza przerwania. Takim złym przykładem jest obsługa 1-Wire i WS2812 przez libs Arduino, metody wzorowane na Mirku K. Ile z tym kłopotu można poczytać na forach. Doprawdy niepojęte jest, jakie badziewie potrafią wymyśleć (nazywanie tego myśleniem to profanacja tego słowa) Arduinowcy i Mirek K i to w sytuacji, gdy do 1-Wire, poza dedykowanymi układami mastera np DS2482, Dallas-Maxim udostępnia AN opisujący wykorzystanie UART w roli układu master.
Mało UART w Arduino? Jaki problem wybrać uC z większą ich liczbą?
Kolejne kretyństwo w Arduino, to zabranie jedynego w UNO (i nie tylko UNO) popularnego UART na cele programowania i pseudo-debugowania (z którego większość arduinowców nie korzysta) jakby nie było FT201, FT220 i podobnych.
Na szczęście widać tręd odchodzenia w Arduino od AVR na rzecz ARM, czego nie robi "wszechwiedzący" Mirek K. (mam nadzieję, że się na tym przejedzie, gdy natomiast zmieni zdanie, będzie zmuszony setkom osób przyznać rację wielu przeprosić a to nie ten typ, on woli plajtę niż przyznanie się do błędu) gdzie nawet 12 UART, 4 I2C, 6 SPI nie jest problemem, mniej niż 4 timery w ARM nie widziałem + jeden systemowy, no i jest DMA, brakuje tylko czasem MMU. Niestety, szybkie uC są "zabijane" przez libs arduino prze "delay", "while( czekam_na_coś_tam)" i karygodne programowe SPI, I2C, 1-Wire, itd, przez co "para idzie w gwizdek".


PS
Widział ktoś AVR z FPU? Jak pamiętam nawet Xmega nie ma go.
 
Odpowiedź
  


Wiadomości w tym wątku
RE: Jak ustawić funkcje czasu wyjścia na określony i off - przez es2 - 04-07-2019, 06:42

Skocz do:


Przeglądający: 2 gości