ESP8266 Wifi 대 직렬 모듈을 직렬 대 USB 커넥터에 연결했습니다.ESP8266 - 터미널 연결이 작동하지 않지만 Python 스크립트
나는 다음과 ESP8266에 연결할 수 있어요 파이썬 스크립트와 설정 :
import serial
def echoCommand(cmd,expected_return,halt_on_fail,tOut = timeoutPeriod) :
ser.write(cmd + '\r\n')
if(echo_local_command):
print('Sent --> '+cmd)
if not echoFind(expected_return,tOut) and (halt_on_fail):
print(cmd+" failed")
sys.exit()
def echoFind(expected_return,tOut):
timeoutTime = datetime.datetime.now() + datetime.timedelta(0,tOut)
while datetime.datetime.now() < timeoutTime:
while ser.inWaiting():
ret = ser.readline().rstrip()
print ret
time.sleep(0.1)
if expected_return in ret:
return True
return False
ser = serial.Serial('/dev/ttyUSB0', 9600, timeout=5)
echoCommand('AT+RST', 'ready', True)
어떤 이유로 내가 좋아하는 터미널에서 동일한 작업을 수행 할 수 있지만 마법처럼 위의 작품 전무, GTKTerm, 퍼티 (우분투 실행 중, CR과 LF가 표시되는 권장 터미널)
같은 전송 속도와 설정을 사용했지만 운이 없었습니다. 하드웨어 및 소프트웨어 흐름 제어를 전환하려고 시도했으며 추가 할 CR 및 LF를 확인했습니다.
이것이 작동하지 않는 이유는 무엇입니까?
나는 전무 열려하고있는 경우 다음 ESP8266의 출력을 표시하고 문제를 보내는 전무에 표시됩니다 파이썬 스크립트를 실행하는 것으로 나타났습니다.
Bertus를 작동 할 수있다! 나는 그 글에 대한 평판을 당신에게 기부 할 수 있었으면 좋겠다. 저는 좋은 명령을 보내기 위해 4 시간을 노력했습니다. 나는 단순한 AT + RST를 나의 esp 's에 보내고 점점 더 "ERROR"를 되풀이했다. 내가해야만하는 것은 Termite 3.1에서 cr-lf를 추가하는 것입니다. 고맙습니다! – Roger