/*
* Набор для экспериментов MaxKit 01
* Код программы для опыта №2: sketch 02
*
* Потенциометр
*
* Написано для сайта "Полный комплект" http://maxkit.ru
*
*
* Помощь сообщества Arduino.
* Посетите сайт http://www.arduino.cc
*
*
* ПОТЕНЦИОМЕТР
*
* Программа демонстрирует работу аналогового входа.
* Изменяя положение ручки потенциометра
* изменяется скорость мигания светодиода.
* Потенциометры имеют три ножки. Которые мы используем в качестве
* делитель напряжения, внешние флажки присоединены на +5 Вольт и
* землю. Средний контакт будет сигнальным (напряжение на нем
* изменяется от 0 вольт до +5 вольт в зависимости от положения
* ручки), ее поворот меняет сопротивление
* в его плечах, что делает мигание быстрее или медленнее!
*
*
* Подключите среднюю ножку на аналоговый порт A0 на плате Arduino.
* Подключите одну из внешних ножек к +5В.
* Подключите другую внешнюю ножку к земле.
*
* Светодиод
*
* У большинства Arduino есть встроенный в плату светодиод и резистор,
* подключенные к порту 13, так что в принципе наш светодиод - дубль имеющегося.
* Но если вам это интересно, подключите свой светодиод к контакту 13,
* или используйте другой цифровой порт (но не забудьте внести изменения
* в код программы). Выполните следующие действия:
* Подключите положительную ножку светодиода (длинная нога) к
* Arduino цифровой порт 13.
* Подключите минусовую ножку светодиода (короткая нога), к
* резистору 330 Ом (оранжевый-оранжевый-коричневый).
* Подключите другую ножку резистора на землю.
* В зависимости от считанного значения с сенсора, в данном
* случае сенсором является потенциометр, подключенный
* к аналоговому входу А0. Программа включает и выключает светодиод,
* подключенный к цифровому выводу Arduino - Pin13. Время пребывания
* светодиода во включенном или выключенном состоянии зависит от
* значения, полученного при считывании с analogRead(),
* движка потенциометра.
*
*
*
*
* Этот sketch был написан SparkFun Electronics,
* Переведен специально для сайта http://maxkit.ru
* 01 февраля 2015г.
*
*/
int sensorPin = 0; // Объявляем переменную с именем sensorPin,
// значением 0 (0 - номер порта, к которому
// мы подключим среднюю ножку потенциометра.
// и int - говорит что значение - целое число.
int ledPin = 13; // Объявляем переменную с именем ledPin, int - целое,
// задаем номер порта 13, к которому подключим светодиод
// теперь в любом месте программы можно использовать
// имя ledPin, программа поймет, что это порт 13.
int sensorValue = 0; // Объявляем переменную sensorValue для хранения
// значения, поступающего от сенсора, сейчас 0.
void setup() { // функция setup() выполняется после инициализации
// переменных, один раз.
pinMode(ledPin, OUTPUT); // инициализируем контакт - pinMode, присваиваем
// ему значение ledPin, а это у нас порт 13,
// и будем его использовать как выход - OUTPUT.
}
void loop() { // функция loop() выполняется по кругу от { и до },
//после setup(), пока не будет достигнуто определенное
// значение, или не будет отключено питание.
sensorValue = analogRead(sensorPin);// считываем значения с сенсора
// Arduino можете прочитать напряжение
// на аналоговом входе, для этого используется
// встроенная функция под названием analogRead ()
digitalWrite(ledPin, HIGH); // выдает в ledPin +5 вольт - HIGH,
// т.е. включает светодиод
delay(sensorValue); // delay - задержка на sensorValue,
// в секунду
digitalWrite(ledPin, LOW); // выключает светодиод
delay(sensorValue); // опять задержка на секунду
// и функция loop() повторяется снова
}