Не так давно увлекся схемотехникой для музыки (усилители, гитарные эффекты) и как-то незаметно перешел с аналоговой на цифровую электронику. Выбор пал на микроконтроллеры фирмы Atmel, потому как товарищ довольно неплохо в них разбирался и, если что, было у кого спросить. Первым делом собрал программатор (клон STK500) и принялся за свой первый проект: мигание светодиодами. А так как дело близилось к 14 февраля решил совместить приятное с полезным и порадовать свою любимую супругу. Вдохновителем идеи был пост пользователя Terehoff: «Чем порадовать любимую 14 февраля».
Читать полностью »
Рубрика «программирование микроконтроллеров» - 126
Еще одно сердечко на Atmega
2014-11-13 в 13:40, admin, рубрики: ATmega8, CodeVisionAVR, diy или сделай сам, День святого Валентина, программирование микроконтроллеров, своими рукамиXFeatures — Полезное расширение для ATMEL STUDIO 6
2014-11-13 в 11:40, admin, рубрики: Оболочки, программирование микроконтроллеров Для тех, кто любит упрощать себе жизнь всякими расширениями оболочек, могу предложить использование приятного расширения и для ATMEL STUDIO 6.
Это расширение называется XFeatures (текущая версия 1.5, пока еще с пометкой Beta). Я расскажу о самых полезных, на мой взгляд, возможностях.
Читать полностью »
Содержимое Intel IOT development kit
2014-11-13 в 11:02, admin, рубрики: devkitm intelmaker, Edison, galileo, IoT, Блог компании Intel, Программирование, программирование микроконтроллеровВ феврале я писал о сборке Yocto для Galileo gen1, которая несколько облегчает разработку для Galileo. С тех пор прошел почти год, и у Galileo появились последователи — Galileo gen2, Edison. Про Edison (уже два месяца в продаже) надо писать отдельно, этот же пост об Intel IOT Development Kit.
Из железок на моем рабочем столе (извините за беспорядок) он совместим с Galileo gen1, gen2 и Edison.
С декабря 2013 по октябрь 2014 я был архитектором этого продукта, и сейчас я опишу, как продвигался проект, что уже получилось, и что запланировано.
Читать полностью »
Безопасное использование ножки RESET на Arduino
2014-11-11 в 15:47, admin, рубрики: arduino, avr, bootloader, DIY, diy или сделай сам, микроконтроллеры, Программирование, программирование микроконтроллеров
Здравствуйте, уважаемые читатели!
В этой статье я опишу способ безопасного использования ножки RESET на плате Ардуино для собственных нужд.
Собственно, на поиски решения данного вопроса меня сподвиг некоторый недостаток ножек в разрабатываемой мной системе (которую я надеюсь описать на Хабре, как закончу реализацию) на основе Arduino Pro Mini.
Итак, задача ясна, а требования таковы:
- Возможность загружать скетчи обычными для Ардуины способами
- Возможность использовать в своей программе ножку RESET как digital I/O pin
FLProg – альтернативная среда программирования Arduino. Описание проекта
2014-11-05 в 11:08, admin, рубрики: arduino, diy или сделай сам, FBD, lad, Блог компании FLProg, программирование микроконтроллеров
В предыдущем посте я рассказал о предыстории появления проекта FLProg. Сейчас я хочу поподробнее рассказать о проекте и его состоянии на сегодняшний день.
Основной целью проекта является включение в круг пользователей плат Arduino людей незнакомых с программированием. Это возможно благодаря опыту промышленного программирования, который накапливался годами производителями промышленных контроллеров.
Проект состоит из двух частей. Первая часть это десктоп приложение FLProg представляющее собой графическую среду программирования плат Arduino. Во вторых, это сайт FLProg.ru, с помощью которого члены сообщества пользователей программы могут пообщаться между собой, узнать последние новости проекта, скачать последнюю версию программы, ну и найти необходимую информацию по работе с приложением.
Читать полностью »
Восстанавливаем старые часы «Электроника-7»
2014-11-04 в 11:03, admin, рубрики: avr, diy или сделай сам, Raspberry Pi, месье знает толк, программирование микроконтроллеров, часы для гиков, электроника-7 Доброго времени суток, уважаемые читатели!
Началась эта история так. Во время работы на объекте, разместившимся в здании бывшего завода (кажется, металлоконструкций) с длинным названием (и, конечно же, имени очередного великого лидера партии) я увидел в куче хлама, предназначавшейся на выброс, одну вещь. Каковая вещь ударила по мне страшным приступом ностальгии, ибо точно такая же висела в холле СКБ (с не менее длинным и многосложным названием, чем вышеупомянутый завод), где работала когда-то моя мама, и где прошло немало времени из моего детства. Встречайте — часы «Электроника 7-06».
Конечно же, я не мог устоять от соблазна восстановить (а может быть, и доработать?) их. Кому интересен процесс, а равно и конечный результат — прошу под кат (осторожно, некоторое количество схем и фото!).
Альтернативная среда программирования для Arduino — FLProg
2014-11-01 в 9:27, admin, рубрики: arduino, diy или сделай сам, FBD, lad, Блог компании FLProg, программирование микроконтроллеров Добрый день.
Хочу представить Вам очередной проект на ниве программирования распространенных плат Arduino.
Сначала немного истории. С самого момента появления контроллеров развитие принципов работы с ними идет по пути роста абстракции. Первый этап представлял программирование непосредственно в машинных кодах. Программирование было сложным, долгим и требовало очень специфичного склада ума. Поэтому программистов было очень мало.
Но человек существо ленивое, а лень, как известно двигатель прогресса. Придумали первый уровень абстракции — ассемблер. Писать программы стало проще и веселее. Количество программистов возросло. Но все равно ассемблер не очень сильно отличался от машинных кодов.
Поэтому появился следующий уровень абстракции. Языки высокого уровня. Основной целью этих языков бала возможность объяснить машине, что от нее хотят на языке максимально приближенном к человеческому. Это позволяло заниматься программированием людям с менее специфичным складом. Поэтому с развитием языков высокого уровня количество программистов росло, и соответственно росло количество полезных программ, которые они создавали.
Проект FLProg предлагает новый уровень абстракции с довольно смелым заявлением — «Что бы программировать микроконтроллеры, да и компьютеры не обязательно знать языки программирования».
Заявление может показаться слишком смелым, но это возможно и уже доказано в смежной с компьютерами области. Это область программирования промышленных систем автоматизированного управления. Практически с самого начала производители промышленных контроллеров пошли по этому пути. Сейчас стандартом для сред программирования у основных производителей являются языки FBD и LAD. Собственно говоря, как таковыми языками они не являются. Это скорее графические среды для рисования принципиальных иди логических схем.
Такой подход оказался очень удобным для легкого вхождения в разработку систем АСУ инженеров электриков и электронщиков. Разрабатывая проекты установок, они могли легко привязать работу этих установок к алгоритмам работы контроллера. В обслуживании этих установок на объекте так же лучше когда существующий обслуживающий персонал может легко проверить работу системы АСУ, найти проблему. И при этом нет необходимости вызывать по каждому пустяку программиста из «Центра». И это подход себя оправдал. На сегодняшний день почти все системы промышленной автоматики созданы с помощью таких средств разработки.
Такая среда разработки есть у Siemens, ABB, Schneider, да и практически у всех производителей. Но существует и проблема. Все они привязаны к своим контроллерам. А цены на эти контроллеры очень тяжело назвать демократичными.
И вот появились платы Arduino. Дешёвые, с большим набором периферии и шилдов расширений. С интерфейсами совместимыми с дисплеями, датчиками, и другими устройствами. С возможностью прямого подключения к компьютеру, подключению к сети Ehernet и WiFI.
Эти платы идеально подходят для самодельщиков и кулибиных, на которых наша страна всегда была, есть и будет богата. Но, как всегда есть но. Программируются эти платы на языке C. Для большинства этих умнейших людей, с очень прямыми руками, растущими из положенного места, это китайская азбука. Они могут придумать нарисовать, собрать отладить и запустить сложнейшие схемы, но IF, FOR, Case, Void и т.п. это не для них. Конечно, можно почитать инструкции в интернете, поиграться какое — то время, помигать светодиодом с помощью примера. Но для более серьезного применения необходимо детальное изучение языка. А зачем им это? Они не собираются быть профессиональными программистами. У них другой путь. Они что то придумали. Да это проще и красивее собрать с помощью микроконтроллера, но становится для этого программистом, потратив месяцы на изучение языка? Нет, конечно. Собирают по старинке, попроще конечно, но в своей области.
Идея проекта FLProg в том, что бы совместить принципы промышленного программирования с дешевизной и удобством Arduino. В результате должен получится инструмент, позволяющий создавать свои проекты на ардуино любому, знакомому с электричеством человеку.
Светофор в гараже. Настоящий
2014-10-31 в 10:38, admin, рубрики: diy или сделай сам, автомобили, ассемблер, микроконтроллеры, программирование микроконтроллеров Шел мелкий и противный дождь. Настроение было гнусным.
Он лежал на обочине и тихо ржавел. Рядом на столбе сверкал огнями молодой собрат.
Я остановился и положил его в багажник.
Я уже не один.
И он не один.
Читать полностью »
Машина состояний на чистом С
2014-10-30 в 7:49, admin, рубрики: c/c++, C99, Алгоритмы, конечные автоматы, программирование микроконтроллеров, системное программирование Почти каждый микроконтроллерщик сталкивался с громадными switch-case и мучительно их отлаживал.
И много кто, начиная писать реализацию какого-либо протокола, задумывался как написать её красиво, изящно, так чтобы через месяц было понятно что ты имел в виду, чтобы она не отжирала всю память и вообще какала бабочками.
И вот тут на помощь приходят машины состояний, они же конечные автоматы (те самые которые используются в регулярных выражениях).
Собственно через регулярные выражения я к ним и пришёл.
Читать полностью »
Часы на ПЛИС (VHDL)
2014-10-29 в 13:41, admin, рубрики: Altera, Cyclone-II, vhdl, программирование микроконтроллеров, разработка, Электроника для начинающихК этому проектированию меня подтолкнула доступность на каком-то этапе обучения к отладочной плате EP2C20F484C7 фирмы «Altera» (семейство «Cyclone-II»).
В ПЛИС заложены возможности, которые позволяют превратить ее в интегральную схему с любой функцией цифровой логики. Проектирование сводится к выявлению программируемых элементов (перемычек или запоминающих ячеек), после удаления которых в структуре схемы остаются только те связи, которые необходимы для выполнения требуемых функций. На практике эта задача весьма непростая, так как современные ПЛИС содержат в среднем несколько десятков тысяч перемычек. Поэтому для проектирования обязательно применяют системы автоматизированного проектирования (САПР ПЛИС).
Читать полностью »