Рубрика «avr» - 3

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

Датчик положения выключателя для аварийного освещения - 1

Одно из решений под катом.
Читать полностью »

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

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

Сервисный код я никогда не пытался запомнить, а мастер-код — тем более. Безуспешно перебрать на память несколько кодов я все-таки попытался. В течении нескольких минут мне пришлось угнать свой автомобиль. Трель от сирены в ушах еще потом стояла долго, так как сирена была установлена в салоне авто. Не помню почему я разместил сирену именно там — то ли по собственной лени, то ли увидел в этом какой-то смысл. Знаете, по личному испытанному ощущению, это может привести в сильное замешательство неподготовленного злодея. К моему глубокому сожалению, блок мне пришлось демонтировать. Я начал разбираться как быть дальше и что с этим делать. Кому интересно, что же вышло в итоге, прошу под кат.
Читать полностью »

Я люблю старые компьютерные игры. Люблю старое железо, но не настолько, чтобы коллекционировать его дома. Другое дело – поковырять какой-нибудь старый чип и попробовать самому что-нибудь воспроизвести, совместить старое с новым. В данной статье история о том, как я подключил AVR-микроконтроллер к YM3812, применявшуюся в таких звуковых картах как Adlib, Sound Blaster и Pro AudioSpectrum. Я не создал что-то принципиально новое, просто объединил разные идеи. Возможно кому-то будет интересна моя реализация. А может мой опыт подтолкнет кого-нибудь на создание свого ретро-проекта.

Читать полностью »

Привет!
Я живу рядом с Байкалом, и много раз бывал на нем. Это красивое озеро с чистым воздухом. Несколько лет назад озеро начало загрязняться. И вот я подумал почему бы не сделать дрона с солнечными батареями, поставить на нее двигатель, нейронный компьютер с YolloV3(нейросеть которая обеспечивает зрение компьютеру) со стереокамерой, добавить GPS и научить его чистить Байкал в автономном режиме.imageЧитать полностью »

Микроконтроллеры AVR довольно дешевы и широко распространены. Наверно, с них начинает почти любой embedded разработчик. А среди любителей правит балом Arduino, сердцем которого обычно является ATmega382p. Наверняка многие задумывались: как можно заставить их звучать?

Если посмотреть на существующие проекты, то они бывают нескольких типов:

  1. Генераторы квадратных импульсов. Генерация с помощью ШИМ или дергать пины в прерываниях. В любом случае, получается очень характерный пищащий звук.
  2. Использование внешнего оборудования типа MP3 декодера.
  3. Использование ШИМ для вывода 8 битного (иногда 16 битного) звука в формате PCM или ADPCM. Поскольку памяти в микроконтроллерах для этого явно не достаточно, то обычно используют SD карту.
  4. Использование ШИМ для генерации звука на основе волновых таблиц, подобных MIDI.

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

Заинтересовавшихся прошу под кат.
Читать полностью »

Привет!

Как то раз была у меня «работа» — нужно было сделать управление кассовым аппаратом Штрих-ФР-К. Так как моя карьера начиналась с ремонта ККТ, торешил взяться за эту работу.

image
Читать полностью »

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

Читать полностью »

Привет, Habr!

Хочу рассказать историю о том, как мне в руки попал китайский налобный фонарик на светодиоде Cree XM-L и что дальше с ним стало.

TinyFL — драйвер фонарика на микроконтроллере - 1

Читать полностью »

← Часть 2. Начало работы

Библиотека генератора ассемблерного кода для микроконтроллеров AVR

Часть 3. Косвенная адресация и управление потоком исполнения

В предыдущей части мы достаточно подробно останавливались на работе с 8-и битными регистровыми переменными. Если вы пропустили предыдущий пост, советую с ним ознакомиться. В нем там же, можно найти ссылку на библиотеку, чтобы самостоятельно попробовать выполнить приведенные в статье примеры. Тем, кто скачал библиотеку ранее, рекомендую скачать свежую версию, так как библиотека постоянно обновляется и некоторые примеры могут не работать в старой версии библиотеки.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js