import serial
import time
temp="U2 L U' R2 U R B' R L' B2 D' L2 U F2 U2 D R2 F2 U'"
re=""
ser=serial.Serial("/dev/ttyACM0",9600,timeout=1)
k=3
try :
while re=="":
ser.write(temp)
re=ser.readline()
print(re)
time.sleep(0.1)
except KeyboardInterrupt:
ser.close()
樹莓派端如上,Arduino上面如下
String temp="";
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(13,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
if(Serial.available()>0)
{
digitalWrite(13,HIGH);
temp=Serial.readString();
Serial.print(temp);
}
}
我實在不想說網上的一些狗屁不通,還亂髮的東西,這個程序就是這樣寫的,但是我的樹莓派3b+跑起來,會有錯,不是程序報錯,是在樹莓派端根本就沒接收到Arduino發還的數據,我他喵找了一晚上,各位大哥竟然沒這個問題????
還是說我的板子有毒,垃圾!!
沒辦法,後來樹莓派上面改成死循環,臥槽,終於有數據返回來了,我明白,是arduino太垃圾了,返回數據慢了!!!所以並沒有顯示出來,如果你想要數據怎麼辦,不妨寫成while吧,知道樹莓那邊可以接收到數據,就說明Arduino可以根據數據動作了,坑坑坑!!!!!!!!!!!!!