当前位置: 首页 > article >正文

树莓派5-开发应用笔记

0.树莓派系统目录

  • /home:用户目录。
    • 除了root用户外,其他所有的使用者的数据都存放在这个目录下,在树莓派的系统中,/home目录中有一个pi的子目录,这个就是pi用户的默认目录。
  • /bin: 主要放置系统的必备执行文件目录。
    • 放置与Linux系统有关(包括运行图形界面所需的)的二进制可执行文件,如ls、mkdir、rm等。
  • /boot:引导目录。
    • 用于存放系统引导程序,如linux内核以及启动配置文件,里面的config.txt也是用户配置使用频率最高的文件。
  • /etc: 系统配置文件存放目录。
    • 在这个目录中存放了几乎所有的Linux系统软件所需的配置文件,如果需要对这个目录中的文本进行修改,那么最好是先将需要修改的文件进行备份,以保证在修改之后还可以回到原来的状态。
  • /dev :设备目录。在Linux系统中,所有设备都视为文件,而在这个目录中存放了所有设备,例如第一个SATA硬盘或U盘会被识别为sda文件,而SATA硬盘或U盘第一个分区会被识别为sda1文件。
  • /lib:基本系统的动态链接库存放位置,在这个目录中存放了可以维持一个基本系统启动所需要的库文件。如果没有这个目录,系统程序根本就无法工作。
  • /lost + found/分区系统的目录。系统非正常关机而产生的文件通常都存放在这里,另外由fsck等程序进行硬盘修复后产生的文件也存放在这里。
  • /media:linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux会把识别的设备挂载到这个目录下。
  • /mnt:传统的外部设备挂载点。在早期的时候,除了系统分区外的其他分 区,如U盘等设备,都会被挂载到这个目录下以供用户读写。不过现在已经被 /media/取代。
  • /proc:proc是一个虚拟文件系统。这个目录是存放在内存中的,因此不会占用硬盘空间,系统或用户通过读取这些设备来了解它们的信息。例如,可以使用cat /proc/cpuinfo命令来査看CPU信息。
  • /root:该目录为系统管理员,也称作超级权限者的用户主目录。
  • /srv:该目录存放一些服务启动之后需要提取的数据。
  • /sys:与/proc目录一样,也是一个虚拟目录,是由内核中的sysfs系统来实现的,其作用与proc有些类似,但除了与proc具有相同的查看和设定内核参数功能之外,还有为Linux统一设备模型作为管理之用。
  • /tmp:临时目录。由程序所产生的临时文件都会存放在该目录下,不用担心这个目录会占用太多的空间,因为每次系统启动都会清除这个目录的内容;同时这也是系统为数不多的拥有所有用户可读写属性的目录。
  • /usr:Linux系统所安装的程序都是存放在该目录中的,如非必要请不要修改这个目录的内容。类似于windows下的program files 目录。
  • /usr/src:内核源代码默认的放置目录。
  • /run:用于存放系统启动时描述系统信息的文件。这个目录最初是在/var/目录下的,但是现在被提升到根目录下。
  • 在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
  • /etc:这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
  • /bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如ls就是在/bin/ls目录下的。
  • /bin, /usr/bin是给系统用户使用的指令(除root外的普通用户),而/sbin,/usr/sbin则是给root使用的指令。
  • /var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log目录下。

1.查询当前用户名

终端指令

$whoami

返回当前用户名

2.修改当前密码

方法一:

终端指令$sudo passwd pi                     #修改 Pi 密码$sudo passwd root                   #设置 root 密码$su root                            #切换到 root 用户$sudo su                            #切换到 root 用户$su pi                              #切换到 pi 用户

参考:树莓派用默认账号和密码登录不上怎么办;修改树莓派的密码

方法二:利用realvnc

参考:树莓派忘记密码的解决方法

3.进入root用户

$su root

修改当前root密码

$sudo passwd root

4.树莓派默认用户与密码

默认的用户名:pi,默认密码:raspberry

5.退出root用户

$exit

6.配置树莓派网络->开机自启连接固定的wifi

# 接口设置
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
# 国家码设置
country=CN# 网络信息配置
network={ssid="NTest"       # wifi账号psk="12345678"     # wifi密码,一般要>8个字符key_mgmt=WPA-PSK   # 密钥管理算法,通常家用路由都是WPA-PSK,企业路由是WPA-EAP# 如果要连接的wifi是没有密码的,需要配置为:key_mgmt=NONEdisabled=1         # 使能# 其他参数:scan_ssid=1        # 对于隐藏的SSID,需要配置此参数priority=1         # 优先级,如果有多个wifi需要保存,在不同network字典中可以配置不同的优先级,数字越小,优先级越高
}network={ssid="River_Test"psk="12345678"
}

参考:使用wpa_supplicant.conf配置树莓派的网络及配置文件常用字段解析

7.树莓派连接不上wifi,wifi图标闪烁,解决方法

修改dhcpcd.conf

终端指令

$sudo nano /etc/dhcpcd.conf

打开文件后,划到最低端,可以看到你曾连接过的wifi名称及密码,我这里是全部删除了,你可以尝试只删除需要连接的那个wifi

接着Ctrl + O 保存,Ctrl + X退出,重启再次连接即可

参考:树莓派4B+ 连接WIFI后,图标频闪,无法上网

8.设置屏幕分辨率(VNC无屏幕分辨率)

终端指令:

$sudo raspi-config

参考:树莓派设置分辨率(命令与图形)

9.常用终端命令

---创建文件/文件夹---$touch file  #创建文件file$mkdir dir   #创建目录dir---删除文件/文件夹---$rm file     #删除文件file$rm -r dir   #删除目录dir---重命名/移动---$mv file1 file2     #若file2不存在,则将file1改名为file2#若file2存在,则file1覆盖掉原file2,并更名为file2$mv file dir        #将文件file移动到dir目录中---目录切换命令---$pwd           #显示当前所在目录$cd /          #切换到根目录$cd~           #切换到主目录$cd dir        #切换到指定目录,dir表示文件路径$cd ..         #切换到上一级目录---文件展示命令---$ls           #展示当前目录下所有的文件和文件夹(不包含隐藏文件)$ls -a        #展示当前目录下所有的文件和文件夹(包含隐藏文件)---文件内容展示命令---$cat  file          #查看文件file内容$more file          #查看文件file内容$head file          #查看文件file前10行$tail file          #查看文件file后10行

10.文本编辑器

文本编辑器1.nano编辑器

文本编辑器2.vi编辑器

11.树莓派备份系统

方式一备份流程:

步骤1创建文件

 boot分区

root分区

步骤2.选择拷贝区域为H盘root分区,点击读取

读取成功后,该文件实际内存为拷贝文件内存

方式二备份流程:

步骤1.在树莓派上挂载新SD卡,随后在桌面出现NEW文件夹(SD卡文件)

步骤二:选择树莓派自带的软件

方法三:

步骤1.找到复制源与粘贴地的文件路径

步骤二:终端窗口正常卡顿,重新创建新的终端窗口,查看dd任务的进程号

步骤三:

步骤1:查看当前系统卡剩余空间

输入终端指令

$df -h

系统还原

12.树莓派的GPIO

引脚编码方式

终端窗口查看引脚编码

方式一:查看板载编码

$pinout

方式二:查看全部编码

$gpio readall

13.树莓派串口通信

步骤1:打开树莓派硬件串口

$ls /dev -al #查看当前设备所有驱动状态
sudo nano /boot/config.txt #查看系统设置

添加代码:设置硬件串口为主串口

系统参数设置完成后需要重启才能生效

树莓派安装minicom串口助手

$sudo apt-get install minicom  #安装minicom软件

运行minicom

$minicom -D /dev/ttyAMA0 -b 9600 #运行minicom,设置其波特率为9600

即可接收来自电脑端的串口信息

退出minicom指令:ctrl+a   再按下z   再按下x,选择y回车确定

树莓派的PWM引脚使用

13.设置自定义HDMI模式

很早之前参考的b站视频和其他学习资料做的笔记,链接出处忘记了,此贴后补

相关文章:

树莓派5-开发应用笔记

0.树莓派系统目录 /home:用户目录。 除了root用户外,其他所有的使用者的数据都存放在这个目录下,在树莓派的系统中,/home目录中有一个pi的子目录,这个就是pi用户的默认目录。 /bin: 主要放置系统的必备执行文件目录。 …...

PostgreSQL 通过 copy 命令导入几何数据 及 通过 CopyManager.copyIn() 导入几何数据

COPY命令介绍 copy是postgresql提供的一个专门用于快速导入导出数据的命令,通常用于从文件(TXT、CSV等)或标准输入输出中读取或写入数据。适合批量导入导出数据,速度快。 默认情况下,如果在处理过程中遇到错误,COPY将失败。 COPY只能用于表,不能用于视图!!! COPY…...

8.5/Q1,Charls最新文章解读

文章题目:Atherogenic index of plasma, high sensitivity C-reactive protein and incident diabetes among middle-aged and elderly adults in China: a national cohort study DOI:10.1186/s12933-025-02653-4 中文标题:中国中老年人群血…...

k8s 调整Node节点 Max_Pods

默认情况下,Kubernetes集群中一个Node最多能起110个Pod。 这是基于性能和资源管理的考虑,以确保Kubernetes集群的稳定性和可靠性。 查看kht125节点上支持的最大pod数量: kubectl describe node kht125 | grep -i “Capacity|Allocatable” -A 6 调整…...

深度补全网络:CSPN++ 有哪些开源项目

关于 ‌CSPN(Convolutional Spatial Propagation Network)‌ 的开源项目,目前官方或社区维护的完整实现较为有限,但以下资源可作为研究深度补全任务的参考: ‌1. 官方实现 & 相关论文‌ ‌原始论文与代码‌ CSPN 的…...

使用Service发布前后端应用程序

使用Service发布前后端应用程序 文章目录 使用Service发布前后端应用程序[toc]一、创建并发布后端应用程序二、创建并发布前端应用程序三、通过前端发送流量进行测试 部署前端(Frontend)微服务和后端(Backend)微服务是比较常见的应…...

Ubuntu20.04下Docker方案实现多平台SDK编译

0 前言 熟悉嵌入式平台Linux SDK编译流程的小伙伴都知道,假如平台a要求必须在Ubuntu18.04下编译,平台b要求要Ubuntu22.04的环境,那我只有Ubuntu20.04,或者说我的电脑硬件配置最高只能支持Ubuntu20.04怎么办?强行在Ubuntu20.04下编译,编又编不过,换到旧版本我又不愿意,…...

-SSRF 服务端请求Gopher 伪协议无回显利用黑白盒挖掘业务功能点

1 、 SSRF 漏洞原理 SSRF(Server-Side Request Forgery: 服务器端请求伪造 ) 一种由攻击者构造形成由服务端发起请求的一个安全漏洞 ; 一般情况下, SSRF 攻击的目标是从外网无法访问的内部系统。 (正是因为它是由服务端发起的,所以它能…...

事件冒泡与捕获

一、事件流基础:事件冒泡与捕获的起源 事件流概念 事件发生时在DOM节点上的传播顺序,触发一个节点的事件会连锁触发相关节点的事件。 两种对立模型 事件捕获(微软提出):事件从文档根节点(如document&#…...

《AI大模型应知应会100篇》第27篇:模型温度参数调节:控制创造性与确定性

第27篇:模型温度参数调节:控制创造性与确定性 摘要 在大语言模型的使用中,“温度”(Temperature)是一个关键参数,它决定了模型输出的创造性和确定性之间的平衡。通过调整温度参数,您可以根据任…...

聊聊Doris的数据模型,如何用结构化设计解决实时分析难题

传统 OLAP 系统的局限 在大数据实时分析领域,数据模型设计直接决定了系统的查询性能、存储效率与业务适配性。Apache Doris作为新一代MPP分析型数据库,通过独创的多模型融合架构,在业内率先实现了"一份数据支持多种分析范式"的能力…...

LNA设计

设计目的 为后级提供足够的增益以克服后级电路噪声 尽可能小的噪声和信号失真 确保输入和输出端的阻抗匹配 确保信号线性度 评价标准 噪声系数 功率增益 工作频率和带宽 输入信号功率动态范围 端口电压驻波比 稳定性 基于SP模型的LNA设计 直流分析 S参数分析 设计指标 &#xf…...

小红书爬虫,小红书api,小红书数据挖掘

背景: 小红书(Xiaohongshu)是一款结合社交、购物和内容分享的移动应用,近年来在中国以及全球范围内拥有大量的用户群体。小红书上的内容包括用户的消费体验、生活方式、旅行分享、时尚搭配等。通过这些内容,用户可以了…...

C++ STL 环形队列模拟实现

C STL 环形队列模拟实现 下面是一个使用C STL实现的环形队列&#xff08;Circular Queue&#xff09;的完整示例&#xff1a; #include <iostream> #include <vector> #include <stdexcept>template <typename T> class CircularQueue { private:std…...

C++中unique_lock和lock_guard区别

目录 1.自动锁定与解锁机制 2.灵活性 3.所有权转移 4.可与条件变量配合使用 5.性能开销 在 C 中&#xff0c;std::unique_lock 和 std::lock_guard 都属于标准库 <mutex> 中的互斥锁管理工具&#xff0c;用于简化互斥锁的使用并确保线程安全。但它们存在一些显著区别…...

Vue 3 组合式 API 规范配合 Pinia

实现效果&#xff1a; 根据pinia中存储的不同状态&#xff0c; 点击不同的按钮&#xff0c;切换不同的弹窗和标题1. Pinia Store&#xff08;组合式写法&#xff09; // stores/dataStore.ts import { defineStore } from pinia import { reactive } from vuetype DialogType …...

JavaSpring 中使用 Redis

创建项目 配置 Redis 服务地址 创建 Controller 类 由于当前只是些简单的测试代码&#xff0c;所以就不进行分层了&#xff0c;只创建一个 Controller 来实现 jedis 通过 jedis 对象里的各种方法来操作 Redis 此处通过 StringRedisTemplate 来操作 Redis 最原始提供的类是 Re…...

多线程使用——线程安全、线程同步

一、线程安全 &#xff08;一&#xff09;什么是线程安全问题 多个线程&#xff0c;同时操作同一个共享资源的时候&#xff0c;可能会出现业务安全的问题。 &#xff08;二&#xff09;用程序摹拟线程安全问题 二、线程同步 &#xff08;一&#xff09;同步思想概述 解决线…...

Spring Boot 集成 tess4j 实现图片识别文本

tesseract是一个开源的光学字符识别&#xff08;OCR&#xff09;引擎&#xff0c;它可以将图像中的文字转换为计算机可读的文本。支持多种语言和书面语言&#xff0c;并且可以在命令行中执行。它是一个流行的开源OCR工具&#xff0c;可以在许多不同的操作系统上运行。 Tess4J是…...

JAVA IO、BIO、NIO、AIO及零拷贝

概述 IO,常写作 I/O,是 Input/Output 的简称,是 Input/Output 的简称,即输入/输出。通常指数据在内部存储器(内存)和外部存储器(硬盘、优盘等)或其他周边设备之间的输入和输出。 目前有三种 IO 共存。分别是 BIO、NIO 和 AIO。 BIO 全称 Block-IO 是一种同步且阻塞的…...

Redis命令——list

列表类型是用来存储多个有序的字符串&#xff0c;列表中的每个字符串称为元素&#xff08;element&#xff09;&#xff0c;⼀个列表最多可以存储个元素 在 Redis 中&#xff0c;可以对列表两端插入&#xff08;push&#xff09;和弹出&#xff08;pop&#xff09;&#xff0c;…...

MicroDEM 与 OpenEV(FWTtools工具包):两款开源DEM相关小软件

大家好&#xff0c;今天为大家介绍的软件是MicroDEM 与 OpenEV&#xff0c;这两款小软件分别主要用于DEM数据的处理、数据查看与分析。MICRODEM是一款专注于地理空间分析和遥感数据处理的开源小软件。 MICRODEM官网网址为&#xff1a;https://microdem.org/&#xff0c;官网比较…...

大学英语四级选词填空阅读题和段落匹配解析

Leisure and well - being休闲和幸福 The vital role of leisure in enhancing well - being休闲在增进福祉方面的重要作用 A) The perception of leisure activities has a significant impact on the mental health advantages they offer. 对休闲活动的看法对其提供的心理…...

STM32使用rand()生成随机数并显示波形

一、随机数生成 1、加入头文件&#xff1a;#include "stdlib.h" 2、定义一个用作生成随机数种子的变量并加入到滴答定时器中不断自增&#xff1a;uint32_t run_times 0; 3、设置种子&#xff1a;srand(run_times);//每次生成随机数前调用一次为佳 4、生成一个随…...

大语言模型智能体:安全挑战与应对之道

在当今科技飞速发展的时代&#xff0c;大语言模型驱动的智能体正逐渐融入我们生活和工作的方方面面&#xff0c;给我们带来了诸多便利。但与此同时&#xff0c;它们的安全问题也引起了广泛的关注。今天&#xff0c;咱们就一起来深入了解一下可信大语言模型智能体所面临的安全挑…...

每日OJ_牛客_kotori和素因子_DFS_C++_Java

目录 牛客_kotori和素因子_DFS 题目解析 C代码 Java代码 牛客_kotori和素因子_DFS kotori和素因子 描述&#xff1a; kotori拿到了一些正整数。她决定从每个正整数取出一个素因子。但是&#xff0c;kotori有强迫症&#xff0c;她不允许两个不同的正整数取出相同的素因子…...

Vue 开发实战:从入门到精通的经验之谈

零基础入门 Vue&#xff0c;10 分钟快速上手教程 一、初识 Vue二、搭建 Vue 开发环境&#xff0c;迈开第一步 Vue 核心概念大揭秘&#xff0c;响应式系统原来是这么回事儿三、Vue 核心概念&#xff1a;响应式系统 模板语法与表达式&#xff0c;玩转 Vue 就靠它啦四、模板语法与…...

快手OneRec 重构推荐系统:从检索排序到生成统一的跃迁

文章目录 1. 背景2. 方法2.1 OneRec框架2.2 Preliminary2.3 生成会话列表2.4 利用奖励模型进行迭代偏好对齐2.4.1 训练奖励模型2.4.2 迭代偏好对齐 3. 总结 昨天面试的时候聊到了OneRec&#xff0c;但是由于上次看这篇文章已经是一个月之前&#xff0c;忘得差不多了&#xff0c…...

c# 简单实现将Message的内容保存到txt中,超过100个则清理旧文件

using System; using System.IO; using System.Threading;public static class LogManager {private static readonly object _fileLock new object(); // 线程安全锁private const int MaxFiles 100; // 最大文件数限制private const string LogDire…...

精打细算 - GPU 监控

精打细算 - GPU 监控 在上一篇,咱们历经千辛万苦,终于让应用程序在 Pod 的“驾驶舱”里成功地“点火”并用上了 GPU。太棒了!但是,车开起来是一回事,知道车速多少、油耗多少、引擎水温是否正常,则是另一回事,而且同样重要,对吧? 我们的 GPU 应用跑起来了,但新的问题…...