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

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

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

Стена группы

Загрузка...
3 месяца назад
#

Неудача с часами на ATMega48



Преотличнейшие часы на завалявшемся жк-индикаторе и супермикросхеме ATMega48. Но не получились.





Источник
Загрузка...
3 месяца назад
#

Что нам стоит ЧПУ привод построить



Не так давно я озаботился вопросом, как бы сделать привод для систем ЧПУ на коллекторном двигателе, да еще и с обратной связью, и что бы работал по Modbus RTU.

В распоряжении у меня имелись, Arduino UNO, Драйвер на L298N, коллекторный двигатель от привода сиденья автомобиля марки AEG на 12В, щелевой фотопрерыватель 2 шт.

Источник
Загрузка...
3 месяца назад
#

Операционные системы с нуля; Уровень 1 (младшая половина)



Эта часть посвящена улучшению навыков работы с Rust и написанию парочки полезных утилиток и библиотек. Напишем драйверы для GPIO, UART и встроенного таймера. Реализуем протокол XMODEM. Используя это всё, напишем простенький шелл и загрузчик. Перед прочтением настоятельно рекомендуется убедиться в прочтении Книги. По крайней мере от начала и до конца. Для ленивых, но чуть более опытных можно рекомендовать это. На русском можно поковырять вот тут.



Ну и разумеется обходить стороной нулевой уровень совершенно не стоит. Алсо где-то половина этой части не требует малинки.



Источник
Загрузка...
3 месяца назад
#

Почему embedded-разработчикам следует использовать статический анализ кода



Поверь в статический анализ кода!

Решил кратко сформулировать 3 причины, по которым embedded-разработчикам полезны инструменты статического анализа кода программ.

Источник
Загрузка...
3 месяца назад
#

Адское программирование голого железа



Доброго времени суток! Обидно мало статей посвящено адскому программированию замечательному языку программирования Ада, а уж тем более нет их по программированию на нем для микроконтроллеров. А ведь сам язык даже позиционируется как язык встроенных систем… Может, это очень сложно?

Постараюсь в этой небольшой заметке привести классический пример программы мигания светодиодом, но на Аде, с тем, чтобы все желающие могли повторить.

Источник
Загрузка...
3 месяца назад
#

Тестирование проектов C/C++ с помощью Python



Введение

Хорошо известна возможность интеграции Python и C / C++. Как правило, этот прием используется для ускорения программ на Python или с целью подстройки программ на C / C++. Я хотел бы осветить возможность использование python для тестирования кода на C/C++ в IDE без поддержки системы организации тестов в IDE. С моей точки зрения это целесообразно применять в сфере разработки программного обеспечения для микроконтроллеров.

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

При разработке программ для микроконтроллеров, я сталкивался с отсутствием стандартного ввода / вывода (конечно можно переопределить функции ввода вывода и в симуляторе, выводить данные через UART — но часто UART уже задействован, да и симулятор работает не всегда корректно) и большими рисками вывести из строя аппаратное обеспечение ошибочной бизнес логикой. На стадии разработки, я реализовывал отдельные проекты, тестирующие части программы и далее на меня ложилась ответственность за запуск всех тестовых приложений после внесения изменений. Конечно, это все можно автоматизировать. Так можно работать, но я нашел способ лучше.

Источник
Загрузка...
3 месяца назад
#

Операционные системы с нуля; Уровень 0





Добрый день/вечер/ночь/утро! Есть один экспериментальный курс по операционным системам. Есть он в Стэнфордском университете. Но часть материалов доступно всем желающим. Помимо слайдов доступны полные описания практических занятий.



Чем этот курс отличается от прочих других? Большая часть кода пишется самостоятельно и выполняется на вполне реальном современном железе. В качестве целевой платформы выбран Raspberry Pi 3 model B. Т.е. достаточно актуальная архитектура AArch64. ARMv8 Cortex-A53, четыре ядра, 64-бита и вот это всё. В качестве основного языка программирования выбран Rust. Который безопасный, быстрый, без GC и так далее. Его, Rust, предполагается изучать во время курса.



Тут есть про диски, файловые системы, операции ввода-вывода, потоки /процессы, планирование, виртуальную память, защита и безопасность, прерывания, параллелизм и синхронизацию. Как и в любом другом, уважающем себя курсе. Разница в актуальности материала и в количестве практики. Коддить придётся много.



Источник
Загрузка...
3 месяца назад
#

Микро-курс по программированию контроллеров SCADAPack на Си



image

На Хабре откровенно мало статей про АСУ ТП. Более того, подозреваю, что программирование в отрасли промышленной автоматизации для большинства хабровчан — некий магический темный лес со странными легендами и существами. И вот мне захотелось провести небольшую экскурсию по этому лесу в познавательных целях, но познавательными целями ограничиваться не будем, и постараемся, чтобы данный материал был полезен людям, только начинающим свой путь в АСУТП, либо впервые столкнувшимися с рассматриваемым типом контроллеров.

Источник
Загрузка...
3 месяца назад
#

Всего понемногу: автомобиль, облако, Raspberry Pi и CAN



Развлекательный центр (in-vehicle infotainment, IVI) стал неотъемлемой частью современного автомобиля. Если раньше это был просто радиоприемник, затем кассетный магнитофон, потом музыку можно было слушать просто с флэшки, а теперь едва хватает двух дисплеев по 10.25-дюймов для приборной панели и развлекательного центра в новом Mercedes A-класса. Кстати, IVI – это уже не только музыка, но и навигация, доступ к Интернет и многие другие возможности внутри транспортного средства, которые потихоньку дают старт воплощению концепции «подключенного автомобиля» (Connected Car). Пожалуй, автотранспорт так же очень близок к реализации концепции Интернета вещей (IoT). И все это достигается благодаря «ассимиляции» компьютера и автомобиля.

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



Image: Bringing its A game: new 2018 Mercedes A-class hatch revealed – CAR Magazine

Источник
Загрузка...
4 месяца назад
#

«Привет, Хабр» на частоте 835 кГц





Как-то раз в голове возникла мысль, а что бы сделать такое, чтобы скрестить старый радиоприемник в деревянном корпусе и современный контроллер для интернета-вещей ESP32? То ли с головой не так что-то, то ли делать мне нечего, но скрестить получилось. Не шаблонно, в целом, хотя судить вам, дорогие читатели Хабра). За подробностями прошу под кат.

Источник
Загрузка...
4 месяца назад
#

Все американские патенты MPEG-2 истекли



13 февраля 2018 года истёк последний американский патент из большого патентного пула, описывающего группу стандартов цифрового кодирования видео- и аудиосигналов MPEG-2. Последний патент принадлежал компании Thomson Licensing (
US 7,334,248). См.
полный список всех патентов MPEG-2.

MPEG-2 по-прежнему широко используется в эфирном вещании по всему миру и в телевизионном производстве благодаря низким требованиям к аппаратному обеспечению при обработке видеосигнала по сравнению с более современными видеокодеками, такими как проприетарные H.264 (AVC) или H.265 (HEVC).

Источник
Загрузка...
Den
4 месяца назад
#

Отладка Embox на STM32





Добрый день! Ввиду того, что люди спрашивают как загрузить
Embox на отладочные платы на базе STM32, мы решили выпустить этот рецепт. Его можно рассматривать как дополнение к
статье.

Описание будет для отладочной платы STM32F7-Discovery, но в целом оно верно и для других серий STM32 (по ходу будут приведены уточнения для STM32F4).

Источник
Загрузка...
4 месяца назад
#

Плата BLE400 и разработка под nRF51822



Для разработки под микроконтроллер nRF51822 существует несколько комплектов от Nordic Semiconductor, все они достаточно дороги зато обеспечивают возможность удобной работы без возни с программаторами. При этом у китайских производителей можно обнаружить платы облегчающие отладку контроллеров за смешные деньги. Статья посвящена работе с клоном платы от Waveshare которая продаётся под названием
BLE400.



Источник
Загрузка...
Den
4 месяца назад
#

Pi-Sonos v2.0 или эволюция интернет-радио на Raspberry Pi



imageКак известно, нет предела совершенству. Даже для самодельной портативной акустики, чья аудитория пользователей включает только одного человека. Весьма требовательного и местами маниакально упорного человека. После выхода
первого поста про Pi-Sonos прошло почти 5 месяцев. За это время софт внутри этой акустики успел дважды кардинально поменяться. Поводом для изменений послужили как полезные советы хабравчан, так и собственный UX.

Источник
Загрузка...
4 месяца назад
#

8-битный компьютер с BASIC и VGA-выходом на Arduino



C помощью Arduino можно собрать 8-битный ретро-компьютер с Basic (похожий на ZX Spectrum) с выводом цветного изображения на VGA-монитор.

Кроме того, этот проект можно использовать как простой способ вывода текстовых сообщений на монитор.



Сама по себе, идея использовать Arduino для создания компьютера с BASIC не нова, но насколько я знаю, все они не поддерживают вывод цветного изображения. В некоторых проектах использовались LCD-мониторы, а в других — библиотека
TVout, которая выводит чёрно-белое изображение. Кроме того, многие из этих проектов требуют дополнительные модули и специальные платы расширения. Тут же нужно всего-то иметь два Arduino, несколько резисторов, плюс разъёмы для PS/2 клавиатуры и VGA-монитора.

Для проекта нужно две платы Arduino: один будет основным (или «мастером»), в нём работает интерпретатор Tiny Basic Plus (это порт Tiny Basic на языке Си, адаптированный для поддержки Arduino). Также этот Arduino управляет PS/2 клавиатурой. Вывод из первого Arduino через последовательный порт отправляется на второй Arduino, который с помощью библиотеки
VGAx генерирует VGA-сигнал.

Программу на языке BASIC в собранный нами компьютер можно будет ввести с помощью PS/2 клавиатуры, а результат можно будет посмотреть на VGA-мониторе: разрешение получившегося изображения 24 столбца на 10 строк, размер символов — 5х6 пикселей, доступно 4 цвета.

После введения программы, её можно будет сохранить в энергонезависимой памяти самого Arduino, а также код программы предусматривает управление I/O пинами Arduino.

Источник
Загрузка...
1 2 4 5

Авторизация

Пользователи

Seangle
Галя Рубцова
Ольга Телюкова
Zhenya
Лариса Аксиненко
Dmitry Loginov
Dimas Potapov
Ваня Берёзкин
Володя Рудомаха