Iskra js — российский аналог микроконтроллера arduino

Аналог Arduino из России – микроконтроллер Iskra JS

25 апреля в 22:29

Публикации /

Аппаратно-программная среда разработки Arduino распространяется с открытой архитектурой, благодаря чему появилось множество усовершенствованных клонов. Программист Гордон Вильямс в 2013 годы выпустил первую модель Espruino — аналог Arduino, набравший популярность среди разработчиков скетчев.

Главным минусом новой среды разработки было отсутствие совместимости с дополнительными модулями от Arduino и необходимость создания новых. Espruino предлагает разработчикам свободную лицензию и открытый доступ к схемам и наработкам. Отечественная компания Амперка исправила недоработку, выпустив своё флагманское устройство Iskra JS.

Iskra JS — российский аналог Arduino

Iskra JS сочетает в себе лучшие качества Arduino и Espurino, предлагая пользователям расширенные возможности разработки и применения дополнительных модулей.

Как и Espurino, плата оснащена встроенным интерпретатором JavaScript и работает с аналогичной средой Iskra IDE. Устройство оборудовано портами для подключения шилдов от Arduino.

Программное взаимодействие компонентов реализовано в новой универсальной библиотеке Iskra. Подробнее изучим функционал и область применения аппаратно-программной среды разработки Iskra JS.

Зачем нужна Iskra JS

Как и Arduino, плата Iskra JS обладает возможность подключения дополнительных модулей, расширяющих просторы фантазии для создания новых устройств. Встроенный интерпретатор JavaScript лишает плату необходимости подключения дополнительных компиляторов и дешифраторов, делая изделия максимально компактным.

Имеется возможность автономной работы и взаимодействия с компьютером на любой популярной операционной системе. Наличие дополнительных модулей беспроводной связи и встроенных аккумуляторов позволяют организовать удалённую систему, способную перерасти в «Умный дом» или другие схожие по функционалу технологии.

Технические характеристики

В отличие от своих аналогов, Iskra выпускается в едином варианте и обладает следующей технической начинкой:

  • 32-битный микроконтроллер ARM Cortex-M4 с тактовой частотой 168 МГц;
  • 1 Мб флеш-памяти для хранения системных данных;
  • встроенный интерпретатор JavaScript;
  • 192 Кб оперативной памяти для стабильной работы загружаемых программ;
  • 26 управляющих контактов для подключения шинглов от Ардуино и Эспруино;
  • разъём micro-USB;
  • разъём для подключения к внешнему питанию типа VIN.

Данных технических характеристик хватит для комфортной работы устройства даже в промышленных масштабах. В Искре установлены регуляторы напряжения 3.3 и 5 вольт, расширяя совместимость с дополнительными модулями от Arduino. Уникальной является и программная среда. Имеются некоторые отличия, ознакомиться с которыми необходимо для написания собственных скетчев.

Программная среда Iskra JS

Источник: https://ArduinoPlus.ru/iskra-js/

Сам себе инженер: домашняя автоматика и роботы на JavaScript

С чего начать + 15 идей для Espruino, Arduino, Iskra JS.

Собирайте умные вещи и радиоуправляемые игрушки с подключением к домашней сети Wi-Fi, исследуйте мир летающими и подводными зондами, дайте развернуться вашей инженерной мысли!

На базе Arduino, Espruino и их аналогов можно создавать технику без инженерного образования и навыков низкоуровневого программирования. Для работы с Espruino и Tessel даже С/С++ знать не обязательно — весь код вы пишете на JavaScript. Сегодня мы расскажем об Arduino-подобных платах с поддержкой JS и о том, что можно делать с их помощью.

Что такое Arduino, Espruino и аналоги?

Это платформы для создания умных вещей и роботов в домашних условиях. У платформ есть:  

Аппаратная часть  — плата с микропроцессором, к которой можно подключать внешние модули: датчики, дисплеи, электродвигатели, адаптеры Bluetooth, WiFi и Ethernet и др.

Программная часть:

  • прошивка — движок платформы, который позволяет запускать код на микропроцессоре;
  • среда разработки (IDE), где мы пишем код и откуда загружаем его на плату;
  • стандартная библиотека, которая обеспечивает базовый функционал: работу с интерфейсами, светодиодами, таймерами, форматами данных (типа JSON) и т.д.

Среда разработки может быть веб-приложением, мобильным или десктопным оффлайн-приложением. Бывают и программы-эмуляторы, которые позволяют тестировать код на компьютере, когда платы нет под рукой.

А ещё у производителей наготове наборы-конструкторы: плата + функциональные модули и заготовки кода под конкретные задачи.

Принципиальная особенность uino-платформ в том, что вы не только делаете что-то по рецепту, но и создаёте новые устройства для своих задач.

15 идей для проектов на базе Arduino, Espruino и Iskra JS

Если вы раньше не инженерили, первая мысль: «Что с этим делать?». На мгновение теряешься. Но стоит посмотреть на чужие проекты, обзоры плат и модулей  — тут же возникает громадьё идей и планов.

Вот подборка проектов, которые могут разжечь ваше воображение  (со ссылками на примеры или описание реализации):

Arduino и JS — это совместимо?

Если у вас есть плата Arduino, но вы хотите писать код на JS, выход есть. Фреймворки типа Johnny-Five позволяют исполнять JavaScript на Arduino и прочих платформах:  Raspberry Pi, Tessel 2, pcDuino, Linio One, BeagleBone, BlendMicro, Particle Photon, Intel Galileo и др.

«Костыль!» — скажет кто-то. Отчасти да. Но для маленьких проектов и прототипирования это может быть удобно.

Почему JavaScript

Опытные программисты микроконтроллеров скажут, что C/С++ быстрее и ближе к «железу». Да, это мощные, но сложные и не самые лаконичные языки. Если вы их уже знаете — отлично.

Но не всем они нужны, особенно в начале. Пусть выполнение JS-кода займёт на 10-15 миллисекунд дольше — для любительского проекта это не критично.

Новичку важнее получать быстрые результаты и читать интуитивно понятный код.

Основные преимущества JS:

  1. Этот язык востребован: за последние 5 лет он —  самый популярный ЯП на StackOverflow. В рейтинге TIOBE за апрель 2018 JavaScript   — восьмой по популярности.

  2. Это один из самых простых в изучении языков, в отличие от С/C++.

  3. JS ускоряет разработку: с ним код бывает в 4 раза короче, чем на Arduino (Си)  — можно быстро реализовывать и тестировать новые задумки. Краткий и понятный синтаксис упрощает знакомство с чужими наработками и их переделку под ваши задачи.

  4. JS универсален: полезен и веб-разработчику, и игроделу, и тому, кто занимается интернетом вещей. Если вам интересно хотя бы одно из этих направлений, программирование автоматики на JS даст дополнительную практику.

  5. У JavaScript есть ясные перспективы развития, в том числе благодаря фреймворкам Node.js и Vue.js. Противостояние адептов AngularJS и React — один из увлекательных эпизодов истории языка, и сколько еще таких эпизодов нас ждёт! Пока web-разработка на подъёме, знание JS будет приносить доход.

Если вы недавно увлеклись робототехникой и ещё толком не умеете программировать, JavaScript — добрый помощник.

Бонусы JS-платформ

Большинство плат Arduino по умолчанию работают с урезанной версией C++, которую мало где применишь. Платформы Espruino и Iskra JS работают со стандартным JS, так что вы можете использовать один и тот же язык в разных направлениях разработки.

Ещё один плюс Espruino и JS — автоматическое подключение библиотек. Сторонние С-библиотеки нужно компилировать и подключать вручную, что отнимает время. На платформе Espruino и Iskra JS библиотеки подхватываются по команде require в коде. Указываете имя библиотеки, и при запуске программы начинается её поиск: сначала на локальном устройстве, затем в интернет-репозиториях, в т.ч. на GitHub.

Консоль в Espruino IDE позволяет отлаживать код в интерактивном режиме: вы видите результат выполнения программы и можете тут же вводить команды и экспериментировать.

Hello, LED! Простейший код для Espruino

Вместо «Hello, World» для Arduino-совместимых устройств первой пишут программу мигания светодиодом. Примерно такую:

// Светодиод мигает с интервалом полсекунды (500 мс)

const LED = 2; //номер ввода (пина) для обращения к компоненту платы

var on = false;

setInterval(function() { // Задаём интервал мигания

   on = !on;

   digitalWrite(LED, on);

}, 500);

Выбор платформы и платы

Платы различаются по форм-фактору, числу пинов (интерфейсов для встроенных и периферийных устройств), входному напряжению и, в итоге,  — по функционалу.

Espruino

Это полностью открытая (open source) платформа: на её базе можно создавать новые платы, прошивки, средства разработки. По назначению она схожа с Arduino, но не совместима с последней технически. Нельзя комбинировать модули двух платформ или писать код для Espruino в Arduino IDE. Программы на JS вы пишете в среде Espruino IDE, которая доступна как:

Espruino поддерживает фреймворки Node.js и Electron. Первый позволяет использовать JavaScript на стороне сервера, второй — создавать нативные приложения на JS.
Варианты плат:

  • Оригинальная Espruino — универсальна по функционалу плата размером меньше кредитки (54 мм x 41 мм). Изначально работает как проводное устройство, но вы можете добавить модули Wi-Fi и Bluetooth. По умолчанию на плате есть разъём MicroUSB, слот для SD-карт и 44 пина.
  • Espruino Pico — мини-плата (33 мм x 15 мм), похожая на USB-флешку. Её можно воткнуть в компьютер напрямую, удобно носить с собой, встраивать в корпуса разной формы. На её основе удобно делать измерительные приборы. Примеры проектов  — здесь.
  • Espruino WiFi — плата с быстрым доступом в интернет и беспроводную сеть. Позволяет быстро запустить свой веб-сервис, собрать и обработать данные из интернета и/или наоборот  — отправлять данные исследований на сервер.
  • Puck.js  — плата-таблетка в пластиковом корпусе, которая позволяет создавать миниатюрные беспроводные устройства с низким энергопотреблением. Например, можно сделать в автосалоне кнопку для перехода к следующей записи в плейлисте телефона. Вы пролистываете музыку, не отрывая взгляда от дороги.
  • Iskra JS от российской компании «Амперка»  — логическое развитие оригинальной Espruino c дополнительными плюшками, о которых стоит рассказать подробнее.

Iskra JS

Плата на ядре Espruino и в форм-факторе Arduino.

Читайте также:  Arduino ambilight для телевизора своими руками за несколько шагов

Вы можете использовать комплектующие Arduino и управлять полученной системой с помощью JavaScript!  Средой разработки служит уже знакомая Espruino WEB IDE.

Плюс Iskra JS имеет собственные модули и платы расширения. Энтузиаст, которому понравилась одна платформа, рано или поздно захочет попробовать другую, и возможность комбинировать модули будет очень кстати.

Когда платы нет под рукой, вы можете тестировать код в онлайн-эмуляторе Iskra JS.

Подключить больше модулей поможет плата расширения, такая как Troyka Shield. Она позволяет перестановкой джампера выбирать напряжение на одной из линий питания, причем напряжение управляющей платы не важно. Например, можно комбинировать пятивольтовые модули с трёхвольтовыми платами Arduino (Due, M0).

Tessel 2  

Источник: https://geekbrains.ru/posts/js_diy_robots

Творческая Iskra. Делаем аппаратный менеджер паролей своими руками — «Хакер»

Содержание статьи

Где хранить свои суперсекьюрные и регулярно обновляемые пароли от множества интернет-ресурсов? В голове? Скорее всего, не поместятся. На бумажке? Не по-хакерски. Доверять облачному сервису, который спалит пароли если не сегодня, то завтра обязательно? Понадеяться на опенсорсный менеджер паролей? Вяло, товарищи! Скучно!

Сегодня мы рассмотрим настоящий тру-хакерский, тру-гиковский, удобный и безопасный способ хранить пароли, создав свой аппаратный менеджер паролей! Он будет хранить в себе данные разных аккаунтов, логины и зашифрованные пароли, ключ от которых должен держаться отдельно и вводиться непосредственно перед использованием, и при этом устройство будет эмулировать USB-клавиатуру для вывода логина и пароля.

Идея родилась не на пустом месте. Незадолго до ее появления я решил заняться программированием микроконтроллеров.

Но так как свободного времени, чтобы серьезно и глубоко посвятить себя этому, было недостаточно для полноценного освоения ни железного С++, ни железобетонного ассемблера, то, чуть не споткнувшись о продолжающую набирать популярность вселенную Arduino, я прямиком угодил в объятия загадочного мира «JavaScript для микроконтроллеров». «Теперь гаджеты программируют на JavaScript» — этот броский заголовок поймал меня на крючок! Разглядывая на сайте «Амперки» изображения красивой отладочной платы, похожей на Arduino Leonardo, но белой и именуемой Iskra JS (не путать с Iskra Neo, которая тоже Iskra, тоже белая, но по сути улучшенная Leonardo), я попал под гипноз описания ее возможностей (и, если что, нахожусь под ним до сих пор).

Отладочная плата Iskra JS

Сердце платы Iskra JS — прекрасный дуэт микроконтроллера серии STM32F4 и прячущейся в его недрах могучей open source прошивки Espruino, выполняющей функцию интерпретатора языка JavaScript с торчащей наружу консолью а-ля REPL. Те, кто знаком с Node.

js, почувствуют ярко выраженное дежавю и смогут вести себя более уверенно в диалоге с Espruino. При всем при этом для Iskra JS подходит весь спектр аксессуаров от Arduino UNO R3.

Да и дополнительные библиотеки, представляющие собой JS-модули, имелись в достаточном количестве как от создателей проекта Espruino, так и от разработчиков Iskra JS.

Можно посмотреть и в сторону коммерческих токенов. Но тут скрывается пласт нюансов с дополнительным ПО и универсальностью. Да и за действительно интересные устройства придется выложить немаленькую сумму.

Итак, недолго раздумывая и сразу обзаведясь целым набором «Йодо», где, помимо платы Iskra JS и буклета, были шилды, модули с сенсорами и прочими кнопочками, а также детали необычного конструктора для макетирования корпусов, именуемого структором, я всецело погряз в творчестве.

Источник: https://xakep.ru/2018/05/24/pass-manager-iskrajs/

Iskra JS

Iskra JS — флагманская плата Амперки с встроенным интерпретатором JavaScript. Она является развитием платформы Espruino, но совместима с платами шилдами для Arduino. Если для вашего проекта важны скорость и комфорт разработки, максимальная совместимость с платами расширения, сенсорами и другими электронными модулями, Iskra JS — это оптимальный выбор.

Производительность

Iskra JS работает на частоте 168 МГц. 32-битный микроконтроллер ARM Cortex-M4 предоставляет в ваше распоряжение 1 МБ флеш-памяти для хранения прошивки интерпретатора JavaScript и вашего кода, а также 192 КБ оперативной памяти для их работы.

Этого хватает для обработки JS-кода и решения множества задач вроде управления роботами, промышленной автоматикой, системами умного дома и т.д.

Совместимость

На плате вы найдёте совместимые с Arduino контактные колодки. Они расположены в соответствии со стандартной компоновкой Arduino R3, поэтому на плату могут быть установлены платы расширения для Arduino.

Логическое напряжение Iskra JS — 3,3 вольта, а многие контакты толерантны к 5 вольтам. Это обеспечивает электрическую совместимость с большей частью Arduino-периферии.

Порты ввода-вывода

Из 26-ти доступных управляющих контактов:

  • 12 могут использоваться для считывания аналогового сигнала;
  • 22 могут генерировать сигнал широтно-импульсной модуляции;
  • 2 могут выдавать настоящий аналоговый сигнал.

На платформе доступны 4 последовательных порта, 2 SPI и 3 I²C-шины для взаимодействия с дисплеями, гироскопами, акселерометрами и другими сложными модулями.

При этом по одной SPI и I²C шине вынесены на штатные разъёмы по стандарту Arduino R3 и они не конфликтуют с остальными пинами.

Питание

Питание можно подавать, как с компьютера через microUSB-порт, так и через гнездо питания 2,1 мм. Источник определяется автоматически.

В случае питания через гнездо, рекомендуемое входное напряжение — 7–15 В. Регуляторы напряжения выровняет входное напряжение до 5 и 3,3 вольт. В качестве источника питания можно использовать сетевой адаптер, батарейки или аккумуляторы.

Для питания подключенной периферии используйте пины 5V и 3.3V, которые выдают соответствующие их названию уровни напряжения. При использовании внешнего источника питания, с пина 5V можно суммарно получить до 1000 мА, с пина 3.3V — до 300 мА.

Если вам не нужна линия 5V, можете питать плату от источника на 3,6–12 В. Например, от Li-Ion аккумулятора.

Коммуникация

Iskra JS соединяется с компьютером с помощью кабеля microUSB. При соединении, платформа представляется компьютеру как виртуальный последовательный порт. По нему загружаются пользовательские программы и с него получается отладочная информация. Все эти процессы автоматизированы в Iskra IDE.

Также вы можете запрограммировать Iskra JS, как HID-устройство, то есть эмулировать работу клавиатур, мышей, джойстиков и другого компьютерного оборудования.

Защита USB

Iskra JS мы снабдили предохранителем, защищающим USB-порты вашего компьютера от перенапряжения и коротких замыканий. Хотя большинство компьютеров обладают собственными средствами защиты, предохранитель даёт дополнительную уверенность. Он разрывает соединение, если с USB-порта снимается ток более 500 мА, и восстанавливает его после нормализации ситуации.

Габариты

Размер платы — 69×53 мм. Гнёзда для внешнего питания и USB выступают на пару миллиметров за обозначенные границы. На плате предусмотрены места для крепления на шурупы или винты. Расстояние между контактами составляет 0,1″ (2,54 мм), но в случае 7-го и 8-го контакта — расстояние: 0,16″.

Характеристики

  • Микроконтроллер: STM32F405RG (32-битный ARM Cortex M4)
  • Тактовая частота: 168 МГц
  • Флеш-память: 1024 кБ
  • SRAM-память: 192 кБ
  • Номинальное рабочее напряжение: 3,3 В
  • Рекомендуемое входное напряжение: 7–15 В или 3,6–12 В
  • Максимальный ток с шины 5V: 1000 мА
  • Максимальный ток с шины 3.3V: 300 мА (включая питание микроконтроллера)
  • Максимальный ток с пина или на пин: 25 мА
  • Максимальный суммарный ток с пинов или на пины: 240 мА
  • Портов ввода-вывода общего назначения: 26
  • Портов с поддержкой ШИМ: 22
  • Портов с АЦП: 12 (12 бит)
  • Портов с ЦАП: 2 (12 бит)
  • Доступные аппаратные интерфейсы: 4× UART/Serial , 3× I²C/TWI, 2× SPI
  • Габариты: 69×53 мм

Источник: http://store.robots-lab.ru/product/iskra-js/

Конструктор роботов Амперка Amperka обзор — ФАНКЛАСТИК — конструктор для детей и взрослых

Москвичи Виктор Накоряков и Михаил Белогорцев создали компанию «Амперка» в 2010 году.

В то время в России никто не занимался продажей контроллеров Arduino, однако сотни энтузиастов горели желанием попробовать кросс-платформенную плату в деле. Авторы стартапа решили усовершенствовать идею итальянцев.

Они стали не просто официальным дистрибьютером «Ардуино», но и составляли и продавали пользователям готовые наборы электронных компонентов для сборки электронных устройств.

Впоследствии компания разработала линейку собственных микроконтроллеров Iskra JS (с JavaScript в форм-факторе Arduino), Iskra Neo (платформа на основе процессора ATMega32U4б, аналог Arduino Leonardo), Iskra Mini для компактных устройств (аналог Arduino Mini), Strela и множество других модернизаций Arduino.

Коробки с наборами конструкторов Амперка

Стилизованная матрёшка — символ компании — украшает все разработки «Амперки».

Ассортимент электронных изделий состоит из 15 готовых наборов для сборки роботизированных устройств, платы и модули, сенсоры, дисплеи, радиодетали, монтажные платы – макетки, провода и кабели, инструменты, механические узлы. Из продукции «Амперки» можно собрать практически любое электронно-механическое устройство.

Микроконтроллеры Iskra Neo, Iskra Mini и Strela

Оригинальным изобретением «Амперки» является #Структор – решение для сборки роботов из решётчатых деталей, которые изготавливаются фрезеровкой из листов белого вспененного ПВХ толщиной 5 мм.

Это панели, рейки, крепления для электронных элементов образуют каркас или корпус модели. Их можно красить и склеивать попарно для повышения жёсткости робота большого размера.

Материал прочный и мягкий, поэтому его можно сверлить, резать канцелярским ножом, использовать шурупы, то есть подгонять детали #Структора под свои нужды.

Отверстия в них идут с шагом 10 мм, к моделям прикручиваются перфорированные детали классического металлического конструктора. Чертежи для изготовления элементов можно скачать с сайта производителя, сделать вручную или распечатать на 3D принтере.

Модели из наборов Амперка: Робоняша, котик NYAN и Технокуб

Наборы «Амперки» сгруппированы в тематические серии, в каждой из которых есть комплекты для сборки моделей разного уровня сложности. Например, набор «Матрёшка» выпускается в комплектации X, Y и Z, от базового до максимального уровня.

Читайте также:  Урок по созданию автоматической машины для нарезки проволоки

Их стоимость составляет от 3 до 5 тыс. руб. Из серии собирается 20 электронных устройств на базе Arduino Uno, из набора Х — 8. Он рассчитан на детей от 14 лет, хотя и десятилетние ребята в состоянии собрать модели с помощью родителей.

В комплекте с каждым набором идёт проиллюстрированная брошюра, упрощающая процесс сборки и программирования.

Состав и модели из наборов Амперка

Средний набор Y даёт возможность собрать 17, а старший Z – все 20 устройств. В каждом имеется монтажная площадка, микроконтроллер, постоянные и переменные резисторы, светодиоды и тактовые кнопки.

В максимальной комплектации добавляются: фоторезистор, термистор, конденсаторы, диоды, транзисторы, индикаторы, моторы, сервопривод, экран.

Все эти и другие детали можно приобрести по отдельности в интернет магазине «Амперки», что существенно расширяет творческий потенциал и возможности конструктора.

Состав наборов «Йодо» и Малина Z

Основой двух наборов серии «Малина», Y и Z, служит одноплатный компьютер Raspberry Pi 3. С помощью этих наборов стоимостью 6,5 и 7 тыс. руб. учатся программировать на языке Python, делать игры на Scratch и работать с ОС Linux. «Малина» ориентирована не столько на робототехников, сколько на будущих программистов и «компьютерщиков».

Платформа с контроллером Iskra JS — основа набора «Йодо». Особенностью отечественного «мозга» является то, что контроллер понимает язык JavaScript, который проще и нагляднее, чем язык программирования «Ардуино» С++. Кроме контроллера, в набор стоимостью 5 тыс.руб.

входят: плата расширения Troyka Shield, потенциометр, ИК приёмник с пультом управления, УЗ дальномер, датчик освещённости, термометр, сервопривод, зуммер, светодиод, 22 детали #Структора, соединительные элементы и кабели. Из набора можно собрать 25 электронно-механических проектов, включая синтезатор, пантограф, терменвокс, умный шлагбаум, настольный радар.

Серия «Робоняша» продолжает «Йодо» и даёт возможность собрать движущихся роботов после освоения простых электронных устройств и принципов программирования. Набор «Робоняша» — это электронный конструктор для детей старше 12 лет. Он рассчитан на проведение 12 экспериментов – проектов, от простых прожектора и миксера до сложных робота-марсохода и робота-борца сумо.

Набор «Робоняша — продолжение Йодо» за 6 тыс. руб. стоит приобрести, если у вас уже есть набор «Йодо». Модели работают на контроллере Iskra JS.

Полезные устройства из наборов «Амперки»: оптический синтезатор и гаражный парктроник

Для детей от 7 лет «Амперка» придумала электронный конструктор «Микроник» стоимостью 990 рублей.

Вместо контроллера здесь логические микросхемы, не требующие программирования, а из 120 деталей можно собрать 20 электронных устройств: светофор, кодовый замок, маяк, рояль.

Контроллеров нет и в двух наборах «Электроника для начинающих», предназначенных для постановки опытов по электротехнике. Набор «Тетра» за 8 тыс.руб. обучает детей основам программирования, а образовательный набор «Амперка» за 16 тыс.руб.

предназначен для занятий в школах и кружках робототехники. Отдельного упоминания заслуживает конструктор «Технокуб» для сборки компьютерного нотификатора. С идеи создать это устройство и началась история компании «Амперка».

Модели из наборов «Робоняша» и крепление электроники на #Структор

Конструкторы «Амперки» предназначены для «рукастых» и «головастых» ребят, которые проявляют склонность к программированию электроники.

Из наборов собираются устройства для технических экспериментов с «умной» электроникой, а не модели роботов-игрушек. Разработка обладает большим образовательным потенциалом и предоставляет детям большие возможности для творчества в области базовых компьютерных технологий.

Благодаря адекватной цене «Амперка» пользуется популярностью среди широкого круга любителей прикладной электроники.

Источник: https://fanclastic.ru/konstruktory-roboty/395-amperka.html

Espruino: JavaScript на STM32 (новая железка и софт, наподобие ардуино)

Сейчас слежу за проектом Espruino на кикстартере.

Коротко: ребята разрабатывают проект JavaScript интерпретатора для STM32 (и не только). Ну и под него еще свою среду разработки и железку (отладку) свою конечно.

Все в открытых исходных кодах!

Вид на прототип снизу:Концепция примерно та же, что и у ардуино. (Правда Шильды делать вроде как сами не собираются.)

Обещают полный Open Source как программщины так и всех железных решений (правда только после 26 сентября — когда проект стартует).

Распиновка прототипа:Интересно тем, что: — работает на STM32 — собственно Open Source — код пишется на JavaScript (либо графическими блоками) — позволяет писать код в консоль, и он будет сразу исполняться на камне (то есть без компиляции и прошивки)

Почему JavaScript? (примерный перевод текста с кикстартера)

Мы подбирали язык, который: — Не требует компиляции — Может быть изменен и дополнен прямо в процессе работы программы — Имеет хорошую поддержку таких типов данных как Strings, Objects, Maps и Arrays — Имеет сходный синтаксис с такими языками как C, C++ (Arduino) и Java — Может по простому быть завязан на события (event-based) — Широко используется, прост в изучении и гибок

То есть по сути интересен сам их интерпретатор JavaScript для STM32 (и не только в общем-то), который можно прошить не только на их платку.

Если у вас есть, к примеру Discovery от ST с достаточным количеством флеша — уже можно пробовать. Ну и среда разработки тоже может быть интересна.

Пока проект не стартовал, прошивка закрыта, и, если хочется, чтобы написанная вами программа сохранилась во флеше — придется отстегнуть им за лицензию. Но это только до окончания кампании на кикстартере.

В общем, лучше один раз увидеть:

И вот:

На сайте проекта есть полный референс на железки и код. А так же руководства и примеры кода.

Далее там обещают еще много интересного выложить. Например, исходники коробочки под их железку для 3D принтеров 🙂

Проект уже собрал больше, чем было нужно, а значит точно будет запущен.

Но у желающих есть еще несколько дней, чтобы поучаствовать и за £22 получить их платку.

Более подробную информацию можно почитать на кикстартере и на сайте проекта.

Если вдруг кому-то интересно, могу перевести (громко сказано конечно, но попытаюсь) еще что-нибудь с этих страничек — пишите в комментах (конечно при наличии времени свободного).

Лично от себя замечу: при очевидных минусах данного решения (типа необходимости занимать до 200 кило флеша под сам интерпретатор JS), проект имеет право на жизнь.

Собственно хотя бы как обучающий стенд для новичков.

Особенно, как мне кажется, подойдет для детей (может для кружков детских или школ). Чтобы, так сказать, разогреть аппетит к этому делу. А, наигравшись вдоволь с камнем на JS, можно начать программировать под него уже по серьезному.

PS: и очень прошу сообщество — давайте без холиваров 🙂 Их уже и так были тысячи… И да, это не хабр, но вот на сей момент хабр про Espruino молчит, почему-то. И доступа на хабр у меня нет, и честно говоря — не хочется его заводить.

Так что пишу тут, в личный блог! 😉

Ребята достигли первого «Stretch Goal» в £50,565 — по нему они обещаются в ближайшее время добавить поддержку модуля WiFi CC3000.

Кстати, поддержа базового HTTP у них и раньше была, но работала только под Raspberry Pi. Так вот, теперь они доработают этот класс, чтобы он точно так же работал и с CC3000.

Почитать про сам класс можно тут.

Имеется возможность создавать как клиенты так и сервера.

А вкупе с возможностью использовать JSON так и вообще замечательно. Вообще на данный момент реализована поддержка:

— Serial Port

— SPI
— I2C
— OneWire
— Wireless в лице NRF24L01+ Для создания клиентов/серверов:

— Класс Http

Еще есть:

— LCD Driver для 1602/2004/HD44780

— Библиотека для работы с графикой на графических LCD и/или в памяти МК

Другие новости от разработчиков (примерный перевод):

Мы до сих пор упорно работаем над Espruino: — мы обновляли Web UI: добавили несколько фишек и сделали его проще в использовании; — добавляли новую документацию; — добавляли поддержку модулей/библиотек в стиле CommonJS (node.js); — а так же тестировали графическую библиотеку Espruino с экранчиком Nokia 5110.

Ну и два новых Stretch Goal:

£60,000 — загрузка модулей NPM Node.js

После нашей недавней работы, Espruino теперь поддерживает загрузку модулей с SD карты — так что вы можете просто и быстро добавлять библиотеки для поддержки нового оборудования. Однако, если мы достигнем данного уровня (£60,000), мы добавим возможность загружать node.js модули из интернет: как прямо на Espruino (через CC3000 WiFi модуль) так и через Espruino Web UI. Таким образом вы сможете загружать node.js модули из интернет независимо от того, имеет ли ваша Espruino CC3000 модуль или нет.

£70,000 — OpenWRT package

Если мы достигнем этого уровня, то засабмитим Espruino package в репозитории OpenWRT.

Это означает, что вы сможете получить «Espruino's fantastic, web-enabled node.

js-style JavaScript programming» (трудно такое перевести красиво, но вы сами все поняли, думаю) на небольших работающих на Linux устройствах вроде Carambola, TP-Link TL-WR703N, Arduino Yun, и даже вашем беспроводном маршрутизаторе!

(примерный перевод)
Мы только что запостили новое видео. В нем показано, как просто использовать модули в Espruino. Два модуля загружаются с SD-карты, один для DS18B20 и второй для экранчика Nokia 5110. В будущем мы поработаем над использованием Web UI для загрузки модулей из сети. А пока что вы можете загрузить все необходимые модули на SD-карту, использовать их, а потом удалить, если больше не нужны. Проект успешно стартовал. Набрал 100+ тыс. фунтов. То есть все заявленные «Stretch Goals» будут выполнены.
Как и обещали, разработчики выложили в свободный доступ все:
— JavaScript интерпретатор Espruino
— Espruino Web IDE
— Схемы Espruino
— Доки по Espruino

Читайте также:  Raspberry pi 3: микроконтроллер с большим количество модулей

Источник: http://we.easyelectronics.ru/JustACat/espruino-javascript-na-stm32-novaya-zhelezka-i-soft-napodobie-arduino.html

Плата Iskra Neo

Плата Iskra Neo — платформа для разработки с микроконтроллером ATmega32U4. Она является эквивалентом итальянской Arduino Leonardo, но производится нами в России и по качеству ничуть не хуже. Если для вашего проекта нужна бюджетная микроконтроллерная плата с максимальной совместимостью с платами расширения, сенсорами и другими электронными модулями, Iskra Neo — это отличный выбор.

Arduino — это открытая платформа, которая позволяет собирать всевозможные электронные устройства. На базе неё и построена Iskra Neo. Она будет интересна креативщикам, дизайнерам, программистам и всем пытливым умам, желающим собрать собственный гаджет. Устройства могут работать как автономно, так и в связке с компьютером. Всё зависит от идеи.

Программирование

Для программирования используется упрощённая версия C++, известная так же как Wiring. Разработку можно вести как с использованием привычной бесплатной среды Arduino IDE, так и с помощью произвольного C/C++ инструментария. Поддерживаются операционные системы Windows, MacOS X и Linux.

Прошивать плату вы можете через microUSB-кабель. Сам кабель невключён в комплект.

При работе из Arduino IDE, в настройках среды стоит выбирать плату «Arduino Leonardo».

Производительность

Iskra Neo работает на частоте 16 МГц. Микроконтроллер ATmega32U4 предоставляет в ваше распоряжение 32 КБ флеш-памяти для хранения прошивки, 2,5 КБ оперативной памяти SRAM и 1 КБ энергонезависимой памяти EEPROM для хранения данных при обесточивании.

Этого вполне достаточно для решения множества задач вроде управления роботом, промышленной автоматикой, умным домом, световыми инсталляциями и т.д.

Совместимость

На плате вы найдёте традиционные для Arduino контактные колодки. Они расположены в соответствии со стандартной распиновкой Arduino R3, поэтому на плату могут быть установленыплаты расширения для Arduino.

Родным логическим напряжением для Iskra Neo является 5 В. Это обеспечивает электрическую совместимость с большей частью Arduino-периферии.

Если какой-то сенсор или модуль обозначен, как совместимый с Arduino, он совместим и с Iskra Neo.

Порты ввода-вывода

На контактные колодки выведены 20 пинов ввода-вывода. Среди них вы найдёте:

  • 7 пинов с ШИМ
  • 12 аналоговых входов на 1024 градации
  • 1 аппаратный интерфейс UART (Serial)
  • 1 аппаратный интерфейс TWI (I²C)
  • 5 пинов, поддерживающих аппаратное прерывание

На отдельной группе пинов расположен интерфейс SPI.

В отличии от оригинала, на Iskra Neo маркировкой мы обозначили все аналоговые входы и пины с прерываниями, чтобы вам было проще ориентироваться.

Питание

Питание можно подавать, как с компьютера через microUSB-порт, так и через гнездо питания 2,1 мм. Источник определяется автоматически.

В случае питания через гнездо, рекомендуемое входное напряжение — 7–12 В. Регулятор напряжения выровняет входное напряжение до родных 5 вольт. В качестве источника питания можно использоватьсетевой адаптер, батарейки или аккумуляторы.

Для питания подключенной периферии используйте пины 5V и 3.3V, которые выдают соответствующие их названию уровни напряжения. С пина 5V можно суммарно получить до 1000 мА, с пина 3.3V — до 800 мА.

Обратите внимание, что на оригинальных платах максимальный ток с 3.3V составляет всего 50 мА, что не даёт возможность подключения прожорливых 3,3-вольтовых модулей напрямую. С Iskra Neo это возможно.

Коммуникация

Iskra Neo, в отличии от той же Arduino Uno, смотрит в сторону USB через отдельный USB CDC-интерфейс. Это означает, что 0-й и 1-й пины аппаратного порта UART остаются свободными и вы можете использовать их одновременно с коммуникацией с компьютером, а периферия, висящая на них, не мешает прошивке.

При сбросе микроконтроллера его соединение с компьютером теряется и поднимается заново. Это усложняет процесс прошивки, но не должно являться проблемой, т.к. Arduino IDE поддерживает этот процесс.

При открытии serial-соединения с компьютера загруженный скетч не перезагружается. Это означает, что если вы отсылаете данные по serial до реального открытия соединения, они уйдут в никуда и вы не сможете их увидеть. Эту проблему можно решить программно.

С точки зрения компьютера Iskra Neo является ещё и HID-устройством (вроде клавиатуры или мыши), поэтому сделать на основе Iskra Neo новое компьютерное устройство ввода проще, чем с другими платами

Защита USB

Iskra Neo мы снабдили предохранителем, защищающим USB-порты вашего компьютера от перенапряжения и коротких замыканий. Хотя большинство компьютеров обладают собственными средствами защиты, предохранитель даёт дополнительную уверенность. Он разрывает соединение, если на USB-порт подаётся более 500 мА, и восстанавливает его после нормализации ситуации.

Габариты

Размер платы составляет 69×53 мм. Гнёзда для внешнего питания и USB выступают на пару миллиметров за обозначенные границы. На плате предусмотрены места для крепления на шурупы или винты. Расстояние между контактами составляет 0,1″ (2,54 мм), но в случае 7-го и 8-го контакта — расстояние: 0,16″.

Характеристики

  • Микроконтроллер: ATmega32U4
  • Тактовая частота: 16 МГц
  • Флеш-память: 32 КБ (из них 4 КБ занято загрузчиком)
  • SRAM-память: 2,5 КБ
  • EEPROM-память: 1 КБ
  • Рабочее напряжение: 5 В
  • Рекомендуемое входное напряжение: 7–12 В
  • Максимальный ток с пина 5V: 1 А
  • Максимальный ток с пина ввода-вывода: 40 мА
  • Максимальный суммарный ток с пинов ввода-вывода: 200 мА
  • Портов ввода-вывода общего назначения: 20
  • Портов с поддержкой ШИМ: 7
  • Портов, подключённых к АЦП: 12
  • Разрядность АЦП: 10 бит
  • Аппаратные интерфейсы: UART, I²C, SPI
  • Габариты: 69×53 мм

 

Источник: https://nadget.ru/product/iskra-neo

Espruino: JavaScript в микроконтроллере

Итак, у компьютера есть движки V8 и SpiderMonkey для JavaScript . А у микроконтроллеров есть движок Espruino . Если говорить грубо, движок Espruino — это прошивка (скетч, скетчище) для микроконтроллеров , который в свою очередь может исполнять JavaScript -код

Espruino : JavaScript в микроконтроллере — se7en.ws

Espruino : JavaScript в микроконтроллере . 31.03.2016 18:46ЖелезоКомментариев нетnews. Итак, у компьютера есть движки V8 и SpiderMonkey для JavaScript . А у микроконтроллеров есть движок Espruino .

Espruino : JavaScript в микроконтроллере — www.pvsm.ru

«Зачем?», «Что за бред?», «Извращение!», «Фу-фу-фу» — вот некоторые из многих высказываний, которые мы услышали, когда выпустили плату Iskra JS на ядре Espruino . Зачем. Когда правильный электронщик слышит, что что-то сделано на Arduino

Espruino : JavaScript в микроконтроллере — itnan.ru

Espruino Web IDE — среда программирования Espruino Firmware — JavaScript -машина, которая крутится на микроконтроллере

Espruino : JavaScript в микроконтроллере | SavePearlHarbor — savepearlharbor.com

Итак, у компьютера есть движки V8 и SpiderMonkey для JavaScript . А у микроконтроллеров есть движок Espruino . Если говорить грубо, движок Espruino — это прошивка (скетч, скетчище) для микроконтроллеров , который в свою очередь может исполнять JavaScript -код

Espruino : JavaScript в микроконтроллере / СоХабр — sohabr.net

GT Espruino : JavaScript в микроконтроллере . Блог компании Амперка, Arduino, DIY или Сделай сам, Железо, Программирование. На что похоже программирование микроконтроллеров на JavaScript . Ядро Espruino . Среда программирования.

Espruino : JavaScript в микроконтроллере — PCNEWS.RU — pcnews.ru

Espruino : JavaScript в микроконтроллере 01.04.2016 16:51. «Зачем?», «Что за бред?», «Извращение!», «Фу-фу-фу» — вот некоторые из многих высказываний, которые мы услышали, когда выпустили плату Iskra JS на ядре Espruino .

Espruino : JavaScript в микроконтроллере — m.geektimes.ru

—-Программирование похоже на… JavaScript . то что написали практически один в один С++. А кстати, что у Espruino с генерацией точной частоты? Чтобы сделать музыкальный синтезатор на Arduino, я выводил tone() на пин, затем железно соединял его с прерыванием, по которому

Espruino : JavaScript в микроконтроллере | Студия ProtoLAB — ProtoLAB.by

— Espruino Web IDE — среда программирования; — Espruino Firmware — JavaScript -машина, которая крутится на микроконтроллере ; — Железо — сами платы, которые совместимы с Espruino ; — Стандартная библиотека и внешние библиотеки; — Документация.

JavaScript в микроконтроллере — kra.terraelectronica.ru

Лёгкий, гибкий, выразительный JavaScript может исполнять не только ваш браузер, но и микроконтроллер . Благодаря open source ядру Espruino и открытой среде программирования, вы можете создавать сложные электронные устройства действительно просто. Железо.

Espruino : JavaScript в микроконтроллере — PCNEWS.RU — pcnews.ru

Espruino : JavaScript в микроконтроллере 01.04.2016 16:51. «Зачем?», «Что за бред?», «Извращение!», «Фу-фу-фу» — вот некоторые из многих высказываний, которые мы услышали, когда выпустили плату Iskra JS на ядре Espruino .

JavaScript в микроконтроллере — www.dessy.ru

Лёгкий, гибкий, выразительный JavaScript может исполнять не только ваш браузер, но и микроконтроллер . Благодаря open source ядру Espruino и открытой среде программирования, вы можете создавать сложные электронные устройства действительно просто. Железо.

Espruino : JavaScript в микроконтроллере | Амперка / Форум — forum.amperka.ru

Espruino : JavaScript в микроконтроллере . Тема в разделе «Iskra JS , Espruino , Йодо», создана пользователем ИгорьК, 4 апр 2016.

JavaScript в микроконтроллере — ron.terraelectronica.ru

Лёгкий, гибкий, выразительный JavaScript может исполнять не только ваш браузер, но и микроконтроллер . Благодаря open source ядру Espruino и открытой среде программирования, вы можете создавать сложные электронные устройства действительно просто. Железо.

Асинхронная Arduino c JavaScript — Espruino | Пикабу — pikabu.ru

arduino espruino JavaScript микроконтроллеры длиннопост. Сегодня при гуглении интерпретатора JS для ардуинки я забрел на сайт Espruino . Оказалось что я нашел нечто большее чем искал.

Источник: http://odnako.su/hi-tech/pc-hardware/-495356-espruino-javascript-v-mikrokontrollere/

Ссылка на основную публикацию