我正在尝试使用XMODEM协议传输文件,我在此链接中看到了解决方案:Please help in using xmodem protocol,但在我的情况下,文件可以发送,但不能包含此内容,请帮助我...
下面是我的发送代码:
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()发布于 2013-08-07 22:39:28
我认为您只是打开了文件,但从未在您的send例程中读取它。
试试这个:
f = open('file.txt', 'rb')
stream = f.readlines()发布于 2018-08-09 14:45:26
在发送例程中尝试执行以下操作:
stream = open('file.txt', 'rb')
status = modem.send(stream, retry=8)https://stackoverflow.com/questions/17739992
复制相似问题