【树莓派学习】树莓派3B+的安装和环境配置
【树莓派学习】树莓派3B+的安装和环境配置
文章目录
- 【树莓派学习】树莓派3B+的安装和环境配置
- 一、搭建Raspberry Pi树莓派运行环境
- 1、下载树莓派镜像下载器
- 2、配置wifi及ssh
- 3、SSH访问树莓派
- 1)命令行登录
- 2)远程桌面登录
- 3)VNC登录(推荐)
- 4、创建多个新用户账号
- 二、在树莓派上分别用C和Python编程运行一个简单的程序
- 1、C语言实现简单程序
- 2、Python3实现简单程序
- 参考链接
一、搭建Raspberry Pi树莓派运行环境
1、下载树莓派镜像下载器
点击进入下载地址

然后双击安装好工具

2、配置wifi及ssh
- 把读卡器和tf卡插入电脑
- 打开Raspberry Pi Imager下载工具

-
选择操作系统

-
选择SD卡

- 配置wifi信息,配置打开ssh登录方式(重要环节)




-
配置完成后点击保存,弹窗询问是否清除现有SD内容,选择“是”。
-
等待烧录过程(写入和验证两个过程)

3、SSH访问树莓派
1)命令行登录

- 关于IP地址
PS:查看IP的另一种方法——官网介绍了利用 ARP 命令根据树莓派的网络适配器供应商的申请的 MAC 地址区间 (MAC 地址以 “b8:27:eb” 或 “dc:a6:32” 开头) 来识别哪个 IP 地址是树莓派, 同样奏效. 方法如下:
Windows 运行
arp -a | findstr b8-27-eb或arp -a | findstr dc-a6-32
MacOS, Linux 运行arp -na | grep -i “b8:27:eb”或arp -na | grep -i “dc:a6:32”
- 获取到的树莓派分配的IP地址,用ssh登录
ssh<username>@<IP地址>

2)远程桌面登录
在上面中,我们仅仅是通过命令行的方式查看到文件系统。既然我们安装的是桌面版本的树莓派系统,那么肯定有一个方式可以连接上桌面系统。我们试试远程桌面连接。要实现远程桌面连接,树莓派需要安装 xrdp服务。在刚刚的命令行中执行:sudo apt-get install xrdp

电脑上打开远程桌面连接:

这个时候会弹出一个界面,需要输入ssh账号和密码

输入信息后登录成功即可看到树莓派桌面

3)VNC登录(推荐)
远程桌面连接,我们可以查看到桌面信息,但是如果还想要上传文件呢?这就需要使用到vnc服务。树莓派自带了VNC功能(vncserver),我们打开即可。
首先,我们本地电脑需要安装一下vncviewer,通过它来远程连接到vncserver。
点击下载vncviewer

根据具体系统下载好对应安装包,双击安装好。

接下来我们只需要打开树莓派的vnc服务,然后连接过去即可。
- 命令行打开VNC服务
sudo raspi-config

选择 Interface Options

选择 VNC,选择Yes


命令行启动vncserve:vncserve

- 打开下载好的VNC Viewer



4、创建多个新用户账号
-
使用adduser命令创建用户
sudo adduser user1sudo adduser xlq -
配置允许用户通过SSH密码登录
默认情况下,新创建的用户可以通过 SSH 登录(如果 SSH 服务已启用)。如果需要确保允许账号密码登录,可以编辑 SSH 配置文件。 -
编辑SSH配置文件
ssh nano /etc/ssh/sshd_config
- 确保允许密码登录:找到以下行并确保没有注释掉并且其配置为yes

-
重启SSH 服务使配置生效
sudo systemctl restart ssh -
测试SSH账号密码登录

二、在树莓派上分别用C和Python编程运行一个简单的程序
1、C语言实现简单程序
- 安装GCC编译器——树莓派默认安装了GCC编译器,如果没有,可以使用以下命令安装:
sudo apt-get install build-essential

-
使用
nano创建一个C文件nano hello.c -
编写代码
#include <stdio.h>int main() {printf("Hello, 树莓派 from C !\n");return 0;
}
- 编译并运行C程序
gcc hello.c -o hello./hello

2、Python3实现简单程序
-
树莓派系统自带了Python运行环境,输入下面命令查看版本
python -V
如果没有,可以使用以下命令安装:
sudo apt-get install python3 -
使用
nano创建一个python文件nano hello.py -
编写代码
# hello.pydef main():print("Hello, 树莓派 from python!")if __name__ == "__main__":main()

参考链接
基础篇① 半小时搭建树莓派3B可运行环境
树莓派 3B/3B+/4B 的基本配置(保姆级新手教程)
相关文章:
【树莓派学习】树莓派3B+的安装和环境配置
【树莓派学习】树莓派3B的安装和环境配置 文章目录 【树莓派学习】树莓派3B的安装和环境配置一、搭建Raspberry Pi树莓派运行环境1、下载树莓派镜像下载器2、配置wifi及ssh3、SSH访问树莓派1)命令行登录2)远程桌面登录3)VNC登录(推…...
算法题(83):寄包柜
审题: 需要我们对模拟柜子的数组进行插入数据和打印数据的操作 思路: 首先我们观察题目,发现可以用一个数组表示一个柜子,而数组中每个索引的位置可以看成是一个个格子。但是柜子的数据量是1e5,且格子的数据量是1e5.如…...
深入浅出MySQL:概述与体系结构解析
目录 1. 初识MySQL 1.1. 数据库 1.1.1. OLTP(联机事务处理)1.1.2. OLAP(联机分析处理) 2. SQL 2.1. 定义2.2. DQL(数据查询语言)2.3. DML(数据操纵语言)2.4. DDL(数据定…...
tin这个单词怎么记
英语单词 tin,一般用作名词,意为“罐头;锡”: tin n.锡;罐头;罐;罐头盒;(盛涂料、胶水等的)马口铁罐,白铁桶;罐装物;金属食品盒;烘焙…...
【0005】Python变量详解
如果你觉得我的文章写的不错,请关注我哟,请点赞、评论,收藏此文章,谢谢! 本文内容体系结构如下: 任何一个语言编写的程序或者项目,都需要数据的支持,没有数据的项目不能称之为一个…...
yolov8_pose模型,使用rknn在安卓RK3568上使用
最近在使用rknn的一些功能,看了看文档以及自己做的一些jni,使用上yolov8_pose的模型. 1.我们先下载一下rknn的模型功能代码,rk有自己做的一套demo 地址:GitHub - airockchip/rknn_model_zooContribute to airockchip/rknn_model_zoo development by creating an account on G…...
HTTP 协议的发展历程:从 HTTP/1.0 到 HTTP/2.0
HTTP 协议的发展历程:从 HTTP/1.0 到 HTTP/2.0 HTTP(HyperText Transfer Protocol,超文本传输协议)是 Web 的基础协议,用于客户端和服务器之间的通信。从 HTTP/1.0 到 HTTP/2.0,HTTP 协议经历了多次重大改…...
PartitionFinder2 安装与使用-bioinfomatics tools 051
1. 引言 PartitionFinder2 是目前针对大中型数据集(核苷酸、氨基酸、形态数据)最理想的分区检测和进化模型选择工具。其推演的最优进化模型结果与 jModelTest2(核苷酸)和 ProTest3(氨基酸)的结果较为接近。…...
MCP与RAG:增强大型语言模型的两种路径
引言 近年来,大型语言模型(LLM)在自然语言处理任务中展现了令人印象深刻的能力。然而,这些模型的局限性,如知识过时、生成幻觉(hallucination)等问题,促使研究人员开发了多种增强技…...
ARM 架构下 cache 一致性问题整理
本篇文章主要整理 ARM 架构下,和 Cache 一致性相关的一些知识。 本文假设读者具备一定的计算机体系结构和 Cache 相关基础知识,适合有相关背景的读者阅读 1、引言 简单介绍一下 Cache 和内存之间的关系 在使能 Cache 的情况下,CPU 每次获取数…...
GB28181未来发展趋势,如何借助于EasyGBS国标GB28181平台+EasyGBD国标GB28181设备端抓住大机会
GB28181规范目前已经迎来了2022版,随着规范行业影响力和应用范围越来越大,相信还会有类似2028、2030等迭代版本出来,我们预测的GB28181发展趋势可能会是以下几个方面,感兴趣的也可以跟我单独探讨: 技术标准持续优化&a…...
代数结构—笔记
线性空间 如果满足以下性质,则域 K K K上定义了二元运算(加法)与二元函数(数乘)的非空集合 X X X称为线性空间。 1、加法封闭性:对任意 u , v ∈ X u, v \in X u,v∈X,存在 u v ∈ X uv\in X …...
tcc编译器教程1 配置tcc编译器环境
TinyCC(又名TCC)是一款开源小型但超快速的C编译器。下面介绍在windows下使用 1软件下载 tcc编译器官网为 https://www.bellard.org/tcc/ 下载地址为 http://download.savannah.gnu.org/releases/tinycc/ 选择其中tcc-0.9.27-win64-bin.zip进行下载 htt…...
安全模块设计:token服务、校验注解(开启token校验、开启签名校验、允许处理API日志)、获取当前用户信息的辅助类
文章目录 引言pom.xmlI 校验注解ApiValidationII token服务TokenService获取当前用户信息的辅助类III 域登录接口响应数据登陆用户信息引言 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/PO…...
机器学习:线性回归,梯度下降,多元线性回归
线性回归模型 (Linear Regression Model) 梯度下降算法 (Gradient Descent Algorithm) 的数学公式 多元线性回归(Multiple Linear Regression)...
报错The default superclass, “jakarta.servlet.http.HttpServlet“(已经配置好tomcat)
报错报错DescriptionResourcePathLocationType The default superclass,“jakarta.servlet.http.HttpServlet”, according to the project’s Dynamic Web Module facet version (5.0), was not found on the Java Build Path. 解决办法: 根据错误信息࿰…...
【人工智能】数据挖掘与应用题库(1-100)
1、涉及变化快慢的问题可以考虑使用导数来分析。 答案:对 2、导数的几何意义是曲线在某点处切线的斜率。 答案:对 3、函数在某点的左导数存在,则导数就存在。 答案:错 4、关于梯度下降算法,下列说法错误的是( ) 错误:梯度下降算法能找到函数精确的最小值。 5、正…...
C#委托(delegate)的常用方式
C# 中委托的常用方式,包括委托的定义、实例化、不同的赋值方式以及匿名委托的使用。 委托的定义 // 委托的核心是跟委托的函数结构一样 public delegate string SayHello(string c);public delegate string SayHello(string c);:定义了一个公共委托类型 …...
【弹性计算】弹性裸金属服务器和神龙虚拟化(一):功能特点
弹性裸金属服务器和神龙虚拟化(一):功能特点 特征一:分钟级交付特征二:兼容 VPC、SLB、RDS 等云平台全业务特征三:兼容虚拟机镜像特征四:云盘启动和数据云盘动态热插拔特征五:虚拟机…...
小结:BGP 的自动聚合与手动聚合
BGP 的自动聚合与手动聚合 BGP 在大规模网络中,通常会进行路由聚合(Route Aggregation),即将多个更具体(更小)的路由前缀合并成一个更大(更粗略)的前缀,以减少 BGP 路由…...
CTF中pwn shellcode题目
CTF中pwn shellcode题目 下面是一些shellcode代码和绕过技巧。 一些只给payload或者exp一把梭 首先给出两个常用shellcode仓库,可以检索需要的shellcode shellcode databaseexploit-db 基础 基础shellcode shellcode asm(shellcraft.sh())生成指定函数 用法…...
Conda 环境搭建实战:从基础到进阶
在当今复杂多变的软件开发与数据科学领域,拥有一个稳定、可复现且易于管理的开发环境是项目成功的基石。Conda 作为一款强大的跨平台环境管理与包管理工具,为开发者提供了便捷高效的环境搭建与依赖管理解决方案。本文将深入探讨 Conda 环境搭建的实战技巧…...
深入解析:域名转换成 IP 地址的多种方式
深入解析:域名转换成 IP 地址的多种方式 在互联网的世界里,我们日常访问网站时输入的是易于记忆的域名,比如 “www.example.com”,但计算机之间通信实际上依靠的是 IP 地址。那么,域名是如何转换成 IP 地址的呢&#x…...
大模型function calling:让AI函数调用更智能、更高效
大模型function calling:让AI函数调用更智能、更高效 随着大语言模型(LLM)的快速发展,其在实际应用中的能力越来越受到关注。Function Calling 是一种新兴的技术,允许大模型与外部工具或API进行交互,从而扩…...
LeetCode:131. 分割回文串(DP Java)
目录 131. 分割回文串 题目描述: 实现代码与解析: 动态规划 原理思路: 131. 分割回文串 题目描述: 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。…...
计算机毕业设计SpringBoot+Vue.js贸易行业CRM系统(源码+文档+PPT+讲解)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
虚拟机中的指示命令
1. 复制文件:cp 源文件 目标文件(cp file1.txt file2.txt) 2. 复制文件夹:cp -r 源文件夹 目标文件夹(cp -r dir1 dir2) 3. 创建一个空的文件:touch file1.txt 4. 创建一个空目录&a…...
图像分类项目2:鸟类图像分类
1 数据集处理 1.1数据集下载 数据集来源:kaggle,网址:https://www.kaggle.com/,点击进入网站,左侧选择Datasets。 进入后搜索栏搜索关键词bird。此时出现很多数据集可以选择,推荐选择第一个或者第三个。…...
Redis数据结构-List列表
1.List列表 列表类型适用于存储多个有序的字符串(这里的有序指的是强调数据排列顺序的重要,不是升序降序的意思),列表中的每个字符串称为元素(element),一个列表最多可以存储2^32-1个元素。在R…...
启动你的RocketMQ之旅(三)-Producer启动和发送流程(上)
前言: 👏作者简介:我是笑霸final。 📝个人主页: 笑霸final的主页2 📕系列专栏:java专栏 📧如果文章知识点有错误的地方,请指正!和大家一起学习,一…...

