Управлять высоковольтной нагрузкой с помощью ардуины очень просто — достаточно подавать управляющий сигнал от ардуины на базу ключевых транзисторов, которые управляют включением/выключением реле.
Время на этих необычных часах высвечивается всего 30-ю светодиодами. Есть узнаваемый часовой круг и после предварительной тренировки можно понять сколько времени :))
Сейчас на часах 5 часов 46 минут.
Круг показывает часы, верхний экран — десятки минут, а нижний — минуты.
Для этого воспользуемся самым популярным драйвером, используемым для управления моторчиками – микросхемой L293D.
L293D содержит два драйвера для управления электродвигателями небольшой мощности. Имеет две пары входов для управляющих сигналов и две пары выходов для подключения электромоторов. Кроме того, у L293D есть два входа для включения каждого из драйверов. Эти входы используются для управления скоростью вращения электромоторов с помощью (PWM).
В продолжение темы рассмотрим температурный 1-Wire датчик — DS18S20 :) DS18S20 – высокоточный цифровой термометр с интерфейсом (High Precision 1-Wire Digital Thermometer) от DALLAS Semiconductor (Maxim).
Для подключения датчика достаточно двух проводов – линии данных и заземления;
Если после прочтения , Вам в голову пришла мысль, что можно сделать и обратную комбинацию – значит мы мыслим в одинаковом направлении :)
Сразу хочу сказать, что эта идея далеко не новая, и воспользовавшись поиском можно найти различные решения – примеры можно найти в конце статьи в ссылках.
Итак, что же нам нужно?
А нужно нам всего-навсего произвести симуляцию 1-Ware slave-устройства, выдавая себя за iButton :)
Для этого нужно вспомнить, что происходит в линии 1-Wire:
Сегодня мы познакомимся с интересным протоколом и даже сразу попробуем поработать с устройством, использующим этот протокол. «Как?» — спросите Вы – «мне не нужно будет покупать детали в радиомагазине?»
«Нет» — отвечу я :) С большой долей вероятности, Вы пользуетесь устройством 1-Wire и, возможно, даже не догадываетесь об этом :) Это всего-навсего – ключ-таблетка от домофона ()!
Здесь упоминалось, что Arduino//Freeduino можно программировать не только на -е, но и на других языках программирования.
Попробуем разобраться как это можно сделать — написать программу на обычном С/C++.
Для этого воспользуемся компилятором WinAVR.
— это интегрированная среда разработки; она включает мощные компиляторы Си и ассемблера, программатор AVRDUDE, отладчик, симулятор и множество других вспомогательных программ и утилит.
Скачать WinAVR можно на странице проекта:
однако, в комплекте Arduino IDE уже идёт WinAVR (\hardware\tools\avr\), поэтому можно воспользоваться им.
Лично мне, в очень не хватает отладчика – с этим обязательно нужно что-нибудь сделать :)
Но ведь уже существуют пакеты для разработки электронных устройств от схемы до печатной платы.
Например, замечательная программа – :
— PROTEUS может симулировать несколько МК в одном устройстве (AVR, PIC, Motorola, ARM)
— в поставку PROTEUS входит очень много моделей компонентов.
— можно симулировать любые электронные устройства и не содержащие МК
Т.о. если нужно проверить какую-нибудь идею или вариант реализации – можно не искать детали, а просто «собрать» схему в PROTEUS-е и посмотреть как она будет работать :)