====== Iskra JS: подключение, настройка, распиновка и схемы ====== Платформа [[amp>product/iskra-js?utm_source=man&utm_campaign=iskra-js&utm_medium=wiki|Iskra JS]] — управляющая плата с микроконтроллером, которую программируют на JavaScript. {{ :js:iskra_js:iskra-js.2.1.jpg |}} ===== Видеообзор ===== {{youtube>8I2uaj6vzyY?large}} ===== Подключение и настройка ===== Для работы с платой Iskra JS добавьте и настройте в Google Chrome среду программирования [[http://wiki.amperka.ru/js:ide|Espruino Web IDE]]. Устанавливайте именно Espruino Web IDE. Ранее для работы использовалась среда Iskra IDE, которая была ответвлением от оригинальной Espruino. ==== Что-то пошло не так? ==== [[js:ide:driver-error|Не работает плата Iskra JS]] ===== Элементы платы ===== {{ :js:iskra_js:iskra-js_annotation.png?nolink |}} ==== Микроконтроллер STM32F405RG ==== Сердце платформы Iskra JS — 32-разрядный микроконтроллер STM32F405RG от STMicroelectronics с вычислительном ядром ARM Cortex M4. ==== Разъём micro-USB ==== Разъём micro-USB предназначен для прошивки платформы Iskra JS с помощью компьютера. ==== Разъём для внешнего питания ==== Разъём для подключения внешнего питания. Дублирует пин ''VIN''. ==== Выбор питания ==== Джампер определяет, как осуществляется преобразование входного напряжения. Он может быть установлен в одном из двух положений: * ''VIN3+5V'' — внешнее питание сначала проходит регулятор на 5 В, а он в свою очередь питает регулятор на 3,3 В. Работают обе шины: 5V и 3.3V. Допустимое входное напряжение в этом случае — от 7 до 15 вольт. * ''VIN3+VIN'' — внешнее питание сразу подаётся на регулятор 3,3 В. Шина 5V не используется для получения 3,3 В. Допустимое входное напряжение — от 3,6 до 12 вольт. Используйте это положение, чтобы питать схему от одного Li-Ion аккумулятора. ==== Регулятор напряжения 5 В ==== Когда плата подключена к внешнему источнику питания, и джампер выбора питания установлен в положении ''VIN3+5V'', напряжение проходит через стабилизатор MC7805BD. Выход стабилизатора соединён с пином 5V. Максимальный выходной ток составляет 1000 мА. ==== Регулятор напряжения 3,3 В ==== Стабилизатор MC33275ST с выходом 3,3 вольта, обеспечивает питание микроконтроллера STM32F405RG. Максимальный выходной ток составляет 300 мА. ==== Светодиодная индикация ==== ^ Имя светодиода ^ Назначение ^ | BUSY | Информационный светодиод. Загорается, когда плата выполняет действия. | | LED1 | Светодиод свободного назначения.| | ON |Информационный светодиод о наличии питания на микроконтроллере.| ==== Кнопка RESET ==== Служит для сброса микроконтроллера. Это аналог кнопки ''RESET'' обычного компьютера. ==== Кнопка BTN1 ==== Пользовательская кнопка подключенная к пину ''C4''. ==== Разъём SPI ==== Некоторые платы расширения работают через интерфейс SPI. По стандарту Arduino R3 разъём SPI должен быть выведен в виде разъёма 3×2 штырька в этом месте. Iskra JS следует этому стандарту. SPI-разъем не предназначен для внутрисхемного программирования микроконтроллера STM32F405RG и может использоваться только для связи с другими SPI-устройствами. ==== Разъём SWD ==== SWD-разъём предназначен для внутрисхемного программирования микроконтроллера STM32F405RG через программатор, например, ST-Link. ==== Пин BOOT0 ==== Если замкнуть эту пару пинов, плата загрузится в DFU-режиме. Это позволит перепрошить микроконтроллер без программатора, через USB. ===== Распиновка ===== {{ :js:iskra_js:pinout.png?nolink |}} \\ {{:js:iskra_js:iskra-pin.png?nolink|}} — GPIO-пин на Iskra JS. Под этим именем вы можете обратиться к пину из программы. {{:js:iskra_js:mcu-pin.png?nolink|}} — соответствующий пин на микроконтроллере STM32F405RG. {{:js:iskra_js:pwr-pin.png?nolink|}} — пин питания. {{:js:iskra_js:pwm-pin.png?nolink|}} — пин может генерировать [[:конспект-arduino:шим|ШИМ-сигнал]]. {{:js:iskra_js:adc-pin.png?nolink|}} — пин подключён к АЦП микроконтроллера, т.е. может считывать [[:сенсоры:аналоговые|аналоговый сигнал]]. {{:js:iskra_js:dac-pin.png?nolink|}} — пин подключён к ЦАП микроконтроллера, т.е. может генерировать аналоговый сигнал. {{:js:iskra_js:ftv-pin.png?nolink|}} — пин толерантен к 5 вольтам, т.е. выдерживает входной сигнал с напряжением, превышающим штатные 3,3 вольта. {{:js:iskra_js:spi-pin.png?nolink|}} — пин подключён к аппаратному интерфейсу [[SPI|SPI]]. ''SPI2'' также доступен в программе под псевдонимом ''PrimarySPI''. {{:js:iskra_js:i2c-pin.png?nolink|}} — пин подключён к аппаратному интерфейсу [[I2C|I²C]]. ''I2C1'' доступен под псевдонимом ''PrimaryI2C''. {{:js:iskra_js:usart-pin.png?nolink|}} — пин подключён к аппаратному интерфейсу [[Serial|UART/USART]]. ''USART3'' доступен под псевдонимом ''PrimarySerial''. На платах с компоновкой «xDuino Rev3» по одному интерфейсу SPI, I²C, UART, физически расположенных на определённых пинах, условно считаются основными. Через них обычно работают платы расширения. Для удобства программирования этим интерфейсам даны альтернативные имена вида ''Primary***'' ===== Принципиальная и монтажная схемы ===== {{:js:iskra_js:iskra_js-a11-schematic.png?direct&360 |}} {{:js:iskra_js:iskra_js-a11-layout-n.png?direct&300 |}} ===== Характеристики ===== * Микроконтроллер: STM32F405RG (32-битный ARM Cortex M4) * Тактовая частота: 168 МГц * Объём флеш-памяти: 1024 КБ * Объём флеш-памяти для хранения программы: 256 КБ * Объём SRAM: 192 КБ * Портов ввода-вывода всего: 26 * Портов с АЦП: 12 * Разрядность АЦП: 12 бит (4096 градаций) * Портов с ЦАП: 2 * Разрядность ЦАП: 12 бит (4096 градаций) * Портов с ШИМ: 22 * Портов толерантных к 5 В: 11 * Аппаратных интерфейсов SPI: 2 * Аппаратных интерфейсов I²C / TWI: 3 * Аппаратных интерфейсов UART / Serial: 4 * Номинальное рабочее напряжение: 3,3 В * Максимальный ток с шины 5V: 1000 мА * Максимальный ток с шины 3.3V: 300 мА (включая питание микроконтроллера) * Максимальный ток с пина или на пин: 25 мА * Максимальный суммарный ток с пинов или на пины: 240 мА * Допустимое входное напряжение от внешнего источника: 7–15 В (3,6–12 В без шины 5V) * Рабочий температурный режим: −20…+70 °C ===== Ресурсы ===== * [[amp>product/iskra-js?utm_source=man&utm_campaign=iskra-js&utm_medium=wiki|Iskra JS]] в магазине. * [[js:start|JavaScript в микроконтроллере]] — все справочные материалы. * [[https://github.com/amperka/Espruino/tree/iskrajs|Исходные файлы JavaScript-ядра Espruino]].