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实现的数据结构与算法之双端队列详解
Apr 22 Python
Python实现删除列表中满足一定条件的元素示例
Jun 12 Python
详谈Python中列表list,元祖tuple和numpy中的array区别
Apr 18 Python
python3.5基于TCP实现文件传输
Mar 20 Python
python实现维吉尼亚算法
Mar 20 Python
详解python配置虚拟环境
Apr 08 Python
pyqt5 获取显示器的分辨率的方法
Jun 18 Python
Python高阶函数、常用内置函数用法实例分析
Dec 26 Python
Python3之乱码\xe6\x97\xa0\xe6\xb3\x95处理方式
May 11 Python
python爬虫基础知识点整理
Jun 02 Python
Python Switch Case三种实现方法代码实例
Jun 18 Python
python3中celery异步框架简单使用+守护进程方式启动
Jan 20 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高手?学会“懒惰”的编程
2006/12/05 PHP
php数据库密码的找回的步骤
2011/01/12 PHP
php文字水印和php图片水印实现代码(二种加水印方法)
2013/12/25 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
PHP调试的强悍利器之PHPDBG
2016/02/22 PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
2019/12/12 PHP
jquery multiSelect 多选下拉框
2010/07/09 Javascript
网站页面自动跳转实现方法PHP、JSP(上)
2010/08/01 Javascript
JavaScrip单线程引擎工作原理分析
2010/09/04 Javascript
jQuery循环滚动展示代码 可应用到文字和图片上
2012/05/11 Javascript
ExtJS的拖拽效果示例
2013/12/09 Javascript
JavaScript组件焦点与页内锚点间传值的方法
2015/02/02 Javascript
JS实现支持Ajax验证的表单插件
2016/03/24 Javascript
前端js文件合并的三种方式推荐
2016/05/19 Javascript
JS实用技巧小结(屏蔽错误、div滚动条设置、背景图片位置等)
2016/06/16 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
2017/02/10 Javascript
浅谈react 同构之样式直出
2017/11/07 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
微信小程序性能优化之checkSession的使用
2019/03/06 Javascript
Vue项目中使用jquery的简单方法
2019/05/16 jQuery
浅谈Vue组件单元测试究竟测试什么
2020/02/05 Javascript
javascript History对象原理解析
2020/02/17 Javascript
vue中改变滚动条样式的方法
2020/03/03 Javascript
详解Python发送email的三种方式
2018/10/18 Python
Python提取支付宝和微信支付二维码的示例代码
2019/02/15 Python
python实现矩阵打印
2019/03/02 Python
使用PYTHON解析Wireshark的PCAP文件方法
2019/07/23 Python
Python单例模式的四种创建方式实例解析
2020/03/04 Python
jupyter notebook快速入门及使用详解
2020/11/13 Python
波兰品牌内衣及泳装网上商店:Astratex.pl
2017/02/03 全球购物
英国顶级家庭折扣店:The Works
2017/09/06 全球购物
Groupon西班牙官方网站:在线优惠券和交易,节省高达70%
2021/03/13 全球购物
工商学院毕业生个人自我评价
2013/09/19 职场文书
2014年学校党建工作汇报材料
2014/11/02 职场文书
公务员政审个人总结
2015/02/12 职场文书
个人政治思想总结
2015/03/05 职场文书