2014-09-20 6 views
1

디바이스에 대한 직렬 연결 인 간단한 스크립트가 있습니다. 명령을 보내려고하지만 어떻게 든 출력이 아니라 오히려 입력됩니다.시리얼에서 출력되지 않음

#!/usr/bin/python 
import serial 
ser = serial.Serial('/dev/ttyUSB0', 19200, timeout=1) 
x = ser.write('AT')   # write a string 
s = ser.read(x)  # read x bytes (timeout) 
#line = ser.readline() # read a '\n' terminated line 
print (s) 
ser.close() 

NB : 여기 내 스크립트 내가 필요로하는 출력을 얻기 위해 "읽기"명령을 보내 "쓰기"를 사용하고 있습니다.

전혀 신경 쓰지 마세요 !!! Enter 키를 시뮬레이트하고, 새로운 라인에 응답을 인쇄하고, 1 바이트 이상을 인쇄하려고 시도하여 문제를 해결할 수있었습니다 (주의 : 바이트 수를 지정하지 않으면 모든 성공적인 출력에 대한 일반적인 응답으로 "A"가 생성되고 " "라고 표시됩니다.

#!/usr/bin/python 
import serial 
ser = serial.Serial('/dev/ttyUSB0', 19200, timeout=1) 
x = ser.write('AT' + '\r\n')   # write a string 
s = ser.read(100)  # read x bytes (timeout) 
#line = ser.readline() # read a '\n' terminated line 
print (s) 
ser.close() 

답변

0

위의 편집에는 실무 답변이 포함되어 있습니다. 나는 또한 더 나은 해결책을 고려할 것이다. 보고 주셔서 감사합니다.

관련 문제