/*
* Набор для экспериментов ArduinoKit
* Код программы для опыта №2: sketch 02
*
* Потенциометр
*
* Написано для сайта http://arduinokit.ru
*
*
* Помощь сообщества Arduino.
* Посетите сайт http://www.arduino.cc
*
*
* Программа демонстрирует работу аналогового входа.
* Изменяя положение ручки потенциометра
* изменяется скорость мигания светодиода.
* Потенциометры имеют три ножки. Которые мы используем в качестве
* делитель напряжения, внешние флажки присоединены на +5 Вольт и
* землю. Средний контакт будет сигнальным (напряжение на нем
* изменяется от 0 вольт до +5 вольт в зависимости от положения
* ручки), ее поворот меняет сопротивление
* в его плечах, что делает мигание быстрее или медленнее!
*
* Потенциометр
*
* Подключите среднюю ножку на аналоговый порт A0 на плате Arduino.
* Подключите одну из внешних ножек к +5В.
* Подключите другую внешнюю ножку к земле.
*
* Светодиод
*
* У большинства Arduino есть встроенный в плату светодиод и резистор,
* подключенные к порту 13, так что в принципе наш светодиод — дубль имеющегося.
* Но если вам это интересно, подключите свой светодиод к контакту 13,
* или используйте другой цифровой порт (но не забудьте внести изменения
* в код программы). Выполните следующие действия:
* Подключите положительную ножку светодиода (длинная нога) к
* Arduino цифровой порт 13.
* Подключите минусовую ножку светодиода (короткая нога), к
* резистору 330 Ом (оранжевый-оранжевый-коричневый).
* Подключите другую ножку резистора на землю.

* В зависимости от считанного значения с сенсора, в данном
* случае сенсором является потенциометр, подключенный
* к аналоговому входу А0. Программа включает и выключает светодиод,
* подключенный к цифровому выводу Arduino — Pin13. Время пребывания
* светодиода во включенном или выключенном состоянии зависит от
* значения, полученного при считывании с analogRead(),
* движка потенциометра.
*
* Комментарий к программе написан
* 22 января 2014
* специально для http://arduinokit.ru и HelpSet.Ru
*/

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() повторяется снова
}