Показания позиции и количества поворотов обнуляются

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Родился
Сообщения: 2
Зарегистрирован: Вс янв 22, 2023 21:36:16

Сообщение olkhoneagle »

Здравствуйте, есть проблема с написанием программы на основе ардуино уно, в которой нужно сделать так, чтобы при нажатии на клавишу (в данном случае "q"), двигатель делал определённое количество оборотов (здесь 2). Программа выглядит примерно так :
#include <Encoder.h>

Encoder encoder(2,3);
long position = 0;
int rotation = 0;
void setup()
{
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
Serial.begin(9600);
}


void loop()
{
if (Serial.available() > 0)
{
int inByte = Serial.read();
position = encoder.read() / 10;
rotation = abs(position) / 10;
Serial.print("pos: ");
Serial.println(position);
Serial.print("rot: ");
Serial.println(rotation);
switch (inByte)
{
case 'q':
while (rotation < 2)
{
analogWrite(5, 30);
analogWrite(6,0);
position = encoder.read() / 10;
rotation = abs(position) / 10;
Serial.print("pos: ");
Serial.println(position);
Serial.print("rot: ");
Serial.println(rotation);
}
}
}
}
Реклама
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

А проблема то в чём ?
Реклама
Родился
Сообщения: 2
Зарегистрирован: Вс янв 22, 2023 21:36:16

Сообщение olkhoneagle »

показатели позиции и количества поворотов всегда выводят ноль
Ответить

Вернуться в «Разные вопросы по МК»