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 相关文章推荐
有关wxpython pyqt内存占用问题分析
Jun 09 Python
python采集百度百科的方法
Jun 05 Python
python实现决策树、随机森林的简单原理
Mar 26 Python
Python实现找出数组中第2大数字的方法示例
Mar 26 Python
django中模板的html自动转意方法
May 27 Python
libreoffice python 操作word及excel文档的方法
Jul 04 Python
Python 列表去重去除空字符的例子
Jul 20 Python
python-序列解包(对可迭代元素的快速取值方法)
Aug 24 Python
pytorch 实现模型不同层设置不同的学习率方式
Jan 06 Python
python通过文本在一个图中画多条线的实例
Feb 21 Python
解决启动django,浏览器显示“服务器拒绝访问”的问题
May 13 Python
Python爬虫框架之Scrapy中Spider的用法
Jun 28 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
php实现利用phpexcel导出数据
2013/08/24 PHP
PHP购物车类Cart.class.php定义与用法示例
2016/07/20 PHP
php的socket编程详解
2016/11/20 PHP
zend框架实现支持sql server的操作方法
2016/12/08 PHP
2017年最好用的9个php开发工具推荐(超好用)
2017/10/23 PHP
PHP htmlspecialchars() 函数实例代码及用法大全
2018/09/18 PHP
CI框架附属类用法分析
2018/12/26 PHP
打开超链需要“确认”对话框的方法
2007/03/08 Javascript
基于jquery的让页面控件不可用的实现代码
2010/04/27 Javascript
改进版通过Json对象实现深复制的方法
2012/10/24 Javascript
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
无缝滚动js代码通俗易懂(自写)
2013/06/19 Javascript
js中split函数的使用方法说明
2013/12/26 Javascript
对js关键字命名的疑问介绍
2014/04/25 Javascript
jQuery实现hover合成事件的方法
2015/08/06 Javascript
jquery与ajax获取特殊字符实例详解
2017/01/08 Javascript
vue实现城市列表选择功能
2018/07/16 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
vue-router动态设置页面title的实例讲解
2018/08/30 Javascript
layer.open组件获取弹出层页面变量、函数的实例
2019/09/25 Javascript
layui时间控件选择时间范围的实现方法
2019/09/28 Javascript
Vue 实现输入框新增搜索历史记录功能
2019/10/15 Javascript
[02:09]DOTA2辉夜杯 EHOME夺冠举杯现场
2015/12/28 DOTA
python实现监控windows服务并自动启动服务示例
2014/04/17 Python
python使用点操作符访问字典(dict)数据的方法
2015/03/16 Python
Python三种遍历文件目录的方法实例代码
2018/01/19 Python
Python将多个list合并为1个list的方法
2018/06/27 Python
python环形单链表的约瑟夫问题详解
2018/09/27 Python
对web.py设置favicon.ico的方法详解
2018/12/04 Python
Python:合并两个numpy矩阵的实现
2019/12/02 Python
原生 JS+CSS+HTML 实现时序图的方法
2019/07/31 HTML / CSS
Java中的类包括什么内容?设计时要注意哪些方面
2012/05/23 面试题
初中学习计划书范文
2014/09/15 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
2017年大学生寒假社会实践活动总结
2016/04/06 职场文书
Python 视频画质增强
2022/04/28 Python