Python3 串口接收与发送16进制数据包的实例

如下所示:

import serial
import string
import binascii
s=serial.Serial('com4',9600)
s.open()
#接收
n=s.inwaiting()
if n:
  data= str(binascii.b2a_hex(s.read(n)))[2:-1]
  print(data)
#发送
d=bytes.fromhex('10 11 12 34 3f')
s.write(d)
s.close()

以上这篇Python3 串口接收与发送16进制数据包的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 对python3 Serial 串口助手的接收读取数据方法详解

    其实网上已经有许多python语言书写的串口,但大部分都是python2写的,没有找到一个合适的python编写的串口助手,只能自己来写一个串口助手,由于我只需要串口能够接收读取数据就可以了,故而这个串口助手只实现了数据的接收读取. 创建串口助手首先需要创建一个类,重构类的实现过程如下: #coding=gb18030 import threading import time import serial class ComThread: def __init__(self, Port='COM3

  • python简单程序读取串口信息的方法

    本文实例讲述了python简单程序读取串口信息的方法.分享给大家供大家参考.具体分析如下: 这段代码需要调用serial模块,通过while循环不断读取串口数据 import time import serial ser = serial.Serial( #下面这些参数根据情况修改 port='COM1', baudrate=9600, parity=serial.PARITY_ODD, stopbits=serial.STOPBITS_TWO, bytesize=serial.SEVENBIT

  • 对python以16进制打印字节数组的方法详解

    一.问题描述 如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼. 二.运行效果 上面一行是直接用print打印的结果,很明显,第一个字节0x7b就被转换成'{'了. 三.代码 那么,如何输入上图中最后一行的格式呢,很简单: def print_hex(bytes): l = [hex(int(i)) for i in bytes] print(" ".join(l)) 以上这篇对python以16进制打印字节数组的方法详解就是小编分享给大家的全

  • Python简单实现TCP包发送十六进制数据的方法

    本文实例讲述了Python简单实现TCP包发送十六进制数据的方法.分享给大家供大家参考,具体如下: 举例: 0x12, 0x34可以直接拼成 "\x12\x34". 客户端代码示例: #-*- encoding: utf-8 -*- import json import socket import sys import binascii reload(sys) sys.setdefaultencoding('utf-8') if __name__=="__main__&quo

  • 使用python3实现操作串口详解

    通过引用serial模块包,来操作串口. 1.查看串口名称 在Linux和Windows中,串口的名字规则不太一样. 需要事先查看. Linux下的查看串口命令 root@D2:~# ls -l /dev/ttyS* crw-rw---- 1 root dialout 4, 64 Dec 26 06:53 /dev/ttyS0 crw-rw---- 1 root dialout 4, 65 Dec 26 06:41 /dev/ttyS1 crw--w---- 1 root tty     4,

  • Python3 串口接收与发送16进制数据包的实例

    如下所示: import serial import string import binascii s=serial.Serial('com4',9600) s.open() #接收 n=s.inwaiting() if n: data= str(binascii.b2a_hex(s.read(n)))[2:-1] print(data) #发送 d=bytes.fromhex('10 11 12 34 3f') s.write(d) s.close() 以上这篇Python3 串口接收与发送1

  • MFC串口通信发送16进制数据的方法

    本文实例为大家分享了MFC串口通信发送16进制数据的具体代码,供大家参考,具体内容如下 MFC串口通信会使用m_mscomm控件. 发送数据一般是在edit control 里输入自己想发送的内容,然后点击send button. 如果直接发送字符串内容,通过下面代码(send button内写入)即可: UpdateData(true); //读取编辑框内容 m_mscomm.put_Output(COleVariant(m_EditSend)); m_EditSend.Empty(); //

  • Java解析DICOM图之如何获得16进制数据详解

    前言 在最近的一个项目需要用JAVA来解析DICOM图片,DICOM被广泛应用于放射医疗,心血管成像以及放射诊疗诊断设备(X射线,CT,核磁共振,超声等),并且在眼科和牙科等其它医学领域得到越来越深入广泛的应用,在实现中遇到一些问题下面做一些记录. 首先找一个*.dcm文件.用编辑器打开可以看到如下界面.我是用的编辑器是UltraEdit 红字标注的是字节码的标注,前面8行代码是文件的头信息一般没用.从第九行开始的四个十六进制数"44,49,43,4D"是很重要的.用ASCll码解释就

  • php实现文件与16进制相互转换的方法示例

    前言 本文给大家介绍的是如何使用PHP实现文件与16进制相互转换,例如可以把文件转为16进制后保存到数据库中,也可以把16进制数据转为文件保存. 代码如下: <?php /** * php 文件与16进制相互转换 * Date: 2017-01-14 * Author: fdipzone * Ver: 1.0 * * Func * fileToHex 文件转16进制 * hexToFile 16进制转为文件 */ /** * 将文件内容转为16进制输出 * @param String $file

  • C/C++ 读取16进制文件的方法

    1.为什么有这种需求 因为有些情况需要避免出现乱码.不管什么编码都是二进制的,这样表示为16进制就可以啦. 2.如何读取16进制文件 最近编程用这一问题,网上查了一下,感觉还是自己写吧. 16进制数据一般是:text=0x340xb5...,就是0x开头,之后是两个数字十六进制数. 如果直接使用sscanf(text,"0x",&num),会把连续的数字读进去直到遇到'x'. 如使用sscanf读取text第一个读到的十六进制数是0x340,误判啦.最后,因为是4个一组,就先把

  • java发送heartbeat心跳包(byte转16进制)

    复制代码 代码如下: package com.jxy.web; import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.io.UnsupportedEncodingException;import java.net.Socket;import java.net.UnknownHostException; import com.jxy.tools.MyByte; pu

  • python3.4 将16进制转成字符串的实例

    将socket收到的16进制转成字符串 def hex_to_str(b): s = '' for i in b: s += '{0:0>2}'.format(str(hex(i))[2:]) return(s) 以上这篇python3.4 将16进制转成字符串的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 对python3.4 字符串转16进制的实例详解

    如下所示: def str_to_hex(s):     s = s.split(' ')     send_buf = b''     for i in range(len(s)):         send_buf  += struct.pack('B',int(s[i],16))     return(send_buf) 以上这篇对python3.4 字符串转16进制的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 16进制显示字节流技巧分享

    用UE的人都会觉得16进制显示文件灰常方便.为啥捏?当你要对文件加密.转码.编码的时候,蹦出一堆01二进制看着都会头大.毕竟十六进制显示文件简短方便.至少中考高考时涂过卡吧,1+2+4+8能算明白是几吧.当然,那些中考和高考都能把1248码都涂错的童鞋们,一看就知道它们果断与程序猿这个"神剩"的职业无缘哈-- 因为之前试着参加过科普创新大赛,当时做的咚咚是把文件以字节流读入,并转化成二进制.四进制.十六进制字符串,然后刷的一下子输出到控制台.再根据每个位的值,分别以2色.4色.16色的

  • vbs sendKeys 16进制的结合使用(打开IE,静音,打开播放器等)

    复制代码 代码如下: Dim WshShell Set WshShell = CreateObject("Wscript.Shell") 下面的每一行都是一个不错的命令,请说出运行下列每个语句的效果.不要一次运行全部,逐个看效果. '打开IE 'WshShell.SendKeys Chr(&H88AC) '系统静音'WshShell.SendKeys Chr(&H88AD) 'WshShell.SendKeys Chr(&H88AE) 'WshShell.Sen

随机推荐