Arduino:Примеры/AnalogReadSerial: различия между версиями
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
{{Arduino панель перехода}} | {{Arduino панель перехода}} | ||
{{Перевод от Сubewriter}} | {{Перевод от Сubewriter}} | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
== Считывание последовательной передачи данных через аналоговый контакт <ref>[http://www.arduino.cc/en/Tutorial/AnalogReadSerial Arduino - AnalogReadSerial]</ref>== | == Считывание последовательной передачи данных через аналоговый контакт <ref>[http://www.arduino.cc/en/Tutorial/AnalogReadSerial Arduino - AnalogReadSerial]</ref>== | ||
Строка 99: | Строка 101: | ||
[[Категория:Пример программирования Arduino]] | [[Категория:Пример программирования Arduino]] | ||
[[Категория:Примеры программирования Arduino]] | [[Категория:Примеры программирования Arduino]] | ||
{{SEO | |||
|Заголовок статьи=Arduino:Считывание последовательной передачи данных через аналоговый контакт / Онлайн справочник - wikihandbk.com | |||
|Ключевые слова=чтение аналога, чтение со входа, чтение с аналогового входа, arduino, wiki arduino, справочник arduino, фквгштщ, помощь arduino | |||
|Описание статьи=Данный пример показывает, как считывать на аналоговом входе информацию, идущую из физического мира, используя при этом потенциометр. | |||
Потенциометр – это простое механическое устройство, дающее сопротивление, уровень которого можно настраивать при помощи поворота регулирующей ручки. Если пустить напряжение через потенциометр в аналоговый вход на Arduino, можно измерить уровень сопротивления (от потенциометра) в виде аналогового значения. В данном примере мы займемся отслеживанием состояния потенциометра, установив последовательную передачу данных между Arduino и вашим компьютером. | |||
|Изображение статьи для Open Graph=http://wikihandbk.com/ruwiki/images/6/6a/AnalogReadSerial_Circuit.png | |||
|Адрес страницы для schemaNewsArticle=<nowiki>http://wikihandbk.com/Arduino:Примеры/AnalogReadSerial</nowiki> | |||
|Изображение статьи для schemaNewsArticle=<nowiki>http://wikihandbk.com/ruwiki/images/6/6a/AnalogReadSerial_Circuit.png</nowiki> | |||
|Высота изображения статьи для schemaNewsArticle= | |||
|Ширина изображения статьи для schemaNewsArticle= | |||
|Дата публикации для schemaNewsArticle= | |||
|Автор=Мякишев Е.А. | |||
|Издатель=myagkij | |||
|Логотип издателя для schemaNewsArticle=<nowiki>http://wikihandbk.com/ruwiki/images/6/61/Tech_geek_logo_1x.jpg</nowiki> | |||
|Ширина логотипа издателя для schemaNewsArticle=60 | |||
|Высота логотипа издателя для schemaNewsArticle=45 | |||
}} |
Версия от 13:50, 11 августа 2019
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Считывание последовательной передачи данных через аналоговый контакт [1]
Данный пример показывает, как считывать на аналоговом входе информацию, идущую из физического мира, используя при этом потенциометр.
Потенциометр – это простое механическое устройство, дающее сопротивление, уровень которого можно настраивать при помощи поворота регулирующей ручки. Если пустить напряжение через потенциометр в аналоговый вход на Arduino, можно измерить уровень сопротивления (от потенциометра) в виде аналогового значения. В данном примере мы займемся отслеживанием состояния потенциометра, установив последовательную передачу данных между Arduino и вашим компьютером.
Необходимое оборудование
- Плата Arduino;
- Потенциометр на 10 кОм;
Цепь
Подсоедините Arduino к потенциометру при помощи трех проводов. Первый пойдет от «земли» к выходному контакту потенциометра. Второй пойдет от контакта с 5В напряжением ко второму выходному контакту потенциометра. Третий пойдет от 0-го аналогового входного контакта («входа») на Arduino к центральному (среднему) контакту на потенциометре.
![](/ruwiki/images/6/6a/AnalogReadSerial_Circuit.png)
Поворачивая ручку на потенциометре, вы изменяете количество сопротивления с каждой стороны движка, подсоединенного к центральному контакту потенциометра. Это, в свою очередь, меняет на центральном контакте уровень напряжения. Когда сопротивление между центральным и боковым (тем, который подключен к 5В на Arduino) контактами приблизится к 0 Ом (а сопротивление на противоположном контакте, соответственно, – к 10 кОм), напряжение на центральном контакте приблизится к значению в 5В. Это напряжение является аналоговым напряжением – тем, которое вы будете считывать как входное.
В плату Arduino уже встроен аналогово-цифровой преобразователь(АЦП), который считывает меняющееся напряжение и конвертирует его в цифры от 0 до 1023. Если ручку потенциометра до упора повернуть в одном направлении, на контакт не будет подано ни одного вольта, поэтому и входное значение будет равно «0». Но если повернуть ручку потенциометра до упора в противоположном направлении, то на контакт пойдут максимальные 5В, а входное значение станет равно «1023». А функция analogRead(), тем временем, займется считыванием значений от 0 до 1023, которые будут соответствовать тому или иному уровню напряжения, поданному на контакт.
Схема
![](/ruwiki/images/3/39/AnalogReadSerial_Schematic.png)
Код
Единственная вещь, которую нужно задать в функции setup() – это последовательная передача данных между Arduino и вашим компьютером (со скоростью 9600 бит в секунду). Это делается с помощью нижеследующей строки кода:
Serial.begin(9600);
Далее перемещаемся к секции главного цикла. Здесь нужно создать переменную, которая будет сохранять значение сопротивления (от 0 до 1023; идеальный вариант для этого случая – тип данных int), идущего от вашего потенциометра:
int sensorValue = analogRead(A0);
Наконец, вам надо отобразить эту информацию в меню «Мониторинг последовательной передачи данных» (Serial Monitor) в виде десятичного (DEC) значения. Это можно сделать при помощи команды Serial.println() в последней строке кода:
Serial.println(sensorValue, DEC)
Теперь, когда вы открыли Serial Monitor в среде разработки Arduino (нажав на кнопку, находящуюся справа от кнопки Upload вверху программы), то должны видеть непрерывный поток цифр, варьирующихся от 0 до 1023 и соответствующих той или иной позиции потенциометра. То есть, стоит повернуть потенциометр, и поток цифр мгновенно отреагирует на это действие новыми изменениями.
/*
Считывание последовательной передачи данных через аналоговый контакт
Считывает входные аналоговые данные от 0-го контакта, отображая результаты в меню Serial Monitor.
Подсоединяем центральный контакт потенциометра к 0-му аналоговому контакту (A0), а крайние (боковые) контакты потенциометра – к «земле» и 5-вольтному контакту.
Данный пример кода не защищен авторским правом.
*/
// эта функция запускается один раз – при рестарте:
void setup() {
// инициализируем последовательную передачу данных со скоростью 9600 бит в секунду:
Serial.begin(9600);
}
// этот цикл, запустившись, будет повторятся снова и снова:
void loop() {
// считываем входные данные на 0-вом аналоговом контакте:
int sensorValue = analogRead(A0);
// отображаем считанную информацию:
Serial.println(sensorValue);
delay(1); // задержка между считываниями – для стабильности программы
}
См.также
- setup()
- loop()
- analogRead()
- int
- Serial
- BareMinimum
- Blink
- DigitalReadSerial
- AnalogReadSerial
- Fade
- ReadAnalogVoltage
Внешние ссылки
- Страницы с устаревшим атрибутом подсветки синтаксиса «enclose»
- Страницы, использующие повторяющиеся аргументы в вызовах шаблонов
- Справочник языка Arduino
- Arduino
- Перевод от Сubewriter
- Проверка:myagkij
- Оформление:myagkij
- Редактирование:myagkij
- Пример
- Примеры
- Пример программирования Arduino
- Примеры программирования Arduino
- SEO