当前位置:   article > 正文

linux python c 串口,linux 下的串口通信 python代码

python linux串口

串口通信

摘要

之前要基于树莓派做一个设计,在这里面由于需要使用一个USB外设,

没办法只能通过串口通信来从USB外设那里读取数据。

外设的检测

首先在目录下,确认外设的名称(这一步是所有的前提,之前一起做的一同事就是因为这个外设都没有驱动起来),可以使用以下步骤来完成目标:

1.首先将usb设备查到USB接口中,USB设备是热插拔的,不用断电即可插入。

2.执行 ls /dev指令查询 /dev 目录下的设备名称,看是否存在类似于 ttyUSB的设备,如果有,那可说设备插入成功了

3.将设备从树莓派上拔出,重新执行 ls /dev指令,若2步骤中的设备名消失,则2中设备名即为我们所需的设备名。(如在我的个人pc上设备名为 ttyUSB0)

串口通信软件minicom的配置和安装

linux内置的源里会有minicom,因此可以使用一条简单的命令,即可安装我们的软件。

sudo apt install minicom

sudo minicom -s#配置minicom

1.选择Modem and dialing

94168e580466a4c61b6bde6bbfa52714.png2.将文件的A B K 选项内容删掉

106295349f0fa6e39718e945fdd56326.png3.选择 Save setup as dfl 保存设置

3cb62847b9352d38907432f992171dcb.png

之后再退出就好了,此时连上设备,打开minicom就可以看到从串口读到的数据了。

在运行以下Python程序就可以实现将数据读到程序中并且使用。

python通信源代码

#--*encoding:UTF-8*--

import serial

import os

portx="/dev/ttyUSB0"

bps= 9600

timex=5

def posiion_get():

ser = serial.Serial(portx, int(bps), timeout=1, parity=serial.PARITY_NONE,stopbits=1)

if (ser.isOpen()):

print("open success")

os.system('minicom &')

#ser.write("hello".encode())

line = ser.readline()

if(line):

#print(str(line) )

temp = str(line)

temp = temp.split('=')

#print(temp)

temp_x_y=[]

for i in [1,2]:

tempq=temp[i]

tempq=tempq.split('C')

tempq=int(tempq[0])

temp_x_y.append(tempq)

#print(temp_x_y)

line=0

return temp_x_y

(x,y)=posiion_get()

print(x,y)

## 希望大家多多指教,共同进步

标签:temp,python,minicom,tempq,linux,print,串口,设备

来源: https://blog.csdn.net/qq_42935317/article/details/97103779

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/211187
推荐阅读
相关标签
  

闽ICP备14008679号