0
我正在尝试从串行监视器获取用户输入,以根据输入来转换步进电机。但是,我的代码返回ASCII值而不是原始输入。在Arduino中将ASCII转换为int
#include <Stepper.h>
Stepper small_stepper(steps_per_motor_revolution, 8, 10, 9, 11);
void setup() {
// Put your setup code here, to run once:
Serial.begin(9600);
Serial.println("Ready");
}
void loop() {
// Put your main code here, to run repeatedly:
int Steps2Take = Serial.read();
Serial.println(Steps2Take); // Printing
if (Steps2Take == -1)
Steps2Take = 0;
else {
small_stepper.setSpeed(1000); // Setting speed
if (Steps2Take > 0)
small_stepper.step(Steps2Take * 32);
else
small_stepper.step(-Steps2Take * 32);
delay(2);
}
}
https://www.arduino.cc/en/Serial/Read –
https://www.arduino.cc/en/Serial/ParseInt块,这是在您的演示情况刚刚好,但会在真实情况下的干扰... – datafiddler
因为你是新的,我想说,如果你愿意,可以接受的话,答案是可以接受的。有一点“小费”会变成绿色:) – Leos313