Предлагаемый Вашему вниманию драйвер шины 1-Wire не является чем-то революционным, все использованные схемотехнические решения давно известны. Причиной публикации стало желание не загромождать статью о программной реализации примитивов 1-Wire-master на основе PWM и ICP.
Читать полностью »
Рубрика «avr» - 8
Драйвер шины 1-Wire для контроллеров питанием меньше 5V
2017-02-27 в 15:02, admin, рубрики: 1wire, active pullup, arduino, avr, diy или сделай сам, ds1820, DS18B20, level shifter, Raspberry Pi, преобразователь уровней, умный дом, Электроника для начинающих, метки: 1wireПримитивы для реализации 1-Wire master при помощи PWM и ICP на микроконтроллерах AVR AtMega
2017-02-27 в 15:02, admin, рубрики: 1wire, arduino, Atmega, ATmega2560, atmega328, ATMEGA328P, avr, DS18B20, gpio, icp, interrupt, isr, protothreads, PWM, Realtime, scada, программирование микроконтроллеров, Разработка для интернета вещей, Разработка робототехникиЕсли кто-нибудь использовал linux-драйвер шины 1-Wire на основе GPIO, то наверняка замечал, что в момент выполнения обмена данными загрузка SY% подскакивает чуть ли не до ста 100% (что вполне логично для bitbang-реализации). Конечно, можно поставить специализированный контроллер шины 1-Wire с подключением через I2C DS28E17 или использовать UART, но… Все-таки использовать linux для приложений реального времени не лучшая идея. Пусть контроллер на нем занимается высокоуровневой логикой, а весь реалтайм можно вынести на отдельный процессор. Тем более, что задач для этого отдельного процессора в моем проекте более чем достаточно.
Читать полностью »
Предел минимального Hello Word на AVR составляет 0 бит
2016-10-27 в 16:33, admin, рубрики: avr, Blink, hello world, программирование микроконтроллеров2 года назад я увидел запись «Предел минимального Hello Word на AVR составляет 2 байта» на Habrahabr`е пользователя swap_map с подначиванием в конце:
Кто-нибудь напишет программу мигания светодиодом еще короче?
Тогда я посчитал, что это просто невозможно, но сейчас я смог это сделать.
Прототип робота для таймлапс-съёмки под управлением Arduino
2016-10-14 в 9:45, admin, рубрики: arduino, avr, DIY, diy или сделай сам, dslr, видео, микроконтроллеры, программирование микроконтроллеров, роботы, фотография, ФототехникаЭта статья описывает создание прототипа программируемой подвижной платформы с несколькими степенями свободы для выполнения фотосъемки зеркальной фотокамерой — для последующего монтажа таймлапс-видео. Рекомендуется ничего не понимающим в электронике и микроконтроллерах, «профессиональным разработчикам» решений на Arduino и их продавцам здесь ничего полезного нет.
Строки в кодовой памяти AVR
2016-10-06 в 7:23, admin, рубрики: avr, c++, c++11, PROGMEM, программирование микроконтроллеровВ нашей компании мы пишем программы для контроллеров серии AVR. В этой статье я опишу как мы в нашей компании создаем строки, расположенные в кодовой памяти.
Нам требовалось, чтобы следующий код не выдавал ошибок, а в итоге мы получили гораздо более мощный инструмент, чем предполагали.
const char *pStr = PSTR("Hello"); // В этом месте ошибка.
// error: statement-expressions are not allowed outside functions nor in template-argument lists
int main() {…}
Удаленный оповещатель о критических температуре и влажности на основе МК AVR и датчика DHT22
2016-09-14 в 11:32, admin, рубрики: avr, C, DHT11, DHT22, датчик влажности, датчик температуры, микроконтроллеры, МК, программирование микроконтроллеровПосле подряд 2х поломок кондиционера в серверной и последующего перегрева помещения в течение нескольких суток, встал вопрос о слежении за температурой в ней. Можно было бы ежедневно(ежечасно/ежеминутно) смотреть температуру со встроенных в сервера датчиков температуры используя интерфейс управления IPMI. Но в этом случае присутствует человеческий фактор на который, в данном случае, оказывает свое негативное осознание того, что можно было бы автоматизировать все гораздо лучше. Так случилось, что я как раз не так давно увлекся такой крайне интересной штукой как микроконтроллеры, поэтому задача автоматизации с использованием МК была новой и интересной возможностью реализовать накопленные знания в полезном для мира проекте. Читать полностью »
ТВ-таймер обратного отсчета на микроконтроллере AVR
2016-05-24 в 10:32, admin, рубрики: avr, микроконтроллеры avr, программирование микроконтроллеров, язык c
Однажды один мой друг спросил, на чем бы я сделал таймер обратного отсчета, чтобы на телевизоре показывал большие цифры. Понятно, что можно подключить ноутбук / iPad / Android и написать приложение, только ноутбук — громоздко, а написанием мобильных приложений ни друг, ни я никогда не занимались.
И тут я вспомнил, что видел в сети проекты тв-терминалов на микроконтроллере AVR. В голове сразу появилась идея объединить маленькие символы в большие и мы решили попробовать. Как-то само собой получилось, что основную работу пришлось делать мне.
Читать полностью »
Беспроводной адаптер для программирования Arduino или AVR с загрузчиком на базе ESP8266
2016-04-12 в 7:25, admin, рубрики: arduino, avr, diy или сделай сам, esp8266, ftdi, Электроника для начинающих Небольшая заметка о самодельном адаптере на базе ESP8266, позволяющем загрузить прошивку в микроконтроллер с установленным UART загрузчиком или Arduino.
Последнее время при проектировании устройств на микроконтроллерах AVR, для программирования вывожу только один 6-пиновый разъем (не ISP) для FTDI адаптера. Он позволяет и загрузить прошивку, и отладиться по UART после прошивки. Именно так сделано в Arduino, идея позаимствована оттуда. Это удобно.
Тем временем, не раз приходилось сталкиваться с ситуацией, когда нужно загрузить прошивку в микроконтроллер, но он уже в корпусе который не помещается на рабочем месте/лежит на антресоли/в другом городе/замурован в стену. В таких случаях адаптер FTDI не применим из-за короткого USB шнурка и приходилось изворачиваться с ноутбуком. Задумался о беспроводном программаторе. Тут как нельзя лучше подойдет ESP8266, ведь он обладает UART и в любом исполнении имеет хотя бы один GPIO, пригодный для перезагрузки контроллера и входа в режим программирования.
Читать полностью »
Аудио плеер на AVR
2016-04-06 в 6:34, admin, рубрики: avr, uart, Железо, звук, микроконтроллер, цап, Электроника для начинающих
Во время очередной ревизии радиоэлектронного барахла и распихивания по коробочкам мне попался контроллер AVR atxmega256a3u. Дабы развеять скуку было решено сделать некое подобие звуковой карты, а точнее ЦАП, подключаемый к компьютеру. Что из этого получилось смотрите под катом.
Читать полностью »
ATmega16 + DS18B20 + LED + Matlab-Simulink = AR
2016-03-02 в 0:30, admin, рубрики: Atmega, Augmented reality, avr, diy или сделай сам, DS18B20, Matlab, Simulink, дополненная реальность, обработка изображений, Программирование, программирование микроконтроллеров, схемотехника Задумал я как-то поиграться с датчиками DS18B20. Да не просто получить значения температуры (что умеет каждый), но и как-то ее визуализировать. Возникла простая идея. Ставим вебкамеру. Зажигаем светик на четном кадре, на не четном — тушим. Вычитаем картинку — остается только вспышка. По ней и ищем местоположение датчика, который физически привязан к светодиоду в пространстве. А дальше математическая обработка. Ну и все это в симулинке. Под катом описано как получить красивые картиночки. А для тех кто разбираться не желает — предлагаю посмотреть эксперименты в конце статьи.
Читать полностью »