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
–57
A0
–A26
A21
и A22
2
–10
,14
, 20
–23
,29
–30
и 35
–38
SDA0/8/17/18/34/48
и SCL0/7/16/19/33/47
SDA1/38/
и SCL1/37
SDA2/4
и SCL2/3/26
MOSI0/7/11/28
, MISO0/8/12/39
, SCK0/13/14/27
и CS0/9/10/15/20/21
MOSI1/0/21
, MISO1/1/5
, SCK1/20/32
и CS1/31
MOSI2/44/52
, MISO2/45/51
, SCK2/46/53
и CS2/43/54
TX1/1/5/26
и RX1/0/21
TX2/10
и RX2/9
TX3/8
и RX3/7
TX4/32
и RX4/31
TX5/33
и RX5/34
TX6/48
и RX6/47
CTX0/3/29
и CRX0/4/30