Bilgisayarım ile Arduino arasında python ile seri hız testi yapmaya çalışıyorum (pyserial 3.0.1). Arduino Duemilanove'u (ATmega328) USB üzerinden Ubuntu VM'imle bağladım. Cihaz mükemmel bir şekilde gösterir ve ben arduino IDE (1.6.7) üzerinden bu basit döngü kroki ile parladı:python seri, arduino hız testine
void setup() {
Serial.begin(115200);
}
void loop() {
while(Serial.available()) {
Serial.write(Serial.read());
}
}
Benim piton programı şöyle görünür:
from __future__ import print_function
import time
import serial
ser = serial.Serial(
port='/dev/ttyUSB0',
baudrate=115200,
timeout=1
)
i = 0;
#wait until bootloader finished
time.sleep(2)
try:
t0 = time.time()
while i < 1000:
ser.write(b'U')
ser.flush()
while ser.in_waiting <= 0:
pass
ret = ser.read(1)
if ret != 'U':
print("Error received: %s" % ret)
i += 1
t1 = time.time()
except KeyboardInterrupt:
ser.close()
exit(1)
ser.close()
print("%.3f" % (t1-t0))
Sorun, öyle Bazen çalışır ve bazen python programı geri dönmez ve Ctrl-C'den çıkar. Eğer bu olursa arduino RX ve TX ledlerinin yanıp sönmesini göremiyorum.
Birisi bunun neden olduğunu biliyor mu?