MacOS'ta kod darbesi kullanarak cihaza bağlanıyorum ve bu kod 100 kez üzerinden 1 veya iki kez bağlantı kuracak ve yanıt vermiyor (zaman aşımı olmadığından). kere. Pyserial'ın seri çıktısını okumak güvenilir bir şekilde çalışmıyor
ser = serial.Serial(port="/dev/xyz",timeout = None, baudrate=115200, parity = serial.PARITY_NONE, bytesize = serial.EIGHTBITS, stopbits = serial.STOPBITS_ONE)
def exitSer(ser):
print("Closing")
ser.close()
atexit.register(exitSer, ser)
if ser.is_open:
time.sleep(2)
while(1):
print(ser.readline().decode("utf-8"))
nasıl bu liman tamamen ücretsiz ve kullanımı ve nasıl liman zorla özgür yaptıktan sonra serbest Tty bağlantı noktasının bayrakları ayarlamak için kullanılabilir olup olmadığını bulmak için fcntl vb gibi programları kullanmak söyleyebilir misiniz.
Bu çalışma tamamlandığında, her bir iş parçacığının satırlarda çıktı beklediği farklı aygıtları çalıştırdığı bu çok iş parçacıklıyı çalıştırmam gerekir. Bunun için herhangi bir öneri, bu durumda çalışır.
Başvuru yaptığınız diğer uygulamanın farklı bir baud hızı vardır ve 1 durdurma biti kullanır. Seri bağlantı noktasından veri okumak için kullandığınız kodu postalayabilir misiniz? –
Sadece soru güncellendi. Yanıt için teşekkür ederim. –
Seri aygıtlarda readline() kullanmaktan kaçınmaya çalışıyorum, ilk olarak yeni bir satır karakteri aldığınızda bir şey yazıyor. Yani başka bir şey alınırsa, onu göremezsiniz. Bunun yerine aşağıdaki gibi bir şey kullanabilirsiniz: sys.stdout.write (ser.read (1)) sys.stdout.flush() –