Слайдер
Слайдер является пропорциональным элементом управления и позволяет передать на микроконтроллер плавное изменение своего положения. Он позволяет плавно изменять значение от 0 до 100 (целые числа).
Структура данных
Данные | Тип | Значение |
Положение слайдера | unsigned char | 0..100 положение движка |
Настройка
Свойства слайдера позволяют задать следующие значения:
- Имя переменной - имя слайдера и переменной в исходном коде для микроконтроллера, допускается задавать имя по правилам именования переменных языка C.
- Ориентация - можно задать ориентацию слайдера в интерфейсе управления. Ориентация может быть "Вертикальная" или "Горизонтальная".
Примеры программирования
Для получения положения слайдера, его достаточно прочитать из соответствующего поля структуры RemoteXY:
int pos = RemoteXY.slider_1;
/* pos равно положению слайдера, изменяющееся от 0 до 100 */
Для управления аналоговым сигналом на выводе PIN микроконтроллера в Arduino IDE можно использовать следующий код:
analogWrite(PIN, RemoteXY.slider_1 * 2.55);
Для управления двигателем через драйвер моторов в Arduino IDE можно использовать следующий код, в котором пин PIN_DIR - направление вращение двигателя, пин PIN_SPD - ШИМ вывод для управления двигателем:
int pos = RemoteXY.slider_1;
if (pos>50) { // вперед
digitalWrite(PIN_DIR, HIGH);
analogWrite(PIN_SPD, (pos-50) * 5.11);
}
else if (pos<50) { // назад
digitalWrite(PIN_DIR, LOW);
analogWrite(PIN_SPD, (50-pos) * 5.11);
}
else { // стоп
digitalWrite(PIN_DIR, LOW);
analogWrite(PIN_SPD, 0);
}
Для управления сервомашинкой в Arduino IDE можно использовать одну из строк следующего кода:
myservo.writeMicroseconds(RemoteXY.slider_1 * 20 + 500);
/* или */
myservo.write(RemoteXY.slider_1 * 1.8);
/* для реверсирования направления */
myservo.writeMicroseconds(2500 - RemoteXY.slider_1 * 20);
/* или */
myservo.write(180 - RemoteXY.slider_1 * 1.8);