树莓派串口通信

文章目录

    • 一、树莓派串口介绍
    • 二、串口通信配置
      • 1.打开USART串口
      • 2.串口映射配置
      • 3.安装mini串口调试助手
      • 4. 解决打开ttyAMA0 时没有权限
      • 5.解决打开minicom串口助手的时候,键盘失灵

一、树莓派串口介绍

  • 树莓派4B一共包含两个串口,一个是硬件串口(/dev/ttyAMA0),一个是mini串口(/dev/ttyS0)。
  • 硬件串口因为使用其单独的时钟源,性能高,稳定可靠,成为使用较为广泛的串口;
  • 另一个mini串口性能低,功能简单,但是没有单独的时钟源,会受到内部时钟的影响,树莓派本身运行linux系统,由CPU内核时钟提供时钟源会造成卡顿等致命错误。
  • 本文使用硬件串口。
    树莓派串口通信_第1张图片

二、串口通信配置

1.打开USART串口

  • 终端输入
sudo raspi-config
  • 选择Interface Options后回车
    树莓派串口通信_第2张图片
  • 选择Serial Port后回车
    树莓派串口通信_第3张图片
  • 第一个选项(would you like a login shell to be accessible over serial?)选择NO;
    第二个选项(would you like the serial port hardware to be enabled?)选择 YES。

2.串口映射配置

  • 查看串口映射
ls -l /dev/serial*

在这里插入图片描述
serial0(GPIO串口)默认使用的是ttyS0(mini串口);
serial1(蓝牙)使用的是ttyAMA0(硬件串口)
如果想使用稳定可靠的硬件串口,就要将树莓派的硬件串口与mini串口默认映射对换。而这个需求官方也考虑到了,在系统中放了一个实现这个功能的文件—stretch版本系统中的文件为/boot/overlays/pi3-miniuart-bt.dtbo。

  • 默认映射对换
sudo nano /boot/config.txt

在改文件末尾加上
dtoverlay=pi3-miniuart-bt
force_turbo=1
然后ctrl+o进行写入,不修改文件名称,直接回车即可完成写入,最后ctrl+x退出该文件
树莓派串口通信_第4张图片

  • 查看修改后的串口映射
    在这里插入图片描述

3.安装mini串口调试助手

  • 输入以下指令安装mini串口调试助手
sudo apt-get install minicom 
  • 输入以下指令打开串口调试助手
minicom -D /dev/ttyAMA0 -b 9600

这里 -D /dev/ttyAMA0 就是指向我们打开的串口端口号,和COM1这种是一样的, -b 9600是配置波特率,这一项我们在minicom中输入 Ctrl+A 在下方也是可以看到我们的波特率的,如果不设置 -b ,波特率默认会是115200。

4. 解决打开ttyAMA0 时没有权限

sudo chmod 777 /dev/ttyAMA0

ttyUSB0 对应提示没有权限的串口,回车后解决

5.解决打开minicom串口助手的时候,键盘失灵

(1)首先在minicom串口中按下Crtl+A,然后单击 Z 进入帮助选项
(2)点击 O 进入Configure Minicom选项
(3)选择Serial port setup选项,按下 F 将 Hardware Flow Contorl 改为No,即禁用硬件流,然后退出。

注意:如果你和我一样,在minicom中连 Crtl+A 都无法显示的话,打开终端,输入

sudo minicom -s

你可能感兴趣的:(树莓派,嵌入式硬件)