Как стать автором
Обновить
132.08

Программирование микроконтроллеров *

Учимся программировать микроконтроллеры

Сначала показывать
Порог рейтинга
Уровень сложности

Переезд программирования микроконтроллеров ATMEL на MAC OS с чипами ARM

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров118

Поскольку нативная ATMEL (MICROCHIP) студия 7.0 (и все предыдущие) не работает под маками, то приходится пользовать виртуальную машину с виндой собранной под ARM. Причем эта виртуальная машина своим эмулятором запускает приложение от Intel.
И конечно никаких сходу драйверы не работают.

Что делать чтобы заработало.

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии6

Новости

Ассемблеры, 5 штук — быстрое знакомство для тех кто не знаком

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров8.6K

Статья для тех кто не знаком с ассемблерами - но хочет взглянуть "одним глазком". Мы не сделаем вас гуру разработки на ассемблере за 15 минут - но покажем ассемблеры для нескольких популярных архитектур микроконтроллеров (ARM32, AVR, MSP430, 8051) - и для настольных наших компьютеров (x86 под Linux и DOS) - чтобы увидеть их различия и сходства - и не бояться погрузиться глубже, если что-то из этого может быть вам полезно.

Наша цель не призвать всех писать на ассемблере (ассемблерах!) - это не так уж сложно, но для большинства задач не очень практично. Цель именно познакомить! Чтобы было уже не страшно изредка заглянуть в потроха какой-то отладки - или сделать какую-то оптимизацию с ассемблерной вставкой - а может вы соберетесь написать компилятор или что-то в этом духе.

Бонусом - для любопытных - ассемблер для Intel-4004 - 4-разрядного процессора которому уже больше 50 лет. К нему будет также небольшой "интерактивчик".

Кто не боится - давайте посмотрим ближе!
Всего голосов 37: ↑34 и ↓3+43
Комментарии55

Цифровые часы для дома на светодиодной ленте

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров7.5K

Про конструкцию больших часов на светодиодной ленте я уже писал в одной из своих прошлых статей. Эти часы, размером 320 на 100 см, адаптированы к установке на открытом воздухе на улице. Тогда же, 7 лет назад, сразу же после изготовления этих часов я приступил к реализации другой похожей конструкции, размером меньше, для комнаты. Данная статья, можно сказать, является дополнением той вышеупомянутой статьи. Все основные подробности изложены именно там. А здесь я расскажу про особенности, касающиеся второй менее габаритной конструкции.

Читать далее
Всего голосов 8: ↑8 и ↓0+10
Комментарии18

Нейронные сети (инференс MNIST) на «3-центовом» микроконтроллере

Время на прочтение5 мин
Количество просмотров8.6K

Вдохновившись на удивление высокой производительностью нейронных сетей и обучением с учётом квантования на микроконтроллере CH32V003, я захотел выяснить, как далеко эту идею можно развить. Насколько можно сжать нейронную сеть с сохранением высокой точности тестов на датасете MNIST? Когда речь идёт о крайне дешёвых микроконтроллерах, сложно предположить что-то более подходящее, чем 8-битные Padauk.

Эти устройства оптимизированы под простейшие и самые дешёвые приложения из доступных. Самая мелкая модель серии, PMS150C, оснащена однократно программируемой памятью в 1024 13-битных слова и 64 байтами RAM — на порядок меньше, чем в CH32V003. Кроме того, эта модель в противоположность намного более мощному набору инструкций RISC-V содержит коммерческий регистр-аккумулятор на основе 8-битной архитектуры.

Возможно ли реализовать механизм инференса MNIST, способный классифицировать рукописные числа, также и на PMS150C?
Читать дальше →
Всего голосов 74: ↑72 и ↓2+105
Комментарии5

Истории

Обзор Акселерометра LIS3DH

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.4K

В этом тексте я написал о своем опыте работы с акселерометром LIS3DH. Это трёх-осевой цифровой 12-битный MEMS акселерометр с перегрузкой 16g и управлением по I2C.

В этой заметке я изложил с какой стороны следует подходить к ASIC акселерометрам.

Читать далее
Всего голосов 9: ↑6 и ↓3+7
Комментарии71

Переходим с STM32 на GD32

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров17K

Микроконтроллеры STM32 и GigaDevice GD32 часто сравнивают из-за схожей архитектуры и совместимости. GD32 является своеобразным «клоном» STM32, использующим такое же ядро ARM Cortex-M. Основное отличие между ними — это цена, так как GD32 обычно дешевле, что делает его привлекательным для проектов с ограниченным бюджетом. Однако несмотря на схожесть, существуют различия в характеристиках и уровне поддержки, которые могут повлиять на выбор между этими двумя семействами микроконтроллеров.
Читать дальше →
Всего голосов 62: ↑60 и ↓2+77
Комментарии94

Проект крошечной радиоуправляемой машины, вдохновленный Марио Карт

Время на прочтение1 мин
Количество просмотров3.6K

Ранее радиоуправляемые (RC) автомобили были довольно простыми. Они могли ездить вперед, назад и управляться, если у вас был полнофункциональный игрушечный автомобиль. Однако, с современными технологиями их легко сделать более продвинутыми, что StuckAtPrototype замечательно продемонстрировал своими гоночными микроавтомобилями.

Каждый RC-автомобиль управляется собственным ESP32, связанным через контроллер двигателей с мотор-редукторами постоянного тока на каждом колесе. Энергия поступает от литий-полимерной батареи на борту автомобиля, заряжаемой посредством USB-C. Шасси и корпус построены с использованием напечатанных на 3D-принтере деталей. StuckAtPrototype спроектировал автомобили таким образом, чтобы ими можно было управлять как при помощи мобильного приложения, так и посредством авторского RC-контроллера. Когда к автору пришло понимание, насколько трудно поддерживать приложения, он отдал предпочтение последнему варианту. Он также снабдил автомобили небольшим датчиком, способным считывать цветовые паттерны на пути следования и соответствующим образом менять свое поведение. Это позволило реализовать игровой процесс, подобный Mario Kart, где касание цветового пятна могло заставить автомобиль ехать быстрее, медленнее или вращаться.

Читать далее
Всего голосов 9: ↑7 и ↓2+11
Комментарии4

Митап FPGA-Systems: RnD-цикл современных SoC, физическая имплементация для FPGA и ASIC, обзор систем прототипирования

Время на прочтение3 мин
Количество просмотров1.3K

26 октября в 11:00 стартует первая осенняя встреча сообщества FPGA-Systems, организованная совместно с YADRO. Инженеры поделятся опытом и расскажут про разработку ASIC, физический дизайн, новый чип AG32 от AG micro и многое другое. Митап интересен не только программой, но и открытой демозоной с наработками инженеров — приходите лично, чтобы посмотреть на FPGA во плоти.

Регистрируйтесь, чтобы попасть на митап в Питере или получить ссылку на трансляцию в VK, YouTube или Rutube, где можно будет задать вопросы спикерам.

Изучить программу
Всего голосов 7: ↑7 и ↓0+11
Комментарии5

Разыменовываем NULL на RISC-V ядре scr1

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров4K

Во время работы в ASIC дизайн центре я потратил немало времени на отладку ошибок и падений ядра, просматривая временные диаграммы на шинах AXI от процессора к памяти. Иногда оказывалось, что адрес чтения из памяти оказывался 0x00000000 - классический случай разыменования нулевого указателя в C. На системах с ОС это приводит к известному всем C программистам segfault-у. И в bare metal системах разыменование NULL может приводить к интересным ситуациям. В этой статье рассмотрим, что происходит при разыменовании NULL, используя для пример open source RISC-V ядро scr1 и open source инструмент симуляции RTL Verilator.

Читать далее
Всего голосов 23: ↑23 и ↓0+31
Комментарии6

Готовимся организовать совместный русско-украинско-мексиканский семинар по ПЛИС в Мексике, возможно привлечем и беларусов

Время на прочтение2 мин
Количество просмотров3.4K

Инструкции к открытым примерам basics-graphics-music (BGM) теперь доступны на 5 языках: английском, испанском, русском, украинском и белорусском. Эти примеры используются в России и Беларуси (Школа Синтеза Цифровых Схем), Калифорнии (Verilog Meetup), Армении, Азербайджане и других местах.

Прошу всех владеющих языками и ПЛИС зайти под кат, скачать и проверить. Инструкции короткие.

Читать далее
Всего голосов 27: ↑20 и ↓7+23
Комментарии10

Синтез Цифрового БИХ Фильтра Низких Частот

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.1K

Мне потребовалось синтезировать быстрый цифровой фильтр нижних частот. Причем этот фильтр должен работать в реальном времени на микроконтроллере. Тут я понял, что надо вспоминать с какой стороны следует подходить к цифровым IIR фильтрам.

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

Далее я покажу некоторые приёмы расчета IIR фильтра по известным коэффициентам.

Читать далее
Всего голосов 10: ↑8 и ↓2+11
Комментарии15

GPIO STM32, альтернативный вариант

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3.2K

Когда в 2011 году я переходил c atmega8 на stm32, меня очень вдохновил проект opencm3. Но вдохновил не на его изучение, а на написание похожего. На сегодня в моём варианте почти библиотеки есть макросы регистров для микроконтроллеров серий stm32f10x и stm32f40x, stm8s003, nrf51, nrf52, rp2040, и cc2640/1310. Реально же протестирована из этого списка только stm32f103. Кроме регистров для 103-й я написал базовые функции для включения/выключения тактирования периферии и управления портами ввода‑вывода. А также написаны примеры для USB профилей HID gamepad, HID keyboard и USB serial port. В этом же посте задокументирую функции портов и тактирования.

документация к c-шникам
Всего голосов 6: ↑6 и ↓0+9
Комментарии17

Простой АМ/ЧМ радиоприёмник с феноменальной чувствительностью

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров29K


Эта скромная маленькая плата питается от двух пальчиковых батареек и невыгодно отличается от других распространённых разновидностей подобных радиоконструкторов тем, что выдаёт монофонический звук. Однако чувствительность у данного приёмника просто потрясающая.

Он успешно ловит сигналы далёкой средневолновой радиостанции на крошечную магнитную антенну, что мы услышим на видео. Причём это происходит в помещении с очень плохими условиями радиоприёма. Местные ультракоротковолновые станции также слышно хорошо, в той же комнате, на провод наушников в качестве антенны.

И это далеко не всё, на что способна дешёвая программируемая микросхема KT0936M, о которой я расскажу много интересных подробностей.
Читать дальше →
Всего голосов 39: ↑39 и ↓0+52
Комментарии34

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Quake на плате микроконтроллера с 276 килобайтами ОЗУ

Время на прочтение14 мин
Количество просмотров7.8K

Введение


В прошлом году в рамках празднования 30-летней годовщины Doom мы продемонстрировали его порт для платы Sparkfun Thing Plus Matter MGM240P. В этом году мы портируем Quake на плату Arduino Nano Matter.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+26
Комментарии6

Декодирование BPSK Модуляции из Звука (или передача данных по воздуху)

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.7K

В этом тексте я реализовал возможность передачи бинарных данных звуком через BPSK модуляцию. Написал инструкцию как это можно делать.

Вся обработка происходит в post processing режиме на PC над записанным wav файлом.

Изучение ЦОС на примере работы со звуком - это доступная каждому возможность для экспериментов с различными алгоритмами DSP.

Читать далее
Всего голосов 25: ↑23 и ↓2+26
Комментарии44

Коммуникации ПЛК

Время на прочтение5 мин
Количество просмотров3.6K

Как и в случае со многими функциями внутри программируемых логических контроллеров, мы можем обнаружить системы связи, встроенные непосредственно в модуль центрального процессора или установить дополнительные модули для расширения системы и повышения ее гибкости. Добавление усовершенствованных коммуникационных модулей в систему связи контроллеров является важным строительным блоком современных ПЛК. В какой-то мере модули, интерфейсы и системы связи, обеспечивающие сетевое соединение, способствуют превращению традиционных ПЛК в контроллеры автоматизации (ПАК).

Читать далее
Всего голосов 4: ↑3 и ↓1+5
Комментарии4

Как запустить свое электронное устройство в «серию» и не остаться без штанов

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров15K

В общих чертах про разработку электроники, изготовление пластикового корпуса, поиск исполнителей и примерные цены на серийный выпуск.

Читать далее
Всего голосов 30: ↑30 и ↓0+41
Комментарии96

Реализация поддержки кириллицы в терминале для МК AVR

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров972

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

Читать далее
Всего голосов 3: ↑3 и ↓0+7
Комментарии3

Новые технологии и древние звуки

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров2.3K

Привет всем, это статья про DIY разработку и изготовление оригинального музыкального инструмента.

Когда-то я увидел электронный конструктор «арфа» где на рамке стояло 7 лазерных диодов и простой генератор тона. И вот захотел сделать лучше и больше – начался проект Оптоарфа.

Как и всегда, мне неважно, есть ли такое изделие в мире, важно желание творить и привнести свои идеи =). Какие были выбраны решения, как воплощались через тернии, случилась ли труба или арфа – читайте ниже

Читать далее
Всего голосов 19: ↑19 и ↓0+25
Комментарии40

Игры на промышленных девайсах? Легко! Портируем эмуляторы и Wolfenstein 3D на ТСД за 500 рублей на практике

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров5.3K

Дисклеймер: употребляемые слова ‭вроде «портируем‭», ‭«хакаем‭» и ‭«реверсим‭» совсем не значат, что статья предназначена исключительно для гиков! Я стараюсь писать так, чтобы было понятно и интересно абсолютно всем!

Наверняка многие мои читатели так или иначе слышали новости о том, что известные игры были портированы на самые разные платформы. В какой-то момент к такой же идее пришёл и я, однако мне хотелось портировать игры и эмуляторы на довольно диковинные промышленные девайсы, которые работают на платформе Windows CE. Как я портировал Wolfenstein и эмулятор NES на бравого, но списанного в утиль трудягу склада и зачем? Читайте в сегодняшней подробнейшей статье!

Читать далее
Всего голосов 43: ↑41 и ↓2+57
Комментарии18
1
23 ...

Вклад авторов