Powrót

Mikroprocesory

Faktem jest, że można doprowadzić do sytuacji, iż 32-bitowy ARM 48 MHz będzie wolniejszy niż 8-bitowy AVR 16 MHz. Nie jest to łatwe, ale Arduino skutecznie poradzi sobie z takim nietypowym zadaniem... Wymiana mikrokontrolera na szybszy nie zawsze spowoduje szybsze działanie programu.

Jedną z poważniejszych wad Arduino na AVR jest mała ilość portów UART. Uwzględniając fakt, że jeden UART jest wykorzystywany przez bootloader w przypadku Arduino UNO/NANO w ogóle nie mamy pełnowartościowego UART, bo jedyny jest współdzielony z bootloaderem.

Czy AVR może faktycznie wysyłać dane po SPI z prędkością 8 Mb/s (dla zegara 16 MHz) oraz 10 Mb/s (dla 20 megaherców)? Odpowiedź znajdziemy w artykule. Przy okazji pokażę jak ogromnie ważnym narzędziem w warsztacie elektronika jest analizator logiczny.

W artykule Arduino i karoseria samochodu na przykładzie motoryzacyjnym pokazałem specyfikę Arduino. W artykule Sprzęt Arduino – zalety i wady omówiliśmy część sprzętową i występujące tam pułapki. W niniejszym artykule skoncentrujemy się na oprogramowaniu, które też ma istotne zalety, ale i mnóstwo wad.

Tradycyjna obsługa termometru DS18B20 na Arduino ma poważną wadę – długi czas konwersji przez co reakcja na inne zdarzenia, na przykład naciśnięcie przycisku, jest bardzo opóźniona. Problem nasila się gdy termometrów jest kilkanaście lub więcej.

Operacje sumowania (odejmowania) realizuje jednostka ALU. Można uznać je za proste działania. Bardziej złożonymi są już operacje mnożenia lub dzielenia. Te są już wykonywane jako ciąg dodawań lub odejmowań. Pierwsze mikroprocesory robiły je programowo, jak one sobie radziły?

W warsztacie elektronika niezbędne są różnorodne przyrządy pomiarowe i urządzenia. Poza multimetrem często potrzebny jest generator. Prosty DDS można kupić za niewielkie pieniądze lub zbudować samemu. Niestety zastosowany w mim AVR nie pozwala na generowanie szybkich sygnałów.

Czy na Arduino można pisać profesjonalne programy? Można! Co prawda programy na mikrokontrolery AVR (ATmega...), z którymi zwykle utożsamia się Arduino, pisze się trudniej i dłużej niż na ARM, ale jak najbardziej, możliwe są profesjonalne rozwiązania na AVR.

Naturalnym jest, że mikroprocesor potrafi realizować operacje arytmetyczne. Kolejna część cyklu poświęcona jest jednostce arytmetyczno-logicznej. To taki element w każdym mikroprocesorze odpowiedzialny za obliczenia. Jak on to robi?

Ktoś, kto dziś zaczyna swoja przygodę z elektroniką, wręcz skazany jest na Arduino. To i dobrze, i źle! System Arduino nieprzypadkowo zdobył taka popularność – ma bowiem ogromne zalety. Ale tylko dla początkujących. Jednocześnie ma on poważne wady, a wręcz gigantyczne pułapki, których nie widać.