2013-07-19 1 views
0

XMODEM 프로토콜을 사용하여 파일을 전송하려고합니다.이 링크에서 제공되는 솔루션을 보았습니다 : Please help in using xmodem protocol 제 경우에는 파일을 보낼 수 있지만이 내용으로는 도움이되지 않습니다. 저 ... 여기 파이썬에서 XMODEM을 사용하여 파일 보내기

내 송신 코드 :

import serial 
from xmodem import XMODEM 
from time import sleep 

s = serial.Serial(port='/dev/ttyUSB0', baudrate=115200, bytesize=8, parity='N',  stopbits=1, timeout=None, xonxoff=0, rtscts=0) 
s.open() 

def getc(size, timeout=1): 
    return s.read(size) 
def putc(data, timeout=1): 
    s.write(data) 
modem = XMODEM(getc, putc) 

f = open('file.txt', 'rb') 
stream = f.readlines() 
status = modem.send(stream, retry=8) 
s.close() 
stream.close() 

여기 내 RECV 코드 : 나는 그냥 파일을 열 생각

import serial 
from xmodem import XMODEM 
from time import sleep 

s = serial.Serial(port='/dev/ttyUSB0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=None, xonxoff=0, rtscts=0) 
s.open() 

def getc(size, timeout=1): 
    return s.read(size) 
def putc(data, timeout=1): 
    s.write(data) 
modem = XMODEM(getc, putc) 

stream = open('file.txt', 'wb') 
modem.recv(stream) 
s.close() 
+0

바이트 수를 기록 반환 putc하지 않나요? recv에 – andyn

+0

? 나는 읽으려고했으나 결과는 동일하게 유지됨 – aldim

답변

0

하지만, 보내기 루틴에서 읽지 마십시오.

이 시도 :

f = open('file.txt', 'rb') 

stream = f.readlines() 
+0

결과가 똑같이 남았습니다. ( – aldim

관련 문제