|
我是一个刚学Arduino的菜鸟,最近碰到一个疑惑。
我想用Arduino Motor Schield(专门控制电机的扩展版)控制一个电机然后让这个电机带动一个杠杆,杠杆的另一端和电位计绑定在一起。然后我想让电机转动然后带动这个杠杆,这样电位计就会随之变化。然后我想通过analog.read()这个函数得到电位计的模拟值。
我的想法是是否Arduino同时支持两个程序同时运行,这样一个程序控制电机,另一个程序用来读取电位计的模拟值。Arduino好像不支持多线程吧。如果我这样写代码的话,就只能分别读两次电位值,即电机转动到两端的值,如果我想要电机转动每一时刻的值应该怎么做呢。
非常感谢各位指教。
//电机控制
void setup(){
pinMode(12,OUTPUT);
pinMode(9,OUTPUT);
Serial.begin(9600);
}
void loop(){
int potiValue;
digitalWrite(12,HIGH);//电机方向
digitalWrite(9,LOW);//电机停止
analogWrite(3,1000);//电机速度
potiValue = analogRead(A5);//电位计模拟值
Serial.println(potiValue);//打印
delay(5000);
digitalWrite(12,LOW);//另一个方向
digitalWrite(9,LOW);
analogWrite(3,1000);
potiValue = analogRead(A5);
Serial.println(potiValue);
delay(5000);
} |
|