• 【树莓派】串口配置


    版权声明:本文为博主原创文章,转载请注明出处。 https://www.cnblogs.com/YaoYing/p/12108101.html

    前言(本教程适用于树莓派3B)

    有两个串口

    硬件串口(/dev/ttyAMA0)    有单独的波特率时钟源,性能高、可靠
    
    mini串口(/dev/ttyS0)    性能低,功能简单,没有专用时钟源而是由CPU内核时钟提供,波特率会受内核时钟的影响。
    

    由于板载蓝牙模块,因此硬件串口默认分配与蓝牙模块通信,而mini串口默认分配给GPIO。如果我们想与外接串口模块进行通信,需要修改串口映射

    而且GPIO引出的串口默认是用来做控制台使用的,因此还需禁用控制台功能

    外接TTL转RS485模块

    查看串口映射

    ls -l /dev
    

    serial0 ———————— GPIO

    serial1 ———————— 蓝牙模块

    修改串口映射

    sudo vim /boot/config.txt
    

    在文件最后添加

    dtoverlay=pi3-miniuart-bt
    

    重启树莓派,再次查看串口映射

    串口映射交换,硬件串口(/dev/ttyAMA0)映射到了GPIO。

    禁用控制台功能

    sudo systemctl stop serial-getty@ttyAMA0.service
    
    sudo systemctl disable serial-getty@ttyAMA0.service
    

    查看波特率

    sudo stty -F /dev/ttyAMA0
    

    因为系统默认波特率是115200,因此我们需要把波特率修改为9600

    修改波特率

    cmdline.txt中删除console=serial0,115200字段

    sudo vim /boot/cmdline.txt
    

    修改后文件内容如下

    console=tty1 root=PARTUUID=d9b3f436-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles

    重启树莓派,再次查看波特率

    所有配置完成,可以用树莓派与其它硬件进行串口通信了。

    更新日期20191227
    如有错误之处,请评论或者私信指出,非常感谢

  • 相关阅读:
    方法的调用
    控制语句
    运算符 及 流程控制语句
    标识符 二进制 数据类型之间的转换
    大数据中java基础概述
    Java常见对象
    Java为什么要在虚拟机中运行
    java基础之反射机制
    多线程
    Ajax详解
  • 原文地址:https://www.cnblogs.com/YaoYing/p/12108101.html
Copyright © 2020-2023  润新知