python进行usb通讯_Python实现树莓派USB串口通讯

本文介绍了如何在树莓派上使用Python进行USB串口通讯,涉及FTDI FT203XS芯片,通过lsusb、ls -l /dev/tty*、stty等命令识别和配置串口,利用pyserial库实现串口通信,并提供了测试脚本。
摘要由CSDN通过智能技术生成

→ USB串口通讯

树莓派上自带一个串口,用于连接蓝牙或是串口命令行,串口资源很少,对于嵌入式的应用来说串口设备很多,需要的串口数量也很多,因为通过USB外接串口是一个不错的选择。

1、 我手中的USB转串口芯片是FTDI公司的FT203XS,把它插入树莓派的USB接口中,命令行使用lsusb查看设备能否识别。

2、查看识别成的串口号ls -l /dev/tty*   根据列表看到了识别成了ttyUSB0,查看串口的波特率 stty -F /dev/ttyUSB0

3、查看串口的连接信息 命令行输入dmesg | grep ttyUSB0

5、树莓派默认安装了python 和pyserial, 使用pip命令查看一下有没有 命令行输入pip list,查看到安装pyserial 版本号为3.4

6、命令python查看安装到系统上的串口,命令行输入python -m serial.tools.list_ports

7、python脚本测试串口

# coding=utf-8

import binascii

import serial

import time

#while True:  #循环重新启动串口

t = serial.Serial('/dev/ttyUSB0',9600)

a='010300000012c5c7'

print("发送:" + a)

a_list = []

for i in a.split():

a_list.append(binascii.a2b_hex(i))

t.writelines(a_list)

### 如何用Python读取USB转TTL串口上的测距模块数据 为了实现这一目标,需要确保安装并配置好相应的库文件,并编写一段用于初始化串口连接、发送命令以及接收返回数据的Python代码。 #### 安装依赖包 首先,在Ubuntu环境下需确认已安装`pyserial`库来操作串行端。可通过pip工具轻松完成此过程: ```bash pip install pyserial ``` #### 初始化PySerial环境变量设置 接着定义一系列参数以便后续调用函数时使用这些预设值简化编程流程。这里假设波特率为115200bps,超时时间为一秒;当然实际应用中应参照具体设备手册调整相应数值[^1]。 #### 编写Python脚本 下面给出了一段简单的Python代码示例,展示了如何打开指定编号的COM端并与之交互获取距离测量结果: ```python import serial from time import sleep def setup_serial(port_name, baud_rate=115200): ser = serial.Serial( port=port_name, baudrate=baud_rate, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout=1 ) if not ser.isOpen(): ser.open() return ser if __name__ == "__main__": try: com_port = "/dev/ttyUSB0" # 对于Windows系统可能是'COM3' s = setup_serial(com_port) while True: line = s.readline().decode('utf-8').strip() or "No data received" print(f"Distance: {line}") sleep(0.5) # 控制查询频率 except KeyboardInterrupt: pass finally: s.close() ``` 这段程序会持续监听来自选定串行接的消息直到用户按下Ctrl+C组合键终止执行。每次接收到新消息都会尝试将其转换成字符串形式再输出至屏幕显示当前检测到的距离值[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值