Потенциометр считывает буквы
Мой потенциометр считывает буквы «t» или «u» в моем серийном номере. Я считаю, что мой потенциометр подключен правильно. Что я упускаю? Вот мой код:
#include <VarSpeedServo.h>
VarSpeedServo servo;
const byte buttonLeft = 2;
const byte buttonRight = 3;
const int led = 7;
const int potentioPin = A0;
int potentioVal = 0;
void setup() {
Serial.begin(9600);
servo.attach(11);
// РЕЖИМЫ ПИН
pinMode(buttonLeft, INPUT);
pinMode(buttonRight, INPUT);
pinMode(led, OUTPUT);
// ПРЕРЫВАТЬ
attachInterrupt(digitalPinToInterrupt(buttonLeft), turnServo, FALLING);
}
void loop() {
int stateBtnLeft = digitalRead(buttonLeft);
int stateBtnRight = digitalRead(buttonRight);
if(stateBtnLeft == 0 && stateBtnRight == 0){
digitalWrite(led, HIGH);
} else {
digitalWrite(led, LOW);
}
}
void turnServo(){
Serial.println("Button was pushed");
potentioVal = analogRead(0);
Serial.write("Servo moving with speed ");
Serial.write(potentioVal);
Serial.println("");
//servo.write(180, potentioVal, true);
//Serial.write("Достигнуто положение двигателя");
//lightLed();
}
void lightLed(){
digitalWrite(led, HIGH);
delay(2000);
digitalWrite(led, LOW);
}
@Robin Hanseeuw, 👍0
2 ответа
▲ 3
write()
— это функция для двоичных данных. Если вы хотите распечатать число как текст, используйте print()
или println()
.
Serial.println(potentioVal);
,
@Juraj
Смотрите также:
- Программа не проверяет вход/изменения потенциометра
- Как разделить входящую строку?
- Как вывести несколько переменных в строке?
- В чем разница между Serial.write и Serial.print? И когда они используются?
- Загрузка Arduino Nano дает ошибку: avrdude: stk500_recv(): programmer is not responding
- Программы построения последовательных данных
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?