前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Python】简单的串口收发数据

【Python】简单的串口收发数据

作者头像
py3study
发布2020-01-06 17:15:58
5K0
发布2020-01-06 17:15:58
举报
文章被收录于专栏:python3python3

实现效果: Python端运行的时候打开COM3,然后准备从键盘获取数据,并发送,同时接收串口调试助手COM1发送过来的数据

Python端:

这里写图片描述
这里写图片描述

串口调试助手:

这里写图片描述
这里写图片描述

串口调试助手使用COM1,能显示Python端发过来的数据,当点击发送的时候,Python端暂时不会显示,因为Python端的读取键盘那个方法是堵塞的,当Python端发送的时候才同时把数据显示出来(如果想一发送就显示,就把读取键盘的那句代码注释掉就可以了):

由于我不是很专业,所以我尽量用我自己理解的语言讲解,可以跟我一起操作。

一、前期准备工作。 1、安装pyserial(类似于java的库,用于调串口函数) 2、安装VSPD(因为没有硬件,用这个虚拟串口)

1、由于我用的是win7 64位,无法安装pyserial-2.7.win32.exe,所以参考了 http://blog.csdn.net/xin_yu_xin/article/details/36933705 的办法,安装源码,简单介绍一下, (1)将你电脑安装的Python程序目录放入系统的path路径 开始菜单->右键计算机->属性->高级->环境变量->系统变量 在系统变量里找到PATH,双击PATH,在结尾加上 “;D:\Python27”(D:\Python27是你的Python安装目录,不要引号) (2)解压下载的源文件 点击https://pypi.python.org/packages/source/p/pyserial/pyserial-2.7.tar.gz#md5=794506184df83ef2290de0d18803dd11下载,然后随便解压到某个目录下,在这个目录下按shift+右键空白处可以直接调出cmd,然后在命令行输入 python setup.py install

2、VSPD在西西下载就好了,百度一下什么都有,安装也不麻烦,不赘述。

二、软件操作 VSPD上把COM1和COM3的TXRX互相短接起来,具体操作就是在右边选择First port是COM1,Second port是COM3,顺序无所谓,然后点击Add pair就可以了,然后左边会显示出来,要删除的话选中COM,点右边下面那个删除(一般是这个串口被卡住了才这么干)。

这里写图片描述
这里写图片描述

三、代码 Python的代码基本上我也是百度来的,由于很简单,就像我们沟通思路一样,直接就写出来了,所以随便找个目录,右键新建文本文档,改名为xxx.py,然后保存退出,右键这个文件,Edit with IDLE(如果没有就去Python官网下载Python安装),输入如下内容:

代码语言:javascript
复制
# -*- coding: utf-8 -*-
import serial

#打开串口
serialPort="COM3"   #串口
baudRate=9600       #波特率
ser=serial.Serial(serialPort,baudRate,timeout=0.5)  
print "参数设置:串口=%s ,波特率=%d"%(serialPort,baudRate)

#收发数据
while 1:
    str = raw_input("请输入要发送的数据(非中文)并同时接收数据: ")
    ser.write((str+'\n').encode())
    print(ser.readline())#可以接收中文
    
ser.close()  

按F5运行即可

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档