MicroPython串口数据转换技巧

技巧一:还原从串口接收的HEX字符串

  • 首先上官方文档:(确认接收数据类型为bytes)

MicroPython串口数据转换技巧_第1张图片

  •  串口读来的bytes类型HEX数据转换成HEX类型字符串转换函数。
#ByteToHex的转换,返回数据16进制字符串
def ByteToHex( bins ):
    return ''.join( [ "%02X" % x for x in bins ] ).strip()
  • 附一段测试代码。
# 还原从串口接收的HEX字符串
# ESP、ESP8266、STM32平台通用
import time
from machine import UART, Pin
from ubinascii import *
uart = UART(2, baudrate=115200, rx=16, tx=17, timeout=10)
#ByteToHex的转换,返回数据16进制字符串
def ByteToHex( bins ):
    return ''.join( [ "%02X" % x for x in bins ] ).strip()

while True:
    #time.sleep(0.01)
    if (uart.any()):
        temp = uart.read(1)
        print(temp)
        temp = ByteToHex(temp)
        print(temp)
  •  串口助手发送16进制010400000008f1cc,函数接收截图。(用处自己体会)

MicroPython串口数据转换技巧_第2张图片

 

你可能感兴趣的:(MicroPython,UART,字符转换)