====== Iskra JS Mini: подключение, настройка, распиновка и схемы ====== [[amp>product/iskra-js-mini?utm_source=man&utm_campaign=iskra-js-mini&utm_medium=wiki|Iskra JS Mini]] — аналог флагманской платформы [[amp>product/iskra-js?utm_source=man&utm_campaign=iskra-js-mini&utm_medium=wiki|Iskra JS]] в миниатюрном размере. Плата пригодится в проектах «интернета вещей» — она совместима с шилдами для [[amp>product/arduino-mini?utm_source=man&utm_campaign=iskra-js-mini&utm_medium=wiki|Arduino Mini]] и умеет работать по протоколу ''HTTPS''. {{ :продукты:iskra-js-mini:iskra-js-mini.1.jpg?nolink |}} ===== Видеообзор ===== {{youtube>XZV0TBOIS2g?large}} ===== Подключение и настройка ===== Для работы с платой Iskra JS Mini добавьте и настройте в Google Chrome среду программирования [[js:ide|Espruino Web IDE]]. Устанавливайте именно Espruino Web IDE. Ранее для работы использовалась среда Iskra IDE, которая была ответвлением от оригинальной Espruino Web IDE. ===== Пример работы ===== В качестве примера прошьём платформу Iskra JS Mini скриптом, который каждую секунду будет переключать встроенные светодиоды ''LED1'' и ''LED2''. // переменная состояния светодиода var state = false; // каждую 500 мс переключаем светодиоды // один включаем, другой выключаем setInterval(function() { state = !state; LED1.write(state); LED2.write(!state); }, 500); {{ :продукты:iskra-js-mini:iskra-js-mini_leds_toogle.gif?nolink |}} ==== Что-то пошло не так? ==== [[js:ide:driver-error|Не работает плата Iskra JS Mini]] ===== Элементы платы ===== {{ :продукты:iskra-js-mini:iskra-js-mini_annotation.png?nolink |}} ==== Микроконтроллер STM32F411CEU6 ==== Сердце платформы Iskra JS Mini — 32-разрядный микроконтроллер {{:продукты:iskra-js-mini:stm32f411ceu6_datasheet.pdf|STM32F411CEU6}} в корпусе ''UFQFPN48'' от STMicroelectronics с вычислительном ядром ARM Cortex M4. ==== Разъём micro-USB ==== Разъём micro-USB предназначен для прошивки платформы Iskra JS Mini с помощью компьютера. ==== Регулятор напряжения 3,3 В ==== Понижающий преобразователь {{:продукты:iskra-js-mini:tps562200_datasheet.pdf|TPS562200DDCT}} с входным напряжением 5–14 вольт с максимальным выходным током до двух ампер. ==== Светодиодная индикация ==== ^ Имя светодиода ^ Назначение ^ | LED1 | Красный светодиод свободного назначения.| | LED2 | Зелёный светодиод свободного назначения.| ==== Кнопка RESET ==== Служит для сброса микроконтроллера. Это аналог кнопки ''RESET'' обычного компьютера. ==== Пин BOOT0 ==== Если замкнуть пин ''BOOT0'' с пином ''3V3'', плата загрузится в DFU-режиме. Это позволит [[js:ide:dfu-firmware|перепрошить микроконтроллер без программатора]], через USB. ===== Распиновка ===== {{ :продукты:iskra-js-mini:iskra-js-mini_pinout.png?nolink |}} ==== Пины питания ==== * **VIN:** Пин для подключения внешнего источника питания. Рекомендуемый диапазон 5–14 вольт. * **3.3V:** На вывод поступает напряжение 3,3 В от стабилизатора платы. Данный стабилизатор обеспечивает питание микроконтроллера ''STM32F411CEU6''. Запитывать устройство через вывод ''3.3V'' не рекомендуется — в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя. Максимальный ток вывода — 2 А. * **GND:** Выводы земли. ==== Порты ввода/вывода ==== * **Цифровые входы/выходы:** 20 пинов — ''A0'', ''A1'', ''A4''–''A7'', ''A10'', ''B0''–''B10'', ''B13''–''B15''\\ Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 25 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно. * **ШИМ:** 16 пинов — ''A0'', ''A1'', ''A5''–''A7'', ''A10'', ''B0''–''B10'', ''B13''–''B15''\\ Позволяют выводить 16-битные аналоговые значения в виде ШИМ-сигнала. Одновременно нельзя использовать ШИМ на некоторых парах пинов: ''A6'' и ''B4'', ''A7'' и ''B5'', ''A1'' и ''B3'', ''B15'' и ''A10'' так как каждая парочка висит на общем таймере. * **АЦП:** 8 пинов — ''A0'', ''A1'', ''A4''–''A7'', ''B0'', ''B1''\\ Позволяют представить аналоговое напряжение в виде 12-битного числа. * **TWI/I²C:** пины ''SDA'' и ''SCL''\\ пины подключённые к аппаратному интерфейсу [[js:i2c|I²C]]. * **SPI:** пины ''MOSI'', ''MISO'' и ''SCK''.\\ пины подключённые к аппаратному интерфейсу [[js:spi|SPI]]. * **UART:** пины ''UART(RX)'' и ''UART(TX)''\\ пины подключённые к аппаратному интерфейсу [[js:serial|UART/USART]]. ===== Принципиальная и монтажная схемы ===== {{:продукты:iskra-js-mini:iskra-js-mini_schematic.png?direct&600 |}} {{:продукты:iskra-js-mini:iskra-js-mini_layout_top.png?direct&300 |}} {{:продукты:iskra-js-mini:iskra-js-mini_layout_bottom.png?direct&300 |}} ===== Характеристики ===== * Микроконтроллер: STM32F411CEU6 (32-битный ARM Cortex M4) * Тактовая частота: 100 МГц * Объём Flash-памяти: 512 КБ * Объём SRAM-памяти: 128 КБ * Портов ввода-вывода всего: 20 * Портов с АЦП: 8 * Разрядность АЦП: 12 бит * Портов с ШИМ: 19 * Разрядность ШИМ: 16 бит * Портов толерантных к 5 В: 17 * Аппаратных интерфейсов SPI: 3 * Аппаратных интерфейсов I²C / TWI: 2 * Аппаратных интерфейсов UART / Serial: 1 * Номинальное рабочее напряжение: 3,3 В * Максимальный ток с шины 3.3V: 2 А (включая питание микроконтроллера) * Максимальный ток с пина или на пин: 25 мА * Допустимое входное напряжение от внешнего источника: 7–14 В * Габариты: 33×21 мм ===== Ресурсы ===== * [[amp>product/iskra-js-mini?utm_source=man&utm_campaign=iskra-js-mini&utm_medium=wiki|Iskra JS Mini]] в магазине * [[js:ide|Как настроить платформу Iskra JS Mini со средой Espruino Web IDE]] * [[js:start|Учебные и справочные материалы по JavaScript’у в микроконтроллере]] * [[js:ide:dfu-firmware|Обновление прошивки через DFU]] * {{:продукты:iskra-js-mini:stm32f411ceu6_datasheet.pdf|Даташит на микроконтроллер STM32F411CEU6}} * [[https://github.com/amperka/hardware-drawings/blob/master/iskra-js-mini.svg|Векторное изображение Iskra JS Mini]]