Сегодня хочу рассказать о своем опыте в работе с AVR-микроконтроллерами.
Читать полностью »
Рубрика «avr» - 10
Беспроводные часы-термометр
2015-08-03 в 10:05, admin, рубрики: avr, c++, DIY, программирование микроконтроллеров, РадиотехникаКак мы робота «WayBot» собирали или цикл статей «Как стать инженером». Часть 1
2015-07-24 в 9:50, admin, рубрики: avr, diy или сделай сам, Raspberry Pi, корпус, Разработка робототехникиВ 2013 году на научной выставке в Москве я увидел интерактивного промо-робота. Идея показалась мне интересной, но опыта для построения копии у меня не было. В то время я заканчивал 4 курс университета и работал на себя в сфере систем безопасности. Ходил в детстве на радиокружок, хорошо понимал зачем нужны те или иные радиоэлементы, но вот с программированием микроконтроллеров и настройке unix-like систем опыта не было. Для получения опыта в этой сфере я решил собрать копию этого робота, улучшив некоторые моменты. Конечно сразу стартовать с такого проекта было бы глупо, и в качестве теста был собран 3д-куб 5х5х5, потом увлёкшись идеей был собран 3д-куб посерьёзней разрешающей способностью 10х10х10 пикселей:
Набравшись ещё опыта на несложных проектах, было решено приступить к давней идее, а именно собрать промо-робота. В лучших традициях жанра на кухне вечером обсудили функционал и заложили основные принципы построения. Если с платформой и технической реализацией было в принципе понятно, то как сделать корпус, голову, и вообще красивый внешний вид, понятия мы не имели.
Читать полностью »
Bus Blaster — универсальный скоростной bit-bang интерфейс для терпеливых энтузиастов
2015-06-13 в 17:23, admin, рубрики: avr, bit-bang, bus blaster, cpld, diy или сделай сам, FT2232H, ft232, ftdi, I2C, jtag, mpsse, SPI, xilinx, ПЛИС, программатор, метки: bus blaster
Мне давно хотелось иметь какой-нибудь простой и универсальный аппаратный интерфейс с несколькими входными и выходными сигналами, функциональность которого определяется исключительно софтом, вроде достопамятного программатора PonyProg. И чтобы его можно было использовать не только как чтения/записи прошивок, но и для отладки программ через JTAG. При этом покупать что-либо промышленное, при моем нерегулярном баловстве с электроникой, избыточно и нерентабельно — требовалось что-то из серии «полуфабрикатов», на основе bit-bang.
С переходом на 2k/XP возникли сложности с прямым доступом к портам ввода/вывода, но они успешно решались костылями вроде giveio. Гораздо сильнее портила жизнь более высокая фоновая активность в NT, из-за которой сложнее было выдержать стабильность передачи и приема.
Как известно, на современных компьютерах, тем более — ноутбуках, с аппаратными портами не густо, ибо большинству пользователей они не нужны. USB-адаптеры для подключения устройств с интерфейсами RS232 и Centronics (в просторечии — COM/LPT) хорошо работают лишь в рамках основного назначения, а делать на них «дрыгоножество» проблематично по целому ряду причин. Во-первых, большинство этих адаптеров умеет обрабатывать с хорошей скоростью только сигналы данных (те же Tx/Rx), а управляющие сигналы обрабатывает с большими задержками. Во-вторых, адаптеры различных производителей аппаратно несовместимы, а возможности нестандартного управления через драйвер производителя сильно ограничены. В-третьих, для передачи команд адаптеру почти все драйверы используют отдельные USB-пакеты, что ограничивает частоту смены состояний всего тысячей раз в секунду, чего для многих применений катастрофически мало.
К счастью, компания FTDI уже давно предлагает ряд решений для USB, ориентированных именно на скоростной обмен произвольными сигналами. Беглое изучение вопроса показало, что наиболее популярны в этом плане интерфейсы на микросхемах FT232H/FT2232H.
Читать полностью »
Управление GSM модулем с AVR
2015-04-22 в 7:47, admin, рубрики: avr, diy или сделай сам, gsm, pinboard ii, sms, метки: GSM, SMSИдея проекта: спроектировать устройство на базе микроконтроллера AVR для управления готовым GSM модулем (я выбрал модуль TC35 от SIEMENS, но можно использовать любой другой, если используется связь через последовательный порт RS232). Устройство должно быть компактным, минимально простым и надёжным.
Отправка заранее записанного в память сообщения на указанный номер должна выполняться после нажатия кнопки. Всего нужно было 6 кнопок для отправки на 6 различных номеров. Для индикации процессов были выбраны 3 светодиода (Ready, Send, Error), но в последствии был добавлен алфавитно цифровой LCD 16x2 (скорее, для отладки устройства, чем для обычного использования).
Проектировалось всё дело на плате Pinboard II (Rev 2) со стандартным процессорным модулем на ATmega16. На готовом устройстве схема была немного другой (и микроконтроллер использовался ATmega8). Программа писалась в AVR Studio 4.19. В проекте были использованы различные заголовочные файлы (#include) для переключения между Pinboard и готовым устройством.
Общая схема системы:
История создания еще одного робота. Часть вторая, «it’s alive!»
2015-04-20 в 20:43, admin, рубрики: avr, DIY, diy или сделай сам, linefollower, qt, ЛУТ, программирование микроконтроллеров, роботы, Электроника для начинающих Продолжаю серию публикаций о создании простого колесного робота на микроконтроллере ATmega16A.
Во второй части моей публикации я опишу процесс создания и сборки своего робота. Начнем с изготовления печатной платы и закончим видео первых шагов (правильней сказать — прокручивания колес) нашего устройства. Также уделю внимание первому опыту программирования под PC в Qt, а именно созданию программы управления и обмена данными с роботом по Bluetooth.
Если хотите, можете ознакомится с первой публикацией и узнать с чего все началось, ну а всех остальных прошу под кат.
Читать полностью »
Как приручить 3D принтер Cubify Cube 2
2015-04-09 в 6:37, admin, рубрики: 3d-принтер, arduino, avr, diy или сделай сам, механика, хак, электроникаНедавно достался мне вот такой принтер:
Множество плюсов: качественная сборка, красивый корпус, приемлемое соотношение качества к скорости печати и габариты очень подходящие для дома.
Но есть 2 существенных минуса.
Читать полностью »
Портативная походная метеостанция MiniBTH
2015-03-24 в 16:05, admin, рубрики: arduino, avr, DIY, diy или сделай сам, метеостанция, программирование микроконтроллеровДобрый день. В этой публикации расскажу о портативной походной метеостанции, которую я давно задумал и недавно реализовал в железе.
Я часто езжу на природу, как в длинные походы, так и в короткие вылазки на выходные. Инструментальное наблюдение с одной стороны просто позволит удовлетворить любопытство, ответив на вопрос «Теплее ли сегодня чем вчера?», или «Насколько холодно было ночью?», с другой стороны, наличие даже примитивной метеорологической информации может помочь предсказать улучшение или ухудшение погоды или выпадение тумана. Отсюда возникает желание создать автономный прибор для измерения, логгирования и отображения метеоинформации, пригодный для походного использования, и удовлетворяющий следующим требованиям:
- Герметичное ударозащищенное исполнение корпуса;
- Постоянное отображение реального времени и текущих метеоданных: давления, температуры, влажности, а также истории их изменения в течение последних несколько часов и нескольких дней на экране;
- Читаемый на ярком солнце экран;
- Работа прибора в течение всего похода без подзарядки или замены элементов питания или подзарядки;
- Желательно сохранение истории метеоданных в энергонезависимой памяти.
Стоит отметить, что приборы подобного назначения в виде часов, брелков и отдельных устройств доступны на рынке, однако их возможности по отображению истории изменения метеоинформации, на мой взгляд, недостаточны, а логгирование, как правило, отсутствует вовсе. Поэтому я принял решение разработке собственного прибора.
Читать полностью »
Нескучные выходные или «тачка на прокачку»
2015-03-17 в 21:11, admin, рубрики: arduino, Atmega, avr, can-bus, diy или сделай сам, mazda, анализ данных, дисплей, парктроник, программирование микроконтроллеров, разработка, реинжиниринг, метки: atmega, can-bus, mazdaНекоторое время назад я сказал: "«Тюнить» авто лично мне как-то не интересно...", но «никогда не говори „никогда“». Звезды встали в таком порядке, что пришлось экстренно сменить машину Peugeot 307sw на Mazda5.
Машина ездит, все хорошо, но некоторые «плюшки», которые были в прежней машине штатно, почему-то отсутствовали в текущей.
Одна из таких полезных вещей — парктроник. Установка парктроника не является проблемой, но вот как-то «неродной» дисплей парктроника меня в салоне не устраивал. Внутренний перфекционист был жутко против «чужеродного тела».
Читать полностью »
MIDI плеер на восьми Floppy. Или как электронщик с ума сходил
2015-03-16 в 12:13, admin, рубрики: avr, C, floppy disk, floppy drive, java, music, programming, говнокод, музыкальные инструменты, Электроника для начинающих, метки: floppy disk, floppy driveКак-то раз посмотрел я видео о поющих флопах и на гору списанных компов. Решил сделать что-то подобное.
Делать на Arduino как остальные? Да вы что, серьёзно? F*uck the system, как говорится! Решено было делать на Atmega8A, потому что только она и была под рукой. Провода тоже для слабаков, поэтому я отыскал HC-05 (зачем лишние сопли?).
Поехали!
Читать полностью »
Игральный кубик на Attiny2313
2015-03-13 в 19:10, admin, рубрики: avr, микроконтроллеры, настольные игры, программирование микроконтроллеровС недавних пор мы с друзьями плотно подсели на настольные игры, а незадолго до этого я решил попробовать программировать под микроконтроллеры. Чередуя настольные игры с пляской вокруг микроконтроллера (я игрался всё это время с Attiny2313), родилась идея применить на практике небольшие знания, которые приобрёл на начальных этапах работы с этим МК и сделать игральный кубик. Была поставлена примерно следующая задача:
- Кубик должен отображать информацию по аналогии со своим костяным собратом;
- Кубик должен выдавать два значения;
- Кубик должен быть максимально простым в использовании.