Jak pracujemy w okresie świąt Bożego Narodzenia?
Jak pracujemy w okresie świąt Bożego Narodzenia?
Wszystkie zakupy na Nettigo są chronione 14-sto dniowym prawem do zwrotu. Bez zbędnych pytań.
Szczegółowe informacje o dostawie i zwrotachRaz, góra dwa razy w miesiącu możesz otrzymać newsletter o nowościach w naszej ofercie, promocjach, a także porcję wiadomości ze świata DIY i Arduino.
Malutka płytka rozwojowa w formacie Teensy 3.2 wyposażona w super wydajny procesor ARM Cortex-M7 o taktowaniu 600MHz.
W magazynie 116
Ile sztuk? | Rabat | Cena za szt |
---|---|---|
1 | 159,00 | |
5+ | 7,00 % | 147,87 |
25+ | 15,00 % | 135,15 |
Rabaty ilościowe nie sumują się z innymi promocjami. Podano ceny brutto, obliczenia na podstawie cen netto. |
To malutka, niepozorna płytka programowalna z poziomu Arduino IDE, która skrywa w sobie ogromny potencjał. Teensy 4.0 zostało wyposażone w 32-bitowy procesor ARM Cortex-M7 taktowany zawrotnym zegarem 600 MHz. Zastosowanie układu NXP iMXRT1062 sprawia, że Teensy 4.0 to w chwili premiery najszybszy mikrokontroler na rynku. Deklasuje absolutnie wszystko co do tej pory widzieliśmy. Zostawia daleko w tyle superszybkie Teensy 3.6, od którego jest przynajmniej 5 razy szybsze. Z kolei od popularnego ESP32 jest szybsza przynajmniej 6 razy… Ale to nie koniec niespodzianek. Teensy 4.0 potrafi wróżyć (branch prediction), może modyfikować swój zegar podczas pracy, ma wydajne peryferia, które mogą korzystać z DMA i sprzętowe FPU obsługujące liczby zmiennoprzecinkowe podwójnej precyzji.
Paul Stoffregen - autor płytki przewiduje, że Teensy 4.0 będzie wykorzystywane do polifonicznej syntezy audio, uruchamiania średnio złożonych algorytmów uczenia maszynowego i analizy audio w czasie rzeczywistym. W wielu przypadkach pierwszy poziom obróbki danych z urządzeń wejściowych można teraz przenieść z komputera na zewnętrzny mikrokontroler, zmniejszając przepustowość wymaganą pomiędzy mikrokontrolerem a komputerem. Z kolei w przypadku projektów wykorzystujących wyświetlacz wbudowany potok przetwarzania pikseli może znacząco przyspieszyć operacje graficzne, tym samym odciążając procesor.
Możesz też wgrać blinka i chełpić się tym, że Twoja płytka ma 600MHz :P
Komputery PC przyzwyczaiły nas, że wysoka wydajność zawsze idzie w parze z bardzo wysoka prądożernością. Podczas pracy z częstotliwością 600 MHz Teensy 4.0 pobiera około 100 mA prądu. To dużo i niedużo, zależy jak spojrzeć. Co ważne Teensy 4.0 wspiera obsługę dynamicznego skalowania zegara. W przeciwieństwie do tradycyjnych mikrokontrolerów, w których zmiana prędkości zegara powoduje błędy transmisji i inne “ciekawe” problemy, sprzęt Teensy 4.0 i oprogramowanie Teensyduino obsługujące funkcje taktowania są zaprojektowane tak, aby umożliwić dynamiczne zmiany prędkości. Prędkość transmisji szeregowej, częstotliwości próbkowania strumieniowego przesyłania audio oraz funkcje Arduino, takie jak delay() i millis(), oraz rozszerzenia Teensyduino, takie jak IntervalTimer i elapsedMillis, działają poprawnie podczas gdy procesor w najlepsze zmienia prędkość. A jak się domyślacie niższy zegar to niższe zużycie prądu.
Teensy 4.0 zapewnia również funkcję wyłączania zasilania bez potrzeby odłączania kabli. Po podłączeniu przycisku do styku On/Off mamy możliwość całkowitego wyłączenia sekcji zasilania 3.3V. Wystarczy przytrzymać przycisk przez 5 sekund. Ponowne włączenie odbywa się przez ponowne krótkie naciśnięcie przycisku. Jeśli do pinu VBAT jest podłączona bateria podtrzymująca RTC, Teensy 4.0 będzie śledzić datę i czas, gdy zasilanie jest wyłączone.
A teraz usiądźcie… Teensy 4.0 można również podkręcić! I to znacznie powyżej 600 MHz!
ARM Cortex-M7 naszym zdaniem jest bardzo dobrym kandydatem do stworzenia platformy czasu rzeczywistego. Co prawda nie jest to procesor w pełni dwu wątkowy, ale dzięki architekturze superskalarnej może on wykonywać 2 instrukcje na cykl zegara. I to wszystko przy zawrotnych 600 MHz! Oczywiście możliwość jednoczesnego wykonania instrukcji zależy od ich typu i rejestrów porządkowych kompilatora, ale pierwsze testy porównawcze pokazały, że kod C++ skompilowany przez Arduino IDE ma tendencję do jednoczesnego wykonania 2 instrukcji w około 40-50% wypadków podczas wykonywania intensywnej obliczeniowo pracy na liczbach całkowitych i wskaźnikach. To tak jakbyśmy właśnie dołożyli dodatkowe 300MHz do zegara :)
Niespodzianek jest o wiele więcej! Cortex-M7 to pierwszy mikrokontroler z rodziny ARM, który potrafi wróżyć z kart tarota, fusów waniliowego Latte i szklanej kuli :) <żarcik? /> Posiada bowiem układ przewidywania rozgałęzień (branch prediction), który całkiem dobrze sobie radzi w mikrokontrolerowych warunkach. Zasada działania tego układu jest dość prosta. Cały czas monitoruje statystycznie pod jakie adresy skacze program i jeśli adres się powtarza kilka razy, to automatycznie przygotowuje strumień instrukcji z tego adresu do przetwarzania przez procesor. Dla porównania w rodzinie M4 (znanej z Teensy 3.x) wielokrotne wykonywanie kodu pętli na obsługę pożerało 3 cykle zegara za każdym razem. W Cortex-M7 po tym jak pętla zostanie wykonana kilka razy, mikrokontroler magicznie likwiduje narzut, pozwalając na wykonanie pętli z użyciem tylko jednego cyklu zegara. W świecie mikrokontrolerów oznacza to ogromną oszczędność czasu procesora. Kolejne cykle można wykorzystać na coś innego.
W Teensy 4.0 połowa RAMu jest “ściśle powiązana”. Czy jakkolwiek się tłumaczy termin “Tightly Coupled Memory”. W naszej mikrokontrolerowej karierze spotykamy się z tym pierwszy raz. Pamięć tę widać na schemacie blokowym kontrolera - znajduje się ona bezpośrednio w rdzeniu ARM. W rezultacie procesor ma do niej bardzo szybki i wyłączny dostęp. W praktyce oznacza to, że Cortex-M7 potrafi w pojedynczym cyklu zegara otrzymać dostęp do pamięci używając dwóch 64-bitowych magistrali. Jest szybko, bardzo szybko… Robi to dobrą robotę i przekłada się to na wzrost wydajności, więc nie narzekamy :)
Reszta pamięci jest zoptymalizowana pod DMA (Direct Memory Access - bezpośredni dostęp do pamięci). Oznacza to, że obustronna komunikacja z peryferiami odbywa się bardzo szybko i co ważne, procesor nie musi być pośrednikiem. Dla przykładu, dzięki temu można transferować dane do DAC bez udziału procesora w precyzyjnie ustalonych odstępach czasu. Wymagające peryferia mają zatem ogromne pole do popisu - jednym słowem mamy tu do czynienia z bardzo wydajnym I/O.
W dokumentacji procesora natrafiamy także na HS_GPIO czyli obsługę GPIO zaimplementowaną w rdzeniu ARM. Łatwo się domyślić, że jest to bardzo szybka obsługa. Są to co prawda tylko wybrane piny, ale w razie potrzeby natychmiastowej reakcji na sygnał, taka funkcjonalność może okazać się na wagę złota.
Procesor Cortex-M7 w Teensy 4.0 posiada dedykowaną jednostkę do obliczeń zmiennoprzecinkowych (FPU), która obsługuje zarówno 64-bitowe liczby podwójnej precyzji (“double”), jak i standardowe 32-bitowe liczby zmiennoprzecinkowe (“float”). Należy pamiętać, że FPU było obecne już w rodzinie M4 (Teensy 3.5, 3.6, Atmel SAMD51). Ale tam wspierało tylko 32-bitowe liczby zmiennoprzecinkowe. Każde użycie liczb zmiennoprzecinkowych podwójnej precyzji, czy funkcji takich jak log(), sin(), cos() oznaczało przesiadkę na powolne obliczenia implementowane programowo. W Teensy 4.0 wszystkie te operacje wykonuje sprzętowy FPU. Niezły czad! Kolejne zaoszczędzone cykle!
W chwili obecnej rodzina Teensy składa się z 7 płytek. Dwie z nich bazują na 8-bitowym mikrokontrolerze AVR, pozostałe 5 to zawierają 32-bitowe układy z rodziny ARM. Wymiary poszczególnych płytek:
W zestawieniu z Arduino UNO R3 wyglądają następująco:
Płytki Teensy 8-bit AVR:
Płytki Teensy 32-bit ARM:
Dedykowane akcesoria:
Pasujące akcesoria:
Wszystkie zakupy na Nettigo są chronione 14-sto dniowym prawem do zwrotu. Bez zbędnych pytań.
Szczegółowe informacje o dostawie i zwrotachRaz, góra dwa razy w miesiącu możesz otrzymać newsletter o nowościach w naszej ofercie, promocjach, a także porcję wiadomości ze świata DIY i Arduino.