树莓派4B、树莓派5使用 Debian 12(bookworm) 的配置

2024-05-01 14:44

本文主要是介绍树莓派4B、树莓派5使用 Debian 12(bookworm) 的配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最新的系统Debian 12(bookworm)目前的一些配置发生了一些改变,同时树莓派5的硬件也做了一部分调整。
这里均以系统 Debian 12 对不同的配置做简单记录。

树莓派4B使用旧系统的配置见【树莓派】专栏。

新系统中的配置文件 config.txtcmdline.txt 移动到了 /boot/firmware 中.

文章目录

  • 1、串口
    • 1.1、树莓派4B
    • 1.2、树莓派5
  • 2、网络配置

1、串口

1.1、树莓派4B

早期树莓派系列仅2个串口,其中 UART0 是 PL011 硬件串口,UART1 是 mini UART 软件串口。
树莓派4B相比之前的pi多了4个额外的硬件串口(UART2~UART5),默认是关闭的。

Raspberry Pi OS 有一个主串口(primary UART)和一个辅助串口(secondary UART),主串口存在于GPIO连接器上但辅串口不存在。

设备名称映射:

  • UART0: /dev/ttyAMA0
  • mini UART(UART1): /dev/ttyS0
  • UART2: /dev/ttyAMA1
  • UART3: /dev/ttyAMA2
  • UART4: /dev/ttyAMA3
  • UART5: /dev/ttyAMA4

主辅两个串口实际是两个软连接

  • primary UART: /dev/serial0 => /dev/ttyS0 (用于控制台)
  • secondary UART: /dev/serial1 => /dev/ttyAMA0 (用于蓝牙)

在新系统bookworm中 /dev/serial1(即辅助串口) 是默认不启用的,需要在 config.txt 中配置 dtparam=krnbt=off 以启用。在系统中使用 ls -l /dev/ttyAMA*ls -l /dev/serial* 都是搜索不到串口设备的。
在这里插入图片描述
默认情况下,主 UART 分配给 Linux 控制台。如果希望将主UART用于通信,则必须重新配置Raspberry Pi OS。

可以通过 raspi-config 配置,或者直接在config.txt里面 enable_uart=1 即可,重启看到增加了 mini UART 串口 /dev/ttyS0 ,且是作为主串口
在这里插入图片描述
没有出现辅助串口,在config.txt中添加 dtparam=krnbt=off 后重启再次查看串口信息
在这里插入图片描述
增加一个辅助串口设备 /dev/ttyAMA1,它是硬件串口,但是其被用于蓝牙,因此需要手动禁用蓝牙功能。首先在config.txt中配置 dtoverlay=disable-bt 以关闭蓝牙功能、且 将硬件串口 PL011 (UART0) 切换为主串口,同时还要 sudo systemctl disable hciuart 关闭蓝牙服务,重启再次查看
在这里插入图片描述
此时仅有一个硬件串口 /dev/ttyAMA0,且分配到了主串口上,可以用于通信。但是没有了硬件串口 /dev/ttyAMA1

按照之前博客的配置,如果要使用 /dev/ttyAMA1, 仅需配置 dtoverlay=uart2 ,但是这里配置之后重启预期不一致,多了硬件串口 /dev/ttyAMA2,而没有 /dev/ttyAMA1
在这里插入图片描述
但是实际测试,发现 /dev/ttyAMA2 仍然分配在了GPIOs 0-3 (RTX和DTX在BCM编码 0 ~ 1 ), 也就是物理针脚 27~28。和树莓派4B使用旧系统的电路连接保持不变。

1.2、树莓派5

树莓派5一共5个硬件串口(UART0~UART4),没有mini UART。另外,主串口 UART10 用于控制台,/dev/serial0/dev/ttyAMA10的软链接。

2、网络配置

如果带界面,直接手动修改就行了。

无线网络使用NetworkManager管理,通常命令行使用 nmcli 操作(这里不做使用说明)。

配置过的(raspi-config 和 Raspiberry Pi Image 配置)的都在 /etc/NetworkManager/system-connections/下,会以 wifiname.nmconnection 文件出现,例如

pi@raspberrypi:~ $ ls /etc/NetworkManager/system-connections/
magicsky-702-office.nmconnectionpi@raspberrypi:~ $ sudo cat /etc/NetworkManager/system-connections/magicsky-702-office.nmconnection
[connection]
id=magicsky-702-office
uuid=0f0fc0ce-d2f3-4087-851c-6c043060ad82
type=wifi
interface-name=wlan0[wifi]
mode=infrastructure
ssid=magicsky-702-office[wifi-security]
auth-alg=open
key-mgmt=wpa-psk
psk=magicsky123[ipv4]
method=auto[ipv6]
addr-gen-mode=default
method=auto[proxy]

这篇关于树莓派4B、树莓派5使用 Debian 12(bookworm) 的配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/951958

相关文章

Java使用ANTLR4对Lua脚本语法校验详解

《Java使用ANTLR4对Lua脚本语法校验详解》ANTLR是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件,下面就跟随小编一起看看Java如何使用ANTLR4对Lua脚本... 目录什么是ANTLR?第一个例子ANTLR4 的工作流程Lua脚本语法校验准备一个Lua Gramm

Java Optional的使用技巧与最佳实践

《JavaOptional的使用技巧与最佳实践》在Java中,Optional是用于优雅处理null的容器类,其核心目标是显式提醒开发者处理空值场景,避免NullPointerExce... 目录一、Optional 的核心用途二、使用技巧与最佳实践三、常见误区与反模式四、替代方案与扩展五、总结在 Java

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

Qt中QUndoView控件的具体使用

《Qt中QUndoView控件的具体使用》QUndoView是Qt框架中用于可视化显示QUndoStack内容的控件,本文主要介绍了Qt中QUndoView控件的具体使用,具有一定的参考价值,感兴趣的... 目录引言一、QUndoView 的用途二、工作原理三、 如何与 QUnDOStack 配合使用四、自

C++使用printf语句实现进制转换的示例代码

《C++使用printf语句实现进制转换的示例代码》在C语言中,printf函数可以直接实现部分进制转换功能,通过格式说明符(formatspecifier)快速输出不同进制的数值,下面给大家分享C+... 目录一、printf 原生支持的进制转换1. 十进制、八进制、十六进制转换2. 显示进制前缀3. 指

如何在Mac上安装并配置JDK环境变量详细步骤

《如何在Mac上安装并配置JDK环境变量详细步骤》:本文主要介绍如何在Mac上安装并配置JDK环境变量详细步骤,包括下载JDK、安装JDK、配置环境变量、验证JDK配置以及可选地设置PowerSh... 目录步骤 1:下载JDK步骤 2:安装JDK步骤 3:配置环境变量1. 编辑~/.zshrc(对于zsh

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华