
Программирование микроконтроллеров *
Учимся программировать микроконтроллеры
Visual C++ for IoT Development: Прорыв или разочарование?
Как известно мир не стоит на месте и активно развивается. Особенно в сфере IT и конкретно разработки ПО. Самое трудное в этом деле это уследить за всеми новинками и выхватить наиболее ценные и полезные из них. Вот и я только недавно наткнулся на дополнение к Visual Studio под названием Visual C++ for IoT Development, которое существует уже почти год. Потенциально — очень полезная штука, но пока это больше яркое название, чем настоящее Visual C++ для IoT. Давайте разберемся почему.
Отладочная плата ПЛИС — Франкенштейн. Часы. Altera EPM7064 VS Lattice LC4064v
Продолжение предновогодней серии приключений маленькой ПЛИС Altera EPM7064 на отладочной плате — Франкенштейн. В предыдущей серии...
Настала пора сравнить две ПЛИС из одной весовой категории: Altera EPM7064 и Lattice LC4064v. Хотя, один у них — только вес — это 64 макроячейки. В остальном, судя по параметрам, у этих ПЛИС совсем разные назначения. ПЛИС от Altera, судя по документации 2005 года, является просто не молодой, от этого и обладает низким количеством ячеек. Так же, обладает популярным по тем временам напряжением питания — 5 вольт. Максимальная рабочая частота не превышает 200 МГц. В то же время Lattice может работать до частот в 400 МГц, но при этом, питается от напряжения — 3.3 вольта. Да, это не так удобно, как 5 вольт, если мы хотим взаимодействовать со старыми схемами (однако, заявлена толерантность к 5В). В документации на Lattice этой серии указан 2014 год, поэтому я предположу, что это современные высокоскоростные ПЛИС, но малого объема, и судя по "SuperFAST CPLD" в описании, позиционируются они несколько иначе.
Как нам их сравнить? Попробуем решить на них одну и ту же задачу. Часы на Lattice LC4064v мы уже попробовали сделать и у нас получилось. Теперь попробуем сделать часы на Altera EPM7064 — на нашем Франкенштейне.
Настольный пульт управления на JavaScript/Node.js для робота на Ардуине

Теперь пульт управления для своего станочка с ЧПУ сделать не сложнее, чем написать сайтик.
Можно скачать материалы семинара Nanometer ASIC (РОСНАНО / МИСиС / Imagination Technologies) — ликбез по всему про чипы
Несмотря на то, что для профессиональных спецов по использованию Synopsys IC Compiler семинар был слишком элементарный, но его вводный характер искупился его широтой — инженеры из всей цепочки проектирования и производства могли освежить в памяти области, которые они забыли, инвесторы в полупроводниковой индустрии смогли посмотреть что делают компании, в которые они инвестируют, студенты посмотрели, что им может нравится и так сказать куда копать (в полупроводниковой индустрии Silicon Valley молодые инженеры специализируются в логический / физический / аналоговый дизайн довольно рано в своей карьере).
Ведущий семинара, лектор Калифорнийского университета в Санта-Крус (отделение в Кремниевой долине) Чарльз Данчек (Charles Dancak) отвечает на вопросы:

Скачать все слайды на русском можно здесь.
Под катом — избранные слайды Nanometer ASIC (25 из 322):
Строки в кодовой памяти AVR
Изначально требовалось, чтобы следующий код не выдавал ошибок, а в итоге получили гораздо более мощный инструмент, чем предполагали.
const char *pStr = PSTR("Hello"); // В этом месте ошибка.
// error: statement-expressions are not allowed outside functions nor in template-argument lists
int main() {…}
Микросхемы с разных сторон: семинары Nanometer ASIC, MIPSfpga и Connected MCU в России, Украине и Казахстане

Стремитесь узнать про все этапы проектирования и производства микросхем от идеи до фабрики? Хотите построить прототип своей собственной системы на кристалле используя микросхемы ПЛИС? Интересуетесь программированием микроконтроллеров и операционными системами реального времени? Тогда приходите на семинары, которые совместно организовали американские, российские и украинские компании и университеты. Эти семинары будут проходить в Москве, Зеленограде, Санкт-Петербурге, Киеве и Алма-Ате во второй половине октября и первой половине ноября:
- Nanometer ASIC — двухдневный семинар, описывающий все этапы проектирования и производства микросхем: создание спецификации, описание цифровой логики на языках описания аппаратуры Verilog и VHDL на уровне регистровых передач, логический синтез, размещение и трассировка, создание фотошаблонов и производство микросхем на фабрике. Для проведения этих семинаров из Калифорнии приезжает Чарльз Данчек, преподаватель такого курса в University of California Santa Cruz Extension in Silicon Valley. В Москве семинары проходят под эгидой Фонда инфраструктурных и образовательных программ (ФИОП) РОСНАНО и его дочерней компании eNANO.
- MIPSfpga — устройство систем на кристалле, протоколы внутри чипа и вне чипа, интеграция процессорного ядра с памятью и устройствами ввода-вывода, наблюдение работы кэша и конвейера промышленного процессора на плате с ПЛИС. Семинары проводятся под эгидой британской компании Imagination Technologies, известной как разработчик графического процессора PowerVR внутри Apple iPhone.
- Connected MCU — введение в использование микроконтроллеров, организация параллельности на одном процессоре, использование прерываний, таймеров, конечных автоматов реализованных в софтвере, и наконец — введение в RTOS и лабораторное занятие с использованием операционной системы FreeRTOS. Материалы семинаров подготовлены профессором Александром Дин из университета Северной Каролины в сотрудничестве с Imagination и Microchip Technology.
Знакомство: BBC micro:bit и mbed OS 5
Предположим, micro:bit приобретён; что с ним делать дальше? Я решил сделать из него часы, потому что мои наручные как раз сломались.

Инструкция по использованию micro:bit со старой версией mbed OS есть на сайте Ланкастерского университета; но ARM две недели назад выпустила новую версию mbed OS 5, и с этой новой версией библиотека поддержки microbit-dal «из коробки» не работает.
Насколько я понимаю, даже в самом ARM никто ещё не пытался использовать mbed OS 5 на micro:bit; мне хотелось стать первым.
Intel Edison, Windows Phone и Microsoft Azure: облачный союз пульта и светодиода

Atmel Software Framework (ASF): как это работает?
Немного теории
Atmel Software Framework (ASF) — программная библиотека, которая содержит широкий набор встраиваемого кода для микроконтроллеров Atmel всех семейств: megaAVR, AVR XMEGA, AVR UC3 и SAM.
Основные преимущества:
- Упрощается использование и освоение микроконтроллеров, так как библиотека написана на высоком и среднем уровнях абстракции;
- ASF разработана для использования на любой стадии проектирования;
- ASF интегрирована в Atmel Studio с графическим пользовательским интерфейсом, но также может использоваться с компиляторами IAR и GCC;
- ASF бесплатна.

Arduino совместимая плата OLIMEXINO-85S размером с microSD карту

Ближайшие события
MultiClet: осваиваем SPI на примере работы с LCD
Квест первый
Сразу после подключения система радостно обнаружила спаренное FTDI-устройство, создав сразу два ttyUSBx-девайса. И тут дилемма — либо использовать Serial-консоль, либо иметь возможность заливать прошивки, — идущий в комплекте загрузчик работает напрямую с FTDI-устройством. Пришлось на коленке рисовать скрипты для «правильной» загрузки модуля ftdi_sio. Наколенность проявила себя в использовании питоновских биндингов к библиотеке ftd2xx. Общая суть сводится к выгрузке модуля, блокированию FTDI, используемого для прошивки, и одновременной с этим загрузке модуля обратно. Тогда ядерный модуль может заблокировать оставшийся FTDI для UART.
Hello, world! — слишком банально
Простенький «Hello, world!» с мигающими LED заработал сразу, только обнаружилось, что после прошивки линуксовым mc-ploader'ом необходимо дополнительо сбросить плату или подожать, пока сработает WDT.
Когда-то зимой заказывал себе пару SPI-экранчиков HY28A, но с нашей почтой пришли они только в мае. Тут и решение само пришло — начать с экранчика. Вооружившись USB'ым логическим анализатором SYSCLK DX, полез штудировать спеки на регистры GPIO и SPIx в процессоре MCp и ковыряться в примерах использования SPI.
Альтернативный подход к проектированию ПО для Embedded
MKA — DIY-куб на ESP32-C3: одна кнопка, OLED-дисплей, динозаврик и немного глюков

Привет Хабр, сразу скажу, что я не особо программист, но хотелось поделиться хобби и может собрать соплеменников и единомышленников.
Итак, начнем....
Почему вообще делать самодельный кубик, который ещё и глючит, но при этом умеет запускать игры вроде пресловутого «динозаврика» из Chrome? Вопрос резонный. Но, как говорится, «почему бы и нет?». Представляю проект MKA – небольшой куб с OLED-экраном, одной сенсорной кнопкой, пищалкой и кастомной прошивкой. Он получился чем-то средним между тамагочи, ретро-миниконсолью и электронным pet rock (если помните такую шутку). В этой статье – немного дневника разработки и технических деталей о том, как и зачем я его собрал.
FC7300F8MDT: Lockstep (или как МК выявляет сбои)

Системы Lockstep — это отказоустойчивые компьютерные системы, которые выполняют один и тот же набор операций одновременно и параллельно.
Происходит избыточность (дублирование), которое позволяет обнаруживать и исправлять ошибки: выходные данные операций Lockstep можно сравнить, чтобы определить, произошла ли ошибка.
В русских клубах Америки можно делать не только дискотеки и выступления писателей, но и митапы по FPGA

В городах Америки и Канады, где живут много наших соотечественников, существуют русские клубы, в которые ходят на дискотеки и викторины, для игру в мафию и на выступления писателей. В столице Калифорнии городе Сакраменто, где живет около 80 тысяч русских и украинцев, а также есть армянский и молдавский рестораны, таким клубом является Synergy Social Club.
В этом клубе я недавно провел просветительский митап по главной технологии современной цифровой микроэлектроники: маршруту проектирования RTL-to-GDSII для микросхем в массовых изделиях типа смартфонов, и связанной с этим маршрутом технологии FPGA, которые применяются для прототипирования ASIC-ов и обучения в университетах будущих проектировщиков.
Эти технологии полезны в наше тревожное время для надежного трудоустройства в самых разных местах: от производителя ракет Lockheed Martin до производителя айфонов Apple. Вот примеры объявлений:
Настройка ToolChain-a для программирования MCU FlagChip FC7300F8MDT

FC7300F8MDT — это микроконтроллер компании FlagChip as FlagShip.
В этом тексте я показал, как можно запрограммировать микроконтроллер FC7300F8MDT, буквально на пустом компьютере.
Настройка ToolChain-а Cборки Прошивок для MIK32 (K1948BK018 + C + GCC + GNU Make + OpenOCD)
В этом тексте я написал про то, как настроить рабочее окружение для разработки на российском микроконтроллере MIK32 (K1948BK018).
Вклад авторов
YuriPanchul 2425.0MaFrance351 2040.0aabzel 1659.2smart_alex 1538.4EasyLy 1342.6Indemsys 1296.0iliasam 1090.6vladkorotnev 750.0dlinyj 741.0VBDUnit 696.0