libreria - Datos binarios con pyserial(puerto serie de python)
python y arduino pdf (2)
Necesita convertir sus datos en una cadena
"/xc0/x04/x00"
Los caracteres nulos no son un problema en Python: las cadenas no tienen terminación nula, el byte cero se comporta como otro byte "/x00"
.
Una forma de hacer esto:
>>> import array
>>> array.array(''B'', [0xc0, 0x04, 0x00]).tostring()
''/xc0/x04/x00''
El método serial.write () en pyserial parece solo enviar datos de cadena. Tengo matrices como [0xc0, 0x04, 0x00] y quiero poder enviarlas / recibirlas a través del puerto serie. ¿Hay algún método por separado para E / S en bruto?
Creo que podría necesitar cambiar las matrices a [''/ xc0'', ''/ x04'', ''/ x00''], aún así, el carácter nulo podría ser un problema.
Un método alternativo, sin usar el módulo de array
:
def a2s(arr):
""" Array of integer byte values --> binary string
"""
return ''''.join(chr(b) for b in arr)