ШИМ (Широтно-Импульсная Модуляция (PWM — Pulse Width Modulation))
— импульсный сигнал постоянной частоты и переменной скважности (отношение длительности импульса к периоду его следования). С помощью задания скважности можно менять среднее напряжение на выходе ШИМ.
рассмотрим специфичные функции Arduino для цифрового ввода-вывода.
они объявлены в файле
\hardware\cores\arduino\wiring.h
а реализованы в
\hardware\cores\arduino\wiring_digital.c
Начнём небольшую серию статей про программирование плат Arduino.
Для программирования используется Arduino IDE, которую можно скачать на .
Текущая версия, как здесь уже — Arduino 0016. Есть версии для (70 Mb), и .
Рассмотрим версию для Windows — после скачивания архива его нужно распаковать.
Например, в
С:\utils\arduino-0016\
На официальном сайте пишут: "...is programmed using the Arduino programming language (based on Wiring)". Фактически — нет никакого особого языка программирования и программы пишутся на C/C++, а компилируются и собираются с помощью широко известного avr-gcc (в версии для Windows — ).
Все особенности сводятся к тому, что имеется набор библиотек, включающий в себя некоторые функции (вроде pinMode) и объекты (вроде Serial), а при компиляции Вашей программы среда разработки создает временный .cpp файл, в который кроме Вашего кода включается еще несколько строчек, и полученный результат скармливается компилятору а затем линковщику с нужными параметрами.
Для примера, рассмотрим стандартный тестовый скетч ()
Как обычно в нужный момент под рукой не оказалось нормального блока питания для свежесобранной ардуинины=( Зато на глаза попалась зарядка от сотика с обгрызеным шнуром:
Раз уж заикнулись, что можно сделать в домашних условиях, надо делать!
Версий печатных плат ардуино достаточно много и в основном они предназначены для заводского изготовления – мелкие расстояния между дорожками, куча межслойных переходов, а то и вообще 4 слоя. Ну а для наколенного изготовления специально разработана “Arduino Single-Sided Serial Board”. Это полностью ардуино-совместимая плата т.е. в неё можно смело втыкать разнообразные , и столь же смело втыкать её в комп – ArduinoIDE будет с ней работать.