python串口编程实例

python串口编程实例,第1张

Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议。

Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C++/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。

1、字符串的发送接收

短接串口的2、3脚,创建一个文本,如:

python串口编程实例,python串口编程实例,第2张

或者你可以稍微添加几句,变成你任意输入后打印出你的键入信息。

python串口编程实例,python串口编程实例,第3张

其中,read(value)方法的参数value为需要读取的字符长度。如果想要全部读取,提供两个方法:

1)inWaiTIng::监测接收字符。inWaitTIng返回接收字符串的长度值,然后把这个值赋给read做参数。

2)readall()::读取全部字符。

2、十六进制显示

十六进制显示的实质是把接收到的字符诸葛转换成其对应的ASCII码,然后将ASCII码值再转换成十六进制数显示出来,这样就可以显示特殊字符了。

在这里定义了一个函数,如hexShow(argv),代码如下:

python串口编程实例,python串口编程实例,第4张

3、十六进制发送

十六进制发送实质是发送十六进制格式的字符串,如‘xaa’,‘x0b’。重点在于怎么样把一个字符串转换成十六进制的格式,有两个误区:

1)‘x’+‘aa’是不可以,涉及到转义符反斜杠

2)‘\x’+‘aa’和r‘x’+‘aa’也不可以,这样的打印结果虽然是xaa,但赋给变量的值却是‘\xaa’

这里用到decode函数,

python串口编程实例,python串口编程实例,第5张

需要注意一点,如果字符串list的长度为奇数,则decode会报错,可以按照实际情况,用字符串的切片 *** 作,在字符串的开头或结尾加一个‘0’

假如在串口助手以十六进制发送字符串“abc”,那么你在python中则这样 *** 作“self.l_serial.write(”x61x62x63“)”

当然,还有另外一个方法:

python串口编程实例,python串口编程实例,第6张

同样可以达到相同目的。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2718260.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存