树莓派4B如何使用串口与外部进行通信

树莓派4B如何使用串口与外部进行通信外设IO口定义说明从树莓派的相关资料我们可以看到,树莓派有两个串口可以使用,一个是硬件串口(/dev/ttyAMA0),另一个是mini串口(/dev/ttyS0)。硬件串口有单独的波特率时钟源,性能好,稳定性强;mini串口功能简单,稳定性较差,波特率由CPU内核时钟提供,受内核时钟影响。树莓派(3/4代)板载蓝牙模块,默认的硬件串口是分配给蓝牙模块使用的,而性能较差的mini串口是分配给G…

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

外设IO口定义说明

从树莓派的相关资料我们可以看到,树莓派有两个串口可以使用,一个是硬件串口(/dev/ttyAMA0),另一个是mini串口(/dev/ttyS0)。硬件串口有单独的波特率时钟源,性能好,稳定性强;mini串口功能简单,稳定性较差,波特率由CPU内核时钟提供,受内核时钟影响。
树莓派(3/4代)板载蓝牙模块,默认的硬件串口是分配给蓝牙模块使用的,而性能较差的mini串口是分配给GPIO串口 TXD0、RXD0。
在这里插入图片描述

Serial 配置

首先运行ls /dev -al命令查看到默认的串口分配方式,如下图所示:
在这里插入图片描述
由于硬件串口分配给板载蓝牙使用,所以要释放掉,并设置硬件串口分配给GPIO串口。
首先登陆终端后,输入sudo raspi-config命令进入树莓派系统配置界面,选择第五个Interfacing Options:
在这里插入图片描述
进入P6 Serial
在这里插入图片描述
选择关闭串口登录功能,打开硬件串口调试功能:
在这里插入图片描述
在这里插入图片描述
完成后提示以下界面,按OK
在这里插入图片描述

设置硬件串口为GPIO串口

接着将串口配置为我们的GPIO串口,对输入sudo vim /boot/config.txt命令,将下面两行内容添加到最后:dtoverlay=pi3-miniuart-bt force_turbo=1
修改后保存并退出,内容如下图片所示:
在这里插入图片描述
重启树莓派后,再次输入ls /dev -al,可以看到两个串口已经互相换了位置:
在这里插入图片描述

minicom串口助手测试

首先输入sudo apt-get install minicom命令安装minicom,安装完成后,输入minicom -D /dev/ttyAMA0 -b 9600启动minicom,如图所示:
在这里插入图片描述
其中-D表示选择串口/dev/ttyAMA0,-b 设置波特率为9600,此参数可以不用设置,默认11520,并且退出minicom时需要先按Ctrl+A,再按Z,弹出以下菜单,0。
将树莓派与TTL对应接上,就可以通过PC串口助手与树莓派互相发送、接收数据,但是树莓派在发送数据时,命令终端并不会显示,如下图所示:
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue3.0计算属性_vue的计算属性和方法有什么区别

    vue3.0计算属性_vue的计算属性和方法有什么区别前言一般情况下属性都是放到data中的,但是有些属性可能是需要经过一些逻辑计算后才能得出来,那么我们可以把这类属性变成计算属性。比如以下:<divid="example&quot

    2022年7月31日
    4
  • Java中的构造方法[通俗易懂]

    Java中的构造方法[通俗易懂]简述前言:【08-10】构造方法   定义:就是类构造对象时调用的方法,主要用来实例化对象。构造方法分为无参构造方法、有参构造方法。   概念:构方法是一种特殊的“成员方法”     1,构造方法作用:(1)构造出来一个类的实例(2)对构造出来个一个类的实例(对象)初始化     2,构造方法的名字必须与定义他的类名完全相同,没有返回类型,甚至连void也没有 …

    2022年7月8日
    23
  • Python 写入txt文本文件[通俗易懂]

    Python 写入txt文本文件[通俗易懂]引入完整示例

    2022年10月2日
    3
  • ABAP 新语法 substring 截取字符串

    ABAP 新语法 substring 截取字符串IFcb_01EQ’X’.LOOPATgt_outINTOgs_out.SELECTSINGLEbelnrFROMbkpfASt1WHEREsubstring(t1~awkey,1,10)=@gs_out-mblnrANDsubstring(t1~awkey,11,4)=@gs_out-mjahrINTO@gs_out-belnr.

    2022年5月23日
    46
  • 手把手教你用idea搭建ssm项目并实现简单demo(超详细)

    手把手教你用idea搭建ssm项目并实现简单demo(超详细)闲暇之余,想搭建一个ssm项目玩玩,结果发现,不百度根本打不出来,搭建出来也有一堆问题,所以在此一步一步记录一下。使用idea搭建ssm项目,首先就是将整个框架整起来如果已经在项目中了,点击左上角file->new->project(刚打开idea是新建->project)[image1]左侧栏目选择maven并勾选createfromarchetype,然后在下面找到org.apache.maven.archetype:maven-archetype-weba

    2022年6月16日
    43
  • java自定义注解实现「建议收藏」

    引言去杭州第一面试的时候问及到自定义注解,那时候不清楚,现在简单写下,算是对过去的一个交代。自定义注解关于注解的定义这里就不解释了,下面直接来看java提供的四个元注解(作用:负责注释其它注解)。1、@Target(用于描述修饰对象的范围)范围取值于ElementType这个枚举类:ANNOTATION_TYPE(注释…

    2022年4月13日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号