Teensy 3.5 — компактная платформа для разработки на базе микроконтроллера MK64FX512VMD12 с вычислительным ядром ARM Cortex® M4.
Teensy 3.5 превосходит типичные платы на базе 8-битных микроконтроллеров. Наиболее существенные отличия заключаются в следующем:
В итоге на Teensy 3.5 можно разрабатывать сложные и ресурсоёмкие программы, например: обработка звука, управление многосуставными роботами или распознавание образов.
Подключите плату к компьютеру по USB. Для коммуникации используйте кабель micro-USB.
Скачайте и установите на компьютер интегрированную среду разработки Arduino IDE.
По умолчанию среда программирования настроена только на платы семейства Arduino. Для работы с платформой Teensy 3.5 — установите дополнительный патч Teensyduino.
В качестве примера повторим первый эксперимент «Маячок» из набора Матрёшка. На плате уже есть встроенный пользовательский светодиод, подключенный к 13 пину микроконтроллера.
void setup() { // initialize digital pin LED_BUILTIN as an output pinMode(LED_BUILTIN, OUTPUT); } void loop() { // turn the LED on (HIGH is the voltage level) digitalWrite(LED_BUILTIN, HIGH); // wait for a 100 ms delay(100); // turn the LED off by making the voltage LOW digitalWrite(LED_BUILTIN, LOW); // wait for a 100 ms delay(100); }
После загрузки встроенный светодиод LED начнёт мигать 10 раз в секунду.
Это значит всё получилось и можно смело переходить к другим экспериментам на Teensy.
Сердцем платформы Teensy 3.5 является 32-битный микроконтроллер фирмы NXP — MK64FX512VMD12 с вычислительном ядром ARM Cortex-M4 с тактовой частотой 120 МГц. Контроллер обладает блоком памяти на 512 КБ Flash для хранения прошивки и 192 КБ RAM для хранения глобальных и статических переменных.
Что бы не занимать ни одного байта памяти основного процессора MK64FX512VMD12, для хранения и записи загрузчика используется дополнительный сопроцессор MKL02Z32VFG4.
Порт micro-USB предназначен для прошивки и питания платформы Teensy. Для подключения к ПК понадобиться кабель micro-USB.
Пользовательский светодиод на 13 пине микроконтроллера. Используйте определение LED_BUILTIN в Arduino IDE для работы со светодиодом. При задании значения высокого уровня светодиод загорается, при низком — гаснет.
Клик по кнопке приводит к остановке выполнения пользовательской программы из Flash-памяти основного контроллера и переводит плату в режим программирования.
При подачи питания на плату, основной процессор загружает данные из Flash-памяти и исполняет записанные инструкции.
При прошивки Teensy по USB, нажатии на кнопку PROG или подачи низкого сигнала на пин Prog, сопроцессор MKL02Z32VFG4 загружает код загрузчика в RAM-память основного процессора MK64FX512VMD12 и запускает его. Загрузчик стирает всю Flash-память основного процессора, считывает новые данные по USB и записывает во Flash-память. Далее плата перезагружается и основной процессор уже исполняет новые инструкции из Flash-памяти.
Понижающий линейный преобразователь LP38691 обеспечивает питание микроконтроллера и другой логики платы при подключении питания через USB-порт или пин Vin. Диапазон входного напряжения от 3,6 до 5 вольт. Выходное напряжение 3,3 В с максимальным выходным током 250 мА.
По документации на регулятор LP38691, максимальный выходной ток составляет 500 мА. Но в силу защиты платы от перегрева, в схеме используется ограничения до 250 мА.
В отличии от большинства плат Arduino, родным напряжением Teensy является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать 3,3 В. Но есть дополнительный бонус, все GPIO пины 0–57 толерантны к 5 вольтам, так что смело можете подключать свои любимые датчики к этой платформе.
0–57A0–A26A21 и A222–10,14, 20–23,29–30 и 35–38SDA0/8/17/18/34/48 и SCL0/7/16/19/33/47SDA1/38/ и SCL1/37SDA2/4 и SCL2/3/26MOSI0/7/11/28, MISO0/8/12/39, SCK0/13/14/27 и CS0/9/10/15/20/21MOSI1/0/21, MISO1/1/5, SCK1/20/32 и CS1/31MOSI2/44/52, MISO2/45/51, SCK2/46/53 и CS2/43/54TX1/1/5/26 и RX1/0/21TX2/10 и RX2/9TX3/8 и RX3/7TX4/32 и RX4/31TX5/33 и RX5/34TX6/48 и RX6/47CTX0/3/29 и CRX0/4/30