Python 实现Serial 与STM32J进行串口通讯


Posted in Python onDecember 18, 2019

Python果然是一款非常简明的语言,做东西非常流畅,今天又尝试了一下用Serial做了一个控制台的串口通讯,我用的下位机是STM32F103,搞了一个多小时就成功了,可见Python的能力之强。

说明几点注意,一是Python在windows下的串口号可以用COM来标注,此时序号从1开始,如果自己单独指定序号,则是从0开始。

另外,如果下位机串口通讯设定的非常简单的话,在Python中只需要设定好串口号和波特率即可,其余的均设为默认值。一般来说在单片机或者是嵌入式系统中的串口通讯基本都不需要设定其余的东西,最多还需要设定一个停止位的位数或者是一帧数据多少位,一般都设定为1位和8位,这也都是Python默认好的。

读取字符串需要注意,向串口发送一个字符串,随后在读回并在PC机上显示出来,需要在发送时就要记录字符串长度,否则会阻塞,串口通信将会失败。反正我是失败了很多次。

__author__ = 'freedom'
 
import serial
port = 0
ser = serial.Serial()
ser.setPort(port)
print ser.portstr
baudrate = 115200
ser.setBaudrate(baudrate)
ser.open()
print ser.isOpen()
print ser
while(1):
  datainput = raw_input("Please input the character:\n")
  n = ser.write(datainput)
  data = ser.read(n)
  print data

以上这篇Python 实现Serial 与STM32J进行串口通讯就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用内存zipfile对象在内存中打包文件示例
Apr 30 Python
Python制作Windows系统服务
Mar 25 Python
django+js+ajax实现刷新页面的方法
May 22 Python
Tensorflow实现卷积神经网络的详细代码
May 24 Python
详解Django+Uwsgi+Nginx的生产环境部署
Jun 25 Python
python pytest进阶之xunit fixture详解
Jun 27 Python
Python获取时间戳代码实例
Sep 24 Python
如何使用Python抓取网页tag操作
Feb 14 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
Apr 07 Python
Python figure参数及subplot子图绘制代码
Apr 18 Python
Python垃圾回收机制三种实现方法
Apr 27 Python
Pyinstaller 打包发布经验总结
Jun 02 Python
实现Python与STM32通信方式
Dec 18 #Python
利用pandas将非数值数据转换成数值的方式
Dec 18 #Python
python 浅谈serial与stm32通信的编码问题
Dec 18 #Python
基于numpy中的expand_dims函数用法
Dec 18 #Python
Python.append()与Python.expand()用法详解
Dec 18 #Python
python getopt模块使用实例解析
Dec 18 #Python
pytorch制作自己的LMDB数据操作示例
Dec 18 #Python
You might like
《魔兽争霸3:重制版》更新 多项视觉效果调整
2020/05/04 魔兽争霸
可以在线执行PHP代码包装修正版
2008/03/15 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
jquery EasyUI的formatter格式化函数代码
2011/01/12 Javascript
JQuery的read函数与js的onload不同方式实现
2013/03/18 Javascript
javascript 禁用IE工具栏,导航栏等等实现代码
2013/04/01 Javascript
js弹出层永远居中实现思路及代码
2013/11/29 Javascript
通过设置CSS中的position属性来固定层的位置
2015/12/14 Javascript
html判断当前页面是否在iframe中的实例
2016/11/30 Javascript
jquery仿微信聊天界面
2017/05/06 jQuery
JavaScript正则表达式简单实用实例
2017/06/23 Javascript
解决Angular2 router.navigate刷新页面的问题
2018/08/31 Javascript
使用Angular material主题定义自己的组件库的配色体系
2019/09/04 Javascript
D3.js 实现带伸缩时间轴拓扑图的示例代码
2020/01/20 Javascript
vue键盘事件点击事件加native操作
2020/07/27 Javascript
python求众数问题实例
2014/09/26 Python
Python调用ctypes使用C函数printf的方法
2017/08/23 Python
Python将多个excel文件合并为一个文件
2018/01/03 Python
python 3.7.4 安装 opencv的教程
2019/10/10 Python
Pytorch中index_select() 函数的实现理解
2019/11/19 Python
Python 词典(Dict) 加载与保存示例
2019/12/06 Python
完美解决pycharm导入自己写的py文件爆红问题
2020/02/12 Python
解决Keras中CNN输入维度报错问题
2020/06/29 Python
css3发光搜索表单分享
2014/04/11 HTML / CSS
CSS3中animation实现流光按钮效果
2020/12/21 HTML / CSS
跨域修改iframe页面内容详解
2019/10/31 HTML / CSS
介绍一下linux文件系统分配策略
2013/02/25 面试题
财务人员个人自荐信范文
2013/09/26 职场文书
适用于所有创业者的创业计划书
2014/02/05 职场文书
承诺书的格式范文
2014/03/28 职场文书
党员创先争优心得体会
2014/09/11 职场文书
党员民主生活会对照检查材料思想汇报
2014/09/28 职场文书
调任通知
2015/04/21 职场文书
贷款收入证明格式
2015/06/24 职场文书
2016年大学生暑期社会实践方案
2015/11/26 职场文书
SpringBoot深入分析讲解监听器模式下
2022/07/15 Java/Android