Teensy 3.1 – dzień I – Opis płytki

Witam w nowym serialu. W tym sezonie omówię ci płytkę Teensy 3.1.
Ogólnie rzecz ujmując jest to płytka o możliwościach Arduino DUE, za cenę mniejszą niż Arduino UNO.

Płytka jest bardzo małych rozmiarów (3.56 cm x 1.78 cm). Jest 2 razy krótsza niż mój palec wskazujący. Mimo małych rozmiarów rozstaw pinów jest standardowy i wynosi 2,54 mm. To taki sam rozstaw jak w płytce stykowej, popularnych układach scalonych typu DIP, albo jak piny w Arduino.

Sercem płytki jest kontroler MK20DX256VLH7 firmy Freescale. Jest to 32 bitowy kontroler oparty o rdzeń ARM Cortex M4. Ta wersja rdzenia ma takie funkcje jak szybkie dzielenie i mnożenie liczb oraz operacje obróbki sygnałów DSP (szybkie liczenie y=a*x+b). 

Kontroler pracuje z zegarem 72 MHz. Co daje mu 90 milionów operacji na sekundę. Jest ponad 5 razy szybszy niż ten w standardowym Arduino. Jeśli chcesz możesz podkręcić w nim zegar do 96 MHz uzyskując jeszcze większą wydajność.

Na program masz do dyspozycji 256 kB pamięci Flash. Dla zmiennych jest 64 kB pamięci RAM. Pamięci EEPROM jest 2 kB.
Mimo, że jest 8x więcej pamięci Flash niż w Arduino UNO, nie znaczy że zmieścisz tam 8x większy program. Programy na platformę ARM kompilują się do większych rozmiarów niż takie same dla AVR.

W zestawie z płytką otrzymasz ulotkę na której rozpisane jest znaczenie poszczególnych pinów Teensy.

Tu można przeżyć szok. Mimo rozmiarów płytki, jej twórcy dali nam do dyspozycji 34 piny cyfrowe. Działają one w standardzie 3,3 V. Jednak jako wejścia tolerują napięcie 5 V. Tak więc płytka może być kompatybilna ze starymi układami z logiką 5 V.

Wadą jest to, że część pinów od spodu płytki jest tylko w postaci pól lutowniczych, a nie otworów. 

Większość pinów cyfrowych pełni więcej niż jedną funkcję. Część z nich to wejścia analogowe, wyjścia PWM, szeregowe itp.

Na płytce jest 21 wejść analogowych. Mają one rozdzielczość 16 bitów, jednak autorzy wspominają, że użytecznych bitów jest 13. Daje to dokładność odczytu 8192 poziomów napięcia.

Do sterowania szybkością silników i jasnością LEDów jest 12 wyjśc PWM.

Dodatkowo jest jedno wyjście przetwornika cyfrowo-analogowego DAC. Dzięki niemu możesz mieć wyjście z płynną regulacją napięcia. Do takiego wyjścia możesz podłączyć wzmacniacz z głośnikiem i nadawać różne dźwięki, albo komunikaty głosowe.
Wyjście ma rozdzielczość 12 bitów. Co daje 4096 poziomów napięcia wyjściowego.

Ciekawostką są wejścia przycisków dotykowych. Jest ich 12. W kolejnych odcinkach omówię jak z nich korzystać.

Wśród interfejsów do przesyłania danych na płytce są:

  • 3 interfejsy typu Serial (asynchroniczne RS232 TTL)
  • 2 magistrale I2C/TWI
  • 1 interfejs SPI
  • 1 magistrala CAN (używana w samochodach i przemyśle)

Wyjście zasilania 3,3 V można obciążyć do 100 mA.

Kontroler posiada w sobie zegar czasu rzeczywistego RTC. Służy on do sprzętowego przechowywania i obliczania daty oraz czasu. Jego funkcję uaktywnia się poprzez wlutowanie standardowego kwarcu zegarkowego o częstotliwości 32,768 kHz. By godzina i data były liczone po odłączeniu zasilania, do pinu VBat trzeba podłączyć bateryjkę 3V. Taką jak na płycie głównej PC.

Oczywiście jest też interfejs USB zakończony wtyczką Micro USB. Standardowo służy do programowania płytki. Po użyciu odpowiednich bibliotek, może udawać dowolne urządzenie USB. Po wlutowaniu w odpowiednie miejsce kondensatora 150 uF, interfejs USB może pełnić rolę Host USB i sterować innymi urządzeniami USB takimi jak pendrive, aparat cyfrowy albo smartphone.


Rozpiska pinów Teensy 3.1 (zdjęcie pochodzi ze strony Pjrc)

Twórcy płytki oferują specjalne biblioteki do każdego z interfejsów. Ale o tym jak zacząć przygodę z programowaniem Teensy 3.1 dowiesz się w kolejnych odcinkach.

Jeśli masz jakieś pytania i chciałbyś, żebym sprawdził coś dokładniej. Napisz w komentarzu pod wpisem. Chętnie rozwieje twoje wątpliwości.

Udanych eksperymentów życzy
sprae

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.