【树莓派】树莓派TXD、RXD的配置与使用可实现与STM32的通信
目录
前期准备:关闭蓝牙
1.树莓派串口配置
2.禁用串口的控制台功能
3.测试(连接电脑进行测试)
参考文献
这里使用的是树莓派4B
配置这个功能可以让我们的树莓派与其他设备例如stm32进行数据的交互和通信,实现两者之间的互相控制功能,这个还是非常实用的!
使用以下步骤即可:
树莓派包含两个串口
1.硬件串口(/dev/ttyAMA0),硬件串口由硬件实现,有单独的波特率时钟源,性能高,可靠。一般优先选择这个使用。
2.mini串口(/dev/ttyS0),mini串口时钟源是由CPU内核时钟提供,波特率受到内核时钟的影响,不稳定。
想要通过树莓派的GPIO引脚进行稳定的串口通信,需要修改串口的映射关系。
serial0是GPIO引脚对应的串口,serial1是蓝牙对应的串口,可以使用 ls -l /dev/serial* 查看当前的映射关系
————————————————
版权声明:本文为CSDN博主「galaxyzwj」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zz531987464/article/details/83188189
前期准备:关闭蓝牙
在终端输入:
sudo systemctl disable hciuart
禁用蓝牙设备即可,若以后想开启可以将disable改成enable。
1.树莓派串口配置
输入以下指令后按照下面步骤进行配置
sudo raspi-config
Interfacing Options -> P6 Serial;
第一个选项(would you like a login shell to be accessible over serial?)选择NO;
第二个选项(would you like the serial port hardware to be enabled?)选择 YES。
输入以下指令可以查看树莓派的串口映射关系
ls -l /dev/serial*
serial0(GPIO串口)默认使用的是ttyS0(mini串口);
serial1(蓝牙)使用的是ttyAMA0(硬件串口)
如果想使用稳定可靠的硬件串口,就要将树莓派的硬件串口与mini串口默认映射对换。而这个需求官方也考虑到了,在系统中放了一个实现这个功能的文件---stretch版本系统中的文件为/boot/overlays/pi3-miniuart-bt.dtbo。
sudo nano /boot/config.txt
使用该文件发挥功能只需在/boot/config.txt文件末尾添加一行代码,在文件最后面添加一行:dtoverlay=pi3-miniuart-bt
输入完成后,ctrl+o进行写入,不修改文件名称,直接回车即可完成写入,最后ctrl+x退出该文件。可以再次输入之前指令进入文件检查是否正确修改。
修改完成后 sudo reboot 重启树莓派后使用 ls -l /dev/serial* 查看映射如下:
如上图所示:serial0(GPIO串口)使用的是ttyAMA0(硬件串口);而serial1(蓝牙)使用的是ttys0(mini串口)
————————————————
版权声明:本文为CSDN博主「galaxyzwj」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zz531987464/article/details/83188189
2.禁用串口的控制台功能
前面步骤已经交换了硬件串口与mini串口的映射关系,但是,现在还不能使用树莓派串口模块与电脑进行通信,因为,树莓派io口引出串口默认是用来做控制台使用的,即是为了用串口控制树莓派,而不是通信。所以我们要禁用此默认设置。
首先执行命令如下:
sudo systemctl stop serial-getty@ttyAMA0.service sudo systemctl disable serial-getty@ttyAMA0.service
然后执行命令行:
sudo nano /boot/cmdline.txt
删除语句 console=serial0,115200 (没有的话就不需要此步骤)
保存之后其内容如下:
接下来再次重启树莓派即可。
最终的/boot/config.txt文件内容如下:
3.测试(连接电脑进行测试)
1.硬件连接,将UART的TXD与树莓派的RXD连接,UART的RXD与树莓派的TXD连接,UART的GND与树莓派GND连接即可。
2.电脑端用xcom这款软件进行串口调试。(注意电脑和树莓派的波特率都配置为:9600)
3.运行如下python程序来测试是否成功连接((网上很多方法都是用minicom进行测试,但是我的树莓派由于网络原因无法获取minicom的软件,所以就写了一个简单的python程序来测试是否成功实现串口功能。电脑端发送字符串,树莓派再返回电脑端发出的字符串,由此验证了字符串的收发)。
import numpy
import serial
import timedef main():#length=mygpio.ama0_write('the serial is open successfully!\r\n')#print(length)com = serial.Serial('/dev/serial0', 9600, timeout=10)while True:time.sleep(2)stri = com.readline().strip()data = (stri.decode('utf-8'))#utf-8->unicodeif len(data)>0:com.write(data.encode('ascii'))if __name__=='__main__':main()
4.运行程序并检验
在下方输入“the serial is ok”点击发送,上方返回同样的字符串,说明发送与接受都成功啦!
参考文献
[1] 树莓派3B+ 串口使用大全(实现串口通信功能)_Stay Hungry Stay Foolish-CSDN博客
【树莓派】树莓派TXD、RXD的配置与使用可实现与STM32的通信相关推荐
- 树莓派3B 系统安装及初始化配置教程
本文仅供学习交流使用,如侵立删! 相关软件下载链接 SD卡格式化工具.系统烧录工具.Raspbian系统镜像 https://pan.baidu.com/s/1o5j_uD31hxLsPP–GRZ4B ...
- 树莓派Linux内核源码配置、编译、挂载(boot/kernal/根文件)、开启新内核
目录 一.树莓派Linux源码配置(适合树莓派) 总体概述 配置的三种方式 1.照搬厂家的配置(使用这种方式) 2.参考厂家的配置(感受一下) 3.完全自主配置(需要一定工作经验) 二.树莓派Linu ...
- 树莓派4B入手体验及配置
树莓派4B入手体验及配置 开箱体验 系统烧写 上电启动并配置 开箱体验 最近琐事着实太多,树莓派4B买来已有时日了,原打算买来后就分享一波体验的,结果硬生生的被搁置了近半个月了.废话不多哔哔了,据说树 ...
- 树莓派4安装centos7并配置环境
树莓派4安装centos7并配置环境 一.安装系统 1.烧录系统 2.进入系统 二.硬盘扩容 三.安装软件 1.安装vim 2.换源 清理旧仓库 建立仓库 重建缓存 3.安装wget 4.安装gcc ...
- 树莓派摄像头c语言,树莓派图像处理之摄像头安装+配置教程
树莓派图像处理之摄像头安装+配置教程 本文简单讲讲树莓派如何安装摄像头,以及一些配置和简单使用 树莓派的主板上有一个专门为摄像头模块预留的接口:CSI(Camera Serial Interface) ...
- 树莓派体验13 - 树莓派3B板载wifi配置方法
树莓派3代B版自带板载wifi和蓝牙,因此想让树莓派通过wifi上网不再需要单独购买wifi模块,通过简单配置板载wifi即可快速实现. 配置方法在命令行操作,前提是你需要进入命令行终端,进入命令行终 ...
- Linux树莓派实战案例论文,树莓派|树莓派使用实例之:2 Pi R
很多人都对树莓派的硬件 hack 功能(译注:就是用户可以自己发挥想像力,把树莓派设计成自己想要的机器)感兴趣,而我看中的一点是树莓派的低耗电功能,我可以用它来代替现在在用的 Linux 服务器.在以 ...
- 树莓派初学:烧镜像、电脑连接、摄像头使用、串口通信
树莓派初学:烧镜像.电脑连接.摄像头使用.串口通信 刚做完电赛滚球控制系统,用到了树莓派,备份一下找的各种资料 一.树莓派连接: 初学者推荐网址:https://shumeipai.nxez.com/ ...
- 树莓派 树莓派 编c++_树莓派6年
树莓派 树莓派 编c++ Raspberry Pi基金会的社区经理Ben Nuttall说, Raspberry Pi在2012年推出时即刻获得成功,第一天订购了10万台低成本计算机,第一年售出100 ...
最新文章
- python怎么读_如何用Python读写文件
- 用sql从文件中恢复数据库
- 互联网架构阶段 数据库读写分离 Amoeba
- java学习笔记之数组
- js如何在当前页面加载springmvc返回的页面_手写SpringMVC学习
- git配置用户信息_git系列教程(4)-单用户配置
- pandas.DataFrame的pivot()和unstack()实现行转列
- 机器学习笔记 增强学习与马尔科夫模型(1)
- java---同步与并发概念
- 拼多多协助广东警方打击网络黑灰产 15名嫌疑人于近日落网
- python3.7读取csv文件_Python3 读取csv文件
- 如何使用Greg Mori的Superpixel MATLAB代码
- python 使用迭代来创建集合
- 网络私有云存储的几点优势
- 知道一个公司的网站地址,怎么快速获取邮箱。
- Thinkphp6 搭建一套商城(拼团、秒杀、优惠券)
- python easydict 简单使用
- Android 各版本 设置 USB 默认连接 MTP 模式 ( Android 6.0+ )
- wmiprvse.exe cpu占用高怎么解决
- 安卓手机硬件信息修改 Device ID Changer 2020