Python 在xmodem协议中为getc方法提供的size值是多少?

Python 在xmodem协议中为getc方法提供的size值是多少?,python,xmodem,Python,Xmodem,我正在尝试使用XMODEM协议传输文件 我看到并不理解中提供的解决方案: 我看见了 为getc方法提供的size值是多少?未为其指定中给定的任何值。 当我使用中解释的简单方法时,我最终得到了错误:找不到记录器xmodem的处理程序。 这是我发送文件的代码 import serial from xmodem import XMODEM, CRC from time import sleep def getc(size, timeout=1): return port.read(size)

我正在尝试使用XMODEM协议传输文件

我看到并不理解中提供的解决方案:

我看见了

为getc方法提供的size值是多少?未为其指定中给定的任何值。 当我使用中解释的简单方法时,我最终得到了错误:找不到记录器xmodem的处理程序。 这是我发送文件的代码

import serial
from xmodem import XMODEM, CRC
from time import sleep
def getc(size, timeout=1):
    return port.read(size)
def putc(data, timeout=1):
    port.write(data)
    sleep(0.001) # give device time to send ACK
port = serial.Serial(port='COM10',parity=serial.PARITY_NONE,bytesize=serial.EIGHTBITS,stopbits=serial.STOPBITS_ONE,timeout=0,xonxoff=0,rtscts=0,dsrdtr=0,baudrate=9600)

sleep(2) # give device time to handle command
stream = open('..\\stream\\myfile.bin','rb')
modem = XMODEM(getc, putc)
modem.send(stream, quiet = 0)

我得到一个错误:找不到记录器xmodem的处理程序。

这是第一个问题的解决方案,xmodem使用getc和putc分别从端口读取字节数大小,并将数据写入端口。它们需要由用户定义并提供给XMODEM对象。XMODEM在内部调用大小为的getc

找不到记录器xmodem的处理程序的错误实际上不是一个错误。只是xmodem包警告您它正在尝试输出日志消息,但没有配置记录器xmodem。请参阅:。@PedroRomano-非常感谢您的回复。你给了我第二个问题的答案。这是第一个问题的解决方案,XMODEM使用getc和putc分别从端口读取字节数和将数据写入端口。它们需要由用户定义并提供给XMODEM对象。XMODEM在内部调用大小为的getc。你好,曼珠