环境

  1. python版本:3.7
  2. win10
  3. pip 18.1
  4. pyserial 3.4

买了一个小玩具,测空气质量的,数据通过串口传输,所以就想用python写一个读数据的小程序。

前期准备

安装pyserial

serial就是串口的意思,用来操作串口名字起的还是很不错的(看谁先下手)

打开cmd(开始里搜索就能找到),安装pyserial

pip install pyserial

有兴趣的可以去看看pyserial文档

确认安装成功,使用

pip list

如图所示,有pyserial就成功啦,如果速度很慢可以去网上搜搜如何换国内镜像,换完之后重启cmd重新安装即可体验飞速。

查看COM口工具

python -m serial.tools.list_ports -v

,可以列出所有串口名称及属性。

常用的方法函数

导入串口模块import serial;
打开串口ser = serial.Serial(端口名称,…其他参数),ser.open()方法可以在close之后再次打开相应端口;
关闭串口ser.close();
通过串口写入ser.write(b’’),参数需要使用字节bytes类型,如果是str类型,则可以使用encode(‘utf-8’)的方式进行转换;
读取模块信息的方法如下,x = ser.read()读取一个字节,x=read(n)读取n个字节,readline()可以用来读取一行。
port端口名字,windows下为’COM1’等;
baudrate (int)波特率,可以设置的范围9600到115200;
bytesize为每个字节的比特数,设置值为FIVEBITS, SIXBITS,SEVENBITS, EIGHTBITS 5-8比特;parity设置校验位PARITY_NONE, PARITY_EVEN,PARITY_ODD PARITY_MARK, PARITY_SPACE,用来设置校验位;
stopbits停止位,用来指示字节完成,可以选择的设置STOPBITS_ONE,
STOPBITS_ONE_POINT_FIVE, STOPBITS_TWO;
write_timeout(float) 写入超时设置;
timeout (float)读出超时设置;
xonxoff (bool)软件流控开关;
rtscts (bool)硬件RTS/CTS流控开关;
dsrdtr (bool)硬件DSR/DTR流控开关。
关于UART流控两线方式没有硬件流控,四线方式采用DSR、DTR进行流控,而RS232标准中可以有DSR、DTR的流控方式。
RTS-request to send;
CTS- clear to send;
DSR-data set ready;
DTR-Data Terminal Ready。

关键代码

自动连接串口

plist = list(serial.tools.list_ports.comports())
if len(plist) > 0:comlist_0 =list(plist[0])ser = serial.Serial(comlist_0[0], 9600, timeout=60)

读取数据

ser.read(16) # 读取16字节数据

关闭串口

ser.close()

支持原创

码文不易,希望支持,谢谢->支持原创

再次感谢,大家对本人的支持。

pyserial串口学习相关推荐

  1. python串口模块_Python使用pip安装pySerial串口通讯模块

    pySerial封装了对串口的访问,供大家参考,具体内容如下 特性 在支持的平台上有统一的接口. 通过python属性访问串口设置. 支持不同的字节大小.停止位.校验位和流控设置. 可以有或者没有接收 ...

  2. 使用pip安装pySerial串口通讯模块

    提示错误: Pyserial is not installed for D:\Professional_Software\Python27\python.exe. Check the README f ...

  3. 从零开始学习使用Pyserial串口通信

    使用python的pyserial包进行串口通信比较简单,但也有一些需要注意的事情,本文是为了让没有串口通信知识的朋友从零开始学用的笔记. 目录 理论知识 串口通信基础知识 工作原理 Pyserial ...

  4. STM32串口学习总结(经典)

    主函数代码如下: #include "led.h" #include "delay.h" #include "sys.h" #include ...

  5. stm32串口学习(二)

    今天继续学习stm32的串口编程(利用库函数).上次我们说了串口的发送,这次我们说接收. 接收可以用查询的方法,也可以用中断.显然,工程中多用中断的方式,那么就来看看中断接收. 代码其实很简单,基本的 ...

  6. stm32串口学习(一)

    串口在工作中经常用到,今天我们从零开始学习stm32的串口编程(利用库函数). 先从最简单的情况开始,假设我们要实现的功能就是串口发送一个字节,不考虑接收,也不考虑中断. 那么要解决两个问题: 1 串 ...

  7. dsp6657的串口学习

    1. 打算用dsp6657学习下,先用串口实验吧.找一下芯片支持库Chip support libraries,路径D:\ti\pdk_C6657_1_1_1_4\packages\ti\csl,新建 ...

  8. pyserial串口通信

    python的串口通信模块-pyserial import serial导入模块ser = serial.Serial(0) 是打开第一个串口ser.write("hello") ...

  9. MTK:串口学习和代码调试

    MTK之UART串口收发数据 (必看) https://blog.csdn.net/ivy_reny/article/details/51192110 MTK串口调试方法|MTK串口工具 MTK串口调 ...

  10. Python之PySerial串口通信

    安装PySerial Python环境安装完成后,会默认安装PIP,在命令行窗口输入以下命令,即可完成PySerial的安装. pip install pyserial

最新文章

  1. 使用nodejs安装Vue-cli
  2. 测量仪图片_南昌高度仪价格,大行程非标影像测量仪组装
  3. 【机器学习实战】——常见函数积累
  4. AUTOSAR从入门到精通100讲(三十九)-AUTOSAR 通信服务-Com模块两部曲-概念详解
  5. JS只能输入数字,数字和字母等的正则表达式
  6. delphi 中 的 Split 函数
  7. android 代码水印,Android实现为图片添加水印
  8. 2018-2019-1 20165323《信息安全系统设计基础》第一周学习总结
  9. background属性及其应用
  10. Android按下多任务java_Android 使用AsyncTask实现多任务多线程断点续传下载
  11. ea6500 v1 刷梅林_【求助】EA6500 V1和RT-AC66U硬件配置接近,怎么没有EA6500V1可以刷的梅林...
  12. WEP密码破解BT3-spoonwep2教程及下…
  13. Comsol 2020全套教学视频 教程入门讲解新手的福音
  14. rxbus 源码_RxBus学习
  15. Elasticsearch安装拼音分词器插件
  16. 服务器美国视频网站吗,美国服务器可以做视频网站吗
  17. 计算机ppt基础操作心得体会,word计算机实训心得体会.doc
  18. 小程序人脸核验功能实现-边读边录(一)
  19. 谷歌浏览器开发工具调试样式
  20. C#/.NET 系统优化专题(搜索引擎Lucene的使用)

热门文章

  1. 在 WindowMobile 上的模拟LED 显示屏插件(转)
  2. 智慧校园网络机房建设解决方案2.0
  3. css 清除表单样式,css form表单样式清除
  4. FTL 算法之Arbiter
  5. 基于51单片机的温度检测调节系统设计
  6. 盘点五款值得收藏的 Linux 开发板
  7. 三相异步电动机的公式
  8. 无线扩音器CE指令分析
  9. cholesky分解java代码_cholesky分解的实现
  10. 推荐2款优秀的代码截图工具