我正在尝试通过USB使用python控制Arduino输出。 基本上,如果python中的值x为5,则数字输出5应为高。
我想象的是
上的这样的东西Python 方:
import serial
import time
ser = serial.Serial('/dev/ttyACM0', 9600)
x=5
while True:
ser.write('x')
Arduino的:
void setup(){
Serial.begin(9600);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
}
void loop()
{
int out;
out = Serial.read();
if (out == 5){
digitalWrite(5, HIGH);
}
我离开了吗?
答案 0 :(得分:0)
python的一个改进:
x='5'
while True:
ser.write(x)
现在,你得到'5',而不是'x'。
和arduino代码:
void setup() {
Serial.begin(9600);
for(char i=0;i<10;i++)
pinMode(i, OUTPUT);
}
void loop() {
;
}
void serialEvent() {
if (Serial.available()) {
char inChar = (char)Serial.read();
inChar-='0';
for(char i=0;i<10;i++)
digitalWrite(i, LOW);
digitalWrite(inChar,HIGH);
}
}