前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >树莓派4b串口通信配置

树莓派4b串口通信配置

作者头像
全栈程序员站长
发布2022-09-05 12:09:39
1.6K0
发布2022-09-05 12:09:39
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

树莓派4b本身是两个串口,运行ls /dev -al如下:

在这里插入图片描述
在这里插入图片描述

请注意:在默认状态下,serial0(就是GPIO14,15)是映射到ttyS0的(就是MINI串口:/dev/ttyS0),ttyS0的特点是其工作时钟来自于CPU,CPU的时钟呢又是从600MHZ到1.5Ghz动态变化的,所以这个串口经常会因为时钟频率发生变化而发生错误,因此我们不用这个串口。

默认状态下,serial1(跟板载蓝牙相连)映射到ttyAMA0,ttyAMA0是硬件串口,它的时钟频不受CPU影响。因此我们一般都是用的ttyAMA0。

所以我们的第一步就是配置交换映射关系,最终的映射结果如上图我们要把硬件串口ttyAMA0映射到GPIO14,15上

第一步:命令行输入:sudo raspi-config,选择第五个选项

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

选中P6敲回车进入,然后会问你是否关闭serial login ,我们选关闭,接下来就会问你是否打开串口调试,我们选打开:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

**第二步:**在boot目录下找到config.txt文件,在最后添加一行内容如下:

在这里插入图片描述
在这里插入图片描述

红框中的内容就是我们添加的内容,请注意:树莓派4b也是写pi3自此,交换映射完成,如果没有错误的话映射关系就是本博客第一幅图那样了。

第三步:测试 先把树莓派上装一个软件,这个软件跟我们常用的串口调试助手是一类的

代码语言:javascript
复制
sudo apt-get install minicom

完毕之后输入:

代码语言:javascript
复制
minicom -D /dev/ttyAMA0 -b 9600

9600是指定了9600波特率,ttyAMA0 是指定该软件使用硬件串口。默认数据8位,停止位1位 把STM32上烧录上一个串口发送的程序,波特率也设置为9600,把树莓派的TX0接到STM32的RX,树莓派的RX0接到STM32的TX。然后把两个设备的GND连起来(学过电路分析的话应该还是知道这个知识点的)。接下来就可以让STM32发送了。

下图红框中的就是STM32发送的字符串

在这里插入图片描述
在这里插入图片描述

如果要退出这个minicom软件的话,先按CTRL+A再按Z就会弹出菜单,按下0回车就退出了,然后就能直接关闭了。

注:改config.txt文件的时候要root权限的,我是用root账户登录了,然后右键点击属性直接把修改权限给改了。

注:由于我没有232转TTL电平的转换器,我是直接使用了STM32用杜邦线把uart接到树莓派的GPIO串口上了,如果是有转换器的话可以直接把树莓派跟电脑接起来,在电脑上用串口调试助手发送数据

附录:树莓派4b的GPIO分布:

在这里插入图片描述
在这里插入图片描述

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137530.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年6月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档