赞
踩
最近图个方便想用派和stm32通信,好直接用派的库。
鉴于网上这方面资料比较少,就写一下大致的流程。(在mac上写的,没什么图片)
1.stm32与树莓派通过usb通信
准备工具:树莓派上:pyserial库(terminal:pip install pyserial)
stm32程序方面:因为是usb相当于串口烧程序,用的串口调试的uart1(pa9,pa10),波特率和校验位要倒时候和派上设置的一致。
端口连接:这个与stm32与电脑通信大体相同,单片机要有usb转ttl的模块(像ch340,或者那种ch340串口烧录模块也可以)然后直接连派的usb口就可以。
操作流程:然后就是派上的terminal,先输入python -m serial.tools.list_ports 回车后会返回可用端口,一般是/dev/ttyUSB0(ttyUSB1)
确定完占有的端口之后就可以开始通信编程了
python回车进入python编译环境
import serial回车
dev=serial.Serial('/dev/ttyUSB0',9600,timeout=0.5)回车(第一个参数是端口文件,第二个参数波特率)
上面实体化serial后就可以收发了
dev.readlines()(把接受缓冲区的数据全部显示)
dev.read(30)(读缓冲区30个数据)
dev.write('xxx')(发数据)
重要注意事项!!:linux环境下换行符和windows的区别!!linux下是\r\n ,windows下是\n,因此当出现派收的到stm32的数据但是,派发成功的数据stm32收不到那就在write里 面的内容后面加个\r\n试试
最后推荐一个派上的串口调试软件:minicom(终端输入 sudo apt-get install minicom),具体用法大家自行百度吧。
gpio通信方式由于派3b的uart设置特殊性有点复杂,下次再写
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。