Опишем программу управления серво-мотором командами с COM-порта на примере контроллера Arduino Leonardo.

#include <Servo.h> //подключение библиотеки servo
Servo myservo; // создание объекта servo для управления мотором
// на большинстве плат Arduino можно создать 12 servo объектов
String inputString = ""; // переменная типа string для сохранения входных данных
boolean stringComplete = false; // флаг данные получены
void setup() {
myservo.attach(9); //выбираем девятый управляющий дискретный выход контроллера для управления моторчиком
//инициализация последовательного порта:
Serial.begin(9600);
// получить 200 байтов и записать в переменную inputString:
inputString.reserve(200);
myservo.write(0); //выставляем изначальное положение серво в 0 градусов
}
void loop() {
serialEvent(); //вызов нашей коммуникационной функции
// печатаем ответ в COM-порт и поворачиваем серво на заданный угол:
if (stringComplete) {
Serial.println(inputString);
myservo.write(inputString.toInt()); //задание положения серво-машинке из полученной команды
// обнуляем строковую переменную:
inputString = "";
stringComplete = false;
}
}
void serialEvent() {
while (Serial.available()) {
// получить новый байт данных:
char inChar = (char)Serial.read();
// добавить новый байт к строковой переменной inputString:
inputString += inChar;
// если входной символ является новой строкой, взвести флаг
// что бы основной цикл обработал принятую команду:
if (inChar == '\n') {
stringComplete = true;
}
}
}
| Arduino | Servo |
| Ноль питания | Коричневый провод |
| Плюс 5В | Красный провод |
| Дискретный выход №9 | Оранжевый провод |

Умный дом #11: Коммуникационные сети
Умный дом #11: Коммуникационные сети Любая система умного дома невозможна без надежной ..
Плата защиты балансировки 2-х литий-ионных аккумуляторов 7,4В
Контроллер BMS защиты двух 18650 аккумуляторов с балансиром Защитная плата литиевой батареи, з..
112.18грн.
Набор перемычек (папа-папа) 40шт 20см
Набор соединительных проводов для соединения плат контроллера с периферией без пайки. Подходят под с..
88.83грн.
Светодиодная матрица 8х8 с управляющим контроллером MAX7219
Готовый блок светодиодной матрицы 8х8 с поддержкой каскадного включения нескольких идентичных модуле..
87.37грн.
Концевик оптический безконтактный
Датчик работает на основе открытой оптопары. Срабатывает при появлении непрозрачного предмета в разр..
31.94грн.





