python如何通过串口打印十六进制0xff

按照一般规律,ser.write(0xff)应该是输出0xff到串口的,但是可以实际跑下试试,发现输出了一串0000000.很恶心,
后来发现要想输出一串hex数据流需要这样定义:
TE="\x55\x55\x55\x55\x55\x55\x55\x55\xdd\xff\x33\x44\x22\x11"
不是0xff是\xff,也能用,不知道谁跟谁不一样

import serial
import time
import struct
from TE import TE

print “hello world”
ser = serial.Serial(“COM6”,115200)
#ser.write(“send test”)

#str = ser.read(100)
list = [‘U’,‘1’,‘2’,‘3’,0x55,0xbb]
print list[0]
print list[4]
#ser.write(list[0])

native byteorder

buffer = struct.pack(“ihb”, 1, 2, 3)
print repr(buffer)
print struct.unpack(“ihb”, buffer)

data from a sequence, network byteorder

data = [1, 2, 3]
buffer = struct.pack("!ihb", *data)
print repr(buffer)
print struct.unpack("!ihb", buffer)
te=0x05
TE="\x55\x55\x55\x55\x55\x55\x55\x55\xdd\xff\x33\x44\x22\x11"
if te==5:
print “test”
ser.write(TE)
#ser.write(TE.encode(“utf-8”))

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值