Прием команд с пульта дистанционного управления

Обновлено 21.01.14. Исходники переписаны под AVR Studio 6 (с тулчейном)

В этой статье я расскажу, как принимать команды с пульта (ПДУ) с кодировкой RC5. Подробное описание протокола не имеет смысла так как этого в интернете предостаточно.

Схема:

Микроконтроллер Atmega8 (тактирование 1 МГц от внутреннего генератора), ИК-приемник TSOP1736 подключен к входу захвата ICP, на порту D висят светодиоды.

Читать далее «Прием команд с пульта дистанционного управления»

Работа с шиной 1-wire. Подключение термодатчика DS18B20 к AVR

Обновлено 21.01.14. Исходники переписаны под AVR Studio 6 (с тулчейном)

Сразу хочу сообщить, что в этой статье я не буду описывать принцип работы шины (описание временных слотов и т.д.). Статья будет типа «Быстрый старт». Конкретно: я выложу свою библиотеку для работы с 1-wire, опишу как ею пользоваться, как подключить устройства к шине, как производить поиск устройств, передавать данные и т.д. А так, как (вероятно) 70% радиолюбителей в первую очередь решит подключить к шине термодатчик DS18B20, я выложу библиотеку для работы с DS18B20, где надо тупо запустить преобразование, подождать пока идет преобразование и записать температуру в массив.

Теория

Итак, 1-wire(еще называют MicroLAN, dallas-wire) так назвали потому что для передачи данных в обе стороны используется только 1 провод. Среди самых популярных устройств, работающих на этой шине можно выделить термодатчик DS18B20 и электронный ключ DS1990 (которым вы в подъезде двери открываете). У сети 1-wire есть одно ведущее устройство(Master) и несколько (или 1) подчиненных (Slave). Бывают сети с несколькими ведущими, по это нам сейчас не нужно. Передачу данных начинает ведущий, только он может посылать сигнал сброса (Reset), остальные устройства могут только отвечать на его запросы. Все устройства подключаются к шине параллельно, то есть, линию данных с каждого устройства (она обозначается DATA, DQ или OW_DQ), включая линию ведущего, подключают к одному проводу, типа вот так: 

Еще линия должна быть подтянута к питанию через резистор 2,2-4,7 кОм. Каждое устройство имеет свой индивидуальный 64-битный адрес, который устанавливается при изготовлении устройства (прямо на заводе). Читать далее «Работа с шиной 1-wire. Подключение термодатчика DS18B20 к AVR»

Замена стандартной функции _delay_ms()

Если вы программируете микроконтроллеры, тогда, наверно, уже знаете предназначение функции _delay_ms(). Она делает задержку на указаное количество милисекунд.  С моей точки зрения, у нее есть 3 минуса: она не работает с отключенной оптимизацией, во время ее выполнения текущая функция ничего не делает, кроме тупления в одном месте и если часто возникают прерывания, то время задержки увеличивается. Именно по этому я уже давно не пользуюсь этой функцией, а задержки делаю с помощью таймера.
Читать далее «Замена стандартной функции _delay_ms()»

Многоканальный USB-термометр. Продвинутая версия.

Обновление №4 (17.02.2012). Выложил исходники программы МК

Недавно написал статью Многоканальный USB-термометр. В устройстве вроде бы есть все, что требуется от такого термометра, но через время захотелось просматривать температуру через инет и не только с компа, а и с мобилки. Писать все изменения не буду, напишу все, что добавил после предыдущей статьи.

Должен признаться, что веб-сервис был довольно глючный, поэтому он несколько раз усовершенствовался и до сегодняшнего дня был в режиме тестирования. Теперь он полностью работоспособен! Программа для ПК и прошивка не изменялись.

Читать далее «Многоканальный USB-термометр. Продвинутая версия.»

Переделка ультразвуковой ванночки Ya Xun YX2000A

Перед покупкой уз-ванночки я долго бегал по городу и заходил в сервисные центры, где ремонтируют мобилки, чтобы узнать, какими ванночками пользуются ремонтники, практически у всех была Ya Xun YX2000A. В двух сервисниках я решил спросить у ремонтников, чем им нравится эта ванночка. Она сказали, что она достаточно надежная и имеет 2 режима мощности – 35 и 50 ватт (при 50 ватах очищается быстрей, но иногда кварцы выходят со строя, поэтому тут две мощности).  Ну и плюс она металлическая, а значит, более надежная. Вот только им очень сильно не понравился способ управления: дефолтовое время 240 сек для 35 Вт и 180 для 50 Вт, к тому же, настройки не сохраняются в энергонезависимой памяти, а оставлять постоянно включенной китайскую технику, да еще и с конденсаторным питанием я не рискну, так как может загореться когда дома никого не будет. Я в тот же день пошел и купил эту ванночку. Когда принес домой, включил, она 2 сек потрещала и перестала, когда разобрал, то там оказался не припаян терморезистор, я его припаял – ванночка заработала. После этого, я ее мучил где то часа 3-4 (чистил все платы, которые валялись у меня). Должен признаться, что ванночка оправдала мои надежды. На следующий день, после изготовления очередной платы, я решил ее почистить. Включил ванночку, установил время на максимум (это заняло около 10-15сек ),  плата почистилась, ванночку выключил, через пару часов так само, тут установка времени начала трепать мои нервы. В общем через неделю я решил переделать таймер.
Читать далее «Переделка ультразвуковой ванночки Ya Xun YX2000A»

Многоканальный USB-Термометр (Обновленно)

Когда то давно я написал статью о том, как сделать USB Термометр и разместил ее на двух сайтах. Девайс очень простой, но спустя пару дней, на мой имейл повалилось огромное количество сообщений с разнообразными вопросами и предложениями. С момента написания прошло уже около 2 лет, а мне все еще как минимум, раз в неделю приходит подобное письмо, но я уже давно перестал на них отвечать, так как вопросы порой слишком примитивны. Но вот примерно 70% народа интересуются двумя вопросами: можно ли подключить второй датчик и можно ли сделать в термометре функцию термостата. Сейчас у меня появилось немного свободного времени и я решил создать термометр с этими функциями.

Добавлено 31.10.2011: В устройство добавил новые полезные функции, подробности ЗДЕСЬ.

Характеристики такие:

  • Максимальное количество датчиков — 32, один датчик установлен прямо на устройстве, все остальные подключаются к отдельному разъему.
  • Пределы измерения от -55С до +125°C, точность при 85°C и ниже не менее 0,5°C.
  • 2 канала управления внешними нагрузками. Возможно ручное и автоматическое (для термостата) управление.
  • Работа на операционных системах Windows 2000 и выше (включая Vista и 7).
  • Сохранение настроек программы в реестре.
  • Возможность задавать отображаемое имя датчика.
  • Мини-окно с возможностью установки размера и отображения поверх всех окон. NEW!
  • Отображение программы в трее. NEW!
  • Запуск программы вместе с Windows. NEW!
  • Перепрошивка через USB без использования внешнего программатора.

Читать далее «Многоканальный USB-Термометр (Обновленно)»

GPS Bluetooth своими руками

У меня есть 2 телефона: смартфон  Motorola A1200e и КПК HTC BlueAngel, но ни на одном с них нет встроенного GPS, а мне иногда приходится бегать по городу по незнакомых местах, плюс я очень сильно люблю вечером ездить на велосипеде или мотоцикле туда, где ни разу не был, исследуя новые местности. Чтобы хоть примерно знать куда ехать, я пользуюсь мобильными Яндекс.Картами.

А вот на этой неделе со мной случилась неприятность — часов в 10 вечера, исследуя очередную незнакомую местность, я как то выехал на край горы, передо мной был спуск с пол километра и весь закидан щебенкой(!!!), такие дороги я просто обожаю,  не мог удержаться чтобы не спуститься вниз. Проверил велик на исправность, ведь если бы что то открутилось при спуске (а вибрация будет очень сильной), то этот день мог бы окончиться для меня очень трагически. С велом было все ок. Я поехал в низ. Передать все ощущения словами просто не реально, это было офигенно круто! Правда щебенка отлетала от переднего колеса и ударяла мне об ребра, но все равно было прикольно. Когда спустился, постоял минуты три, потом собрался ехать дальше, но… куда? Наверх по щебенке выехать не получилось бы, спереди — поле, слева и справа грунтовая дорога. Сидел долго на телефоне по карте искал где я нахожусь, но на картах грунтовых дорог нет. И тут я вспомнил, что через янд.карты можно посмотреть фотку со спутника, посмотрел, но где я нахожусь я так и не понял. Еще минут через 5 я начал подниматься наверх по щебенке, а обувь у меня была с тонкой подошвой, терь так ноги болят, что ходить почти не могу.

Вобщем поставил я себе обязательно условие: большие НИКОГДА не попрусь в темноте в незнакомую местность без GPS!!! Брать навигатор с дисплеем не хотелось, так как при езде у меня вещей минимум, а на велик если что то с дисплеем прицеплю, то все равно разобью. Тут вспомнил про такую замечательную вещь, как GPS Bluetooth — это приемник GPS, который может соединяться с каким нить устройством по блютузу (ноут, КПК, смарт и т.д.) и передавать ему данные с GPS модуля. Полез в инет искать, но самый дешевый нашел за 100$, за такие деньги я мог бы купить Б/У мобилу с GPS:). Можно конечно было бы купить GPS Bluetooth в китайском магазине (нашел за 40$), но китай есть китай, а мне нужен надежный модуль. Решил сделать его сам.

Читать далее «GPS Bluetooth своими руками»

USB->USART + JTAG ICE + RS485

Лично я с отладчиком JTAG ICE работаю крайне редко, но все же иногда приходится, но мне не нравится то, что его надо подключать через USB->COM так как у меня на ноуте нет СОМ порта. Еще в последнее время часто приходится работать с сетями RS485. В общем решил я сделать одно устройство, в котором будет преобразователь USB->USART, отладчики JTAG ICE и RS485.

В инете нашел схему самопального JTAG ICE на ATmega16, вот на его основе и сделано устройство. В качестве преобразователя USB->USART — широко распространенная CP2102, ну и для сети RS485 не менее популярная ST485.
Читать далее «USB->USART + JTAG ICE + RS485»

Управление электрическими цепями через USB

Обновлено 23.11.13. Теперь устройство на заводской плате!

Многие из нас наверно хотели бы управлять электрическими цепями через комп. А че? неплохо было бы))) Представь, звонит тебе друг, говорит: «Через 20 мин буду», тут проходит 20 минут, звонок в двери, но как же впадлу вставать из-за компа, идти открывать двери и т.д. А представь иную ситуацию: звонок в двери, тут у тебя на мониторе вылазит сообщение типа «У Вас гости», ты нажимаешь кнопку на компе — открывается магнитный замок на дверях и ты орешь на весь дом: «Заходи», или тебе нужно включить электрочайник, свет или еще что то. В наше время это уже не фантастика а вполне реалистично, только вот из-за хреновой экономики далеко не каждый может позволить себе даже самый простейший «смарт-хаус», но если есть желание и прямые руки, то можно запросто сделать управление электрическими цепями через ПК.

В наше время достаточно много людей умеют программировать, они могут написать программку под комп, которая смогла бы управлять внешними устройствами, но как подключить тот же электрочайник к компу? Ну можно к примеру через LPT порт, только вот его уже редко где можно увидеть, что тогда остается? USB!!!

Давайте сделаем устройство, которое будет подключаться к USB и сможет управлять электроцепями(например, включать освещение), реагировать на замыкание кнопок(например, дверной звонок) и еще что-то.
Читать далее «Управление электрическими цепями через USB»

Светодиоды. Вводная.

Вступление

Почему именно светодиоды? Да потому, что со всех осветительных приборов он имеет наибольший Коэффициент Полезного Действия (КПД).

Я не буду писать всякую муть о том, почему для освещения уже не применяю лампы накаливания, галогенки и ксенонки так как люди, которые выбирают освещение для транспорта (и не только) наверно уже встречали на форумах обсуждения источников света. Если вы думаете что лучше ставить какой то другой источник света, то напишите в комментариях — я докажу что светодиод лучше:). Хотя многие скажут, что большой минус светодиодов — высокая цена. Если сровнять, к примеру, ксеноновую лампу и светодиод, по яркости и цене, то да, светодиод проигрывает, НО! Каков срок годности ксенонки? 5000 часов, а светодиода 50000, то есть в 10 раз больше. А напряжение питания? Чтобы зажечь ксенонку ей надо свыше 10000 вольт, а светодиоду в среднем 3-4 В.

Есть множество разных фирм, выпускающие светодиоды, и если говорить об обычных маленьких светодиодиках на несколько милливатт, то можно очень долго писать список производителей, но если говорит об сверхмощных(сверхъярких) светодиодах, мощностью в несколько ватт, то выберем лидера среди производителей таких светодиодов — это компания Cree.

Читать далее «Светодиоды. Вводная.»