if (ledMode == 8)
ledMode = 0;
setMode(ledMode); // Изменить режим светодиода
}
}
Рис. 2.7. Монтажная схема ночника
Стягивающий резистор
- 62 -
На первый взгляд может показаться, что программа слишком велика. Но в основном это комбинация фрагментов кода, который вы уже встречали в данной главе.
Вы можете самостоятельно изменить этот проект. Например, добавить кнопки для управления каждым выводом RGB-светодиода. Или реализовать дополнительный режим мигания каждым цветом, взяв код из главы 1. Возможности для творчества безграничны.
Резюме
В этой главе вы узнали о следующем:
Как работать с макетной платой.
Как выбрать резистор для ограничения тока светодиода.
Как подключить внешний светодиод к плате Arduino.
Как использовать ШИМ, как замену аналогового вывода.
Как считывать состояние кнопки.
Как подавить дребезг кнопки.
Для чего нужны подтягивающий и стягивающий резисторы.
Глава 3 Опрос аналоговых датчиков
Список деталей
Для повторения примеров главы вам понадобятся следующие детали:
• плата Arduino Uno;
• макетная плата;
• перемычки;
• потенциометр 10 кОм;
• 2 резистора номиналом 10 кОм;
• 3 резистора номиналом 220 Ом;
• кабель USB;
• фоторезистор;
• датчик температуры ТМР36 (или тобой другой аналоговый датчик на 5 В);
• RGB-светодиод с общим катодом.
Электронные ресурсы к главе
На странице http://www.exploringarduino.com/content/ch3 можно загрузить программный код, видеоуроки и другие материалы для данной главы. Кроме того, листинги примеров можно скачать со страницы www.wiley.com/go/exploringarduino в разделе Downloads.
Что вы узнаете в этой главе
Наш мир является аналоговым. Хотя нередко можно услышать фразу про мир "цифровых технологий", большинство наблюдаемых явлений вокруг нас имеет аналоговый характер. Мир предполагает бесконечное число возможных состояний, будь то солнечный свет, или температура океана, или концентрация загрязняющих веществ в воздухе. Эта глава посвящена методам преобразования аналоговых величин в цифровые значения, которые могут быть проанализированы микроконтроллером Arduino.
- 64 -
Далее вы узнаете о различиях между аналоговыми и цифровыми сигналами и о способе конвертации одних в другие, мы также рассмотрим аналоговые датчики, которые могут взаимодействовать с платой Arduino. Основываясь на материале предыдущей главы, вы сможете добавить датчик света для автоматического изменения настроек ночника. Вы также узнаете, как отправлять аналоговые данные с платы Arduino на компьютер через последовательный интерфейс, что открывает огромные возможности для создания более сложных систем, способных передавать данные об окружающей среде на компьютер.
ПРИМЕЧАНИЕ
Видеоурок данной главы можно посмотреть на интернет-странице
http://www.jeremyblum.com/2011/01/24/arduino-tutorial-4-analog- inputs/ [7] На русском: http://wiki.amperka.ru/видеоуроки:4-аналоговые-входы.
.
Если вы хотите узнать больше о различиях между аналоговым и цифровым сигналами, посмотрите видеофильм, расположенный на интернет-странице
http://www.jeremyblum.com/2010/06/20/lets-get-digital-or-analog/.
3.1. Понятие об аналоговых и цифровых сигналах
Данные об окружающем мире все устройства неизбежно получают в аналоговом виде. Вспомните ночник из предыдущей главы. Для: управления цифровым входом там была кнопка. Переключатель - это цифровое устройство, он имеет только два возможных состояния: включено или выключено, HIGH или LOW, 1 или 0, и т. д. Цифровая информация представляет собой серию бинарных (цифровых) данных. Каждый бит принимает только одно из двух возможных значений.
Но мир вокруг нас редко представляет информацию только двумя способами. Выгляните в окно. Что вы видите? Если это дневное время, вы, вероятно, видите солнечный свет, деревья, колышущиеся на ветру, и возможно, проезжающие машины и гуляющих людей. Все это нельзя отнести к двоичным данным. Солнечный свет не просто включен или выключен, его яркость варьируется в течение дня. Точно так же у ветра не два единственных состояния, он все время дует порывами с различной скоростью.
3.2. Сравнение аналоговых и цифровых сигналов
Графики на рис. 3.1 показывают, чем отличаются друг от друга аналоговые и цифровые сигналы. Слева прямоугольные импульсы, амплитуда которых принимает только два значения: 0 и 5 вольт. Точно так же, как с кнопкой из предыдущей главы: только HIGH или LOW. Справа изображен фрагмент косинусоидального сигнала.
Читать дальше