【树莓派学习】开发环境配置

【树莓派学习】开发环境配置

​ Raspberry Pi OS作为基于Linux的系统,其默认网络配置在国内的网络环境下容易出现访问慢甚至无法连接等问题,不便于我们的学习,同时,树莓派上C/C++的使用需要单独安装WiringPi。本文主要介绍如何更改树莓派的pip及软件源、如何在Raspberry Pi OS(以下简称OS)中安装WiringPi。


文章目录

  • 【树莓派学习】开发环境配置
    • 一、软件换源
    • 二、python环境配置
      • 1. pip换源
      • 2. 管理虚拟环境
        • 创建venv虚拟环境
        • 在虚拟环境中使用pip
      • 3.为全局安装
    • 三、WiringPi安装

注:本文为笔者的学习笔记,有部分内容可能存在疏漏,敬请指正。

硬件环境:Raspberry PI 4B(2GB RAM)

使用软件:VNC Viewer

本文涉及的外部连接均已放置文末

一、软件换源

树莓派内置的软件源在国内的网络环境下访问较慢,且容易出现连接失败的情况,我们可以将软件源换为清华大学开源软件镜像站提供的源,从而提高下载速度。

打开清华大学开源软件镜像站-Raspbian,根据页内提示确定系统架构。

在这里插入图片描述

uname -m

在这里插入图片描述

我使用的为aarch64,点击下方的连接进入清华大学开源软件镜像站-Debian
在这里插入图片描述

根据提示,打开配置文件

sudo nano /etc/apt/sources.list

将文件中的内容替换为以下内容

在这里插入图片描述

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmwaredeb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmwaredeb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmwaredeb https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
# deb-src https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware

保存文件,运行以下命令确定,更新软件源列表,同时检查编辑是否正确

sudo apt-get update

二、python环境配置

1. pip换源

在终端中输入python,可以看到OS内置python3,并且可以在桌面右上角找到IDE Thonny

我们可以通过以下命令修改pip的源

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple///可以将后面的地址换为以下源
阿里云 http://mirrors.aliyun.com/pypi/simple/
豆瓣 http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
华中科技大学 http://pypi.hustunique.com/

2. 管理虚拟环境

创建venv虚拟环境

当我们使用pip尝试安装库时,却看到这样的报错【error:externally-managed-environment】

在这里插入图片描述

这是因为OS中内置有venv虚拟环境,此时pip需要在虚拟环境中使用

我们可以通过以下命令创建一个虚拟环境

python3 -m venv name //在当前目录下创建虚拟环境
//其中name为虚拟环境名称

此时我们可以在用户目录下找到对应文件夹

ls -l  //显示当前目录下的所有文件及相关信息

通过以下命令进入虚拟环境

source name/bin/activate

通过以下命令退出虚拟环境

deactivate

要删除虚拟环境,只需删除与其相关的目录即可

rm -rf name
//注意,此命令不可逆

在这里插入图片描述

在虚拟环境中使用pip

在创建好虚拟环境并进入后,我们可以直接在该环境中使用pip命令,此时可以正常执行

在这里插入图片描述

以下为虚拟环境安装示例

此时test1和test2虚拟环境中均没有pandas
在这里插入图片描述

在这里插入图片描述

我们使用pip为test1安装pandas,此时test1成功安装,而test2不受影响

在这里插入图片描述

在这里插入图片描述

3.为全局安装

如果需要为全局安装,则需要使用pipx

sudo apt install pipx

使用pipx安装相应包可以为全局安装

在这里插入图片描述

三、WiringPi安装

WiringPi用于树莓派的引脚控制等

可能是因为OS版本更新,一些教程中所用的方法无法再用于安装WiringPi(比如我看的),该方法如下:

cd /tmp
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb

在我使用的版本中(2024-03-15-raspios-bookworm-arm64)使用该方式安装WiringPi会报错

以下为我使用的能够成功安装的方法

  1. 安装 git-core

    sudo apt-get install git-core
    
  2. 从github(或镜像站)clone所需WiringPi文件

    git clone https://github.com/WiringPi/WiringPi.git
    或从镜像站
    git clone https://hub.njuu.cf/WiringPi/WiringPi.git
    
  3. 安装

    cd WiringPi
    ./bulid
    
  4. 检查安装,若出现版本信息,说明安装成功

    gpio -v
    

在这里插入图片描述

查看引脚信息

gpio readall

在这里插入图片描述


清华大学开源软件镜像站-Raspbian:https://mirrors.tuna.tsinghua.edu.cn/help/raspbian/

清华大学开源软件镜像站-Debian:https://mirrors.tuna.tsinghua.edu.cn/help/debian/

WiringPi: The arguably fastest GPIO Library for the Raspberry Pi i:https://github.com/WiringPi/WiringPi

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/644278.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用代码给孩子造“钱”

起因 作为家里有两个娃的奶爸,时长为了孩子乱花钱而焦虑不已。然后最近看到一段短视频说了这么段话。 父母不要被动给孩子买东西,而是定期给孩子钱。让孩子自己管钱培养她对于钱的认知和理财的观念。 突然感觉大师我悟了。感觉值得一试。于是就打算给他…

C++ dll 分别 给c# c++使用

一、C# 自己写2D 3D算法库都要给别人用,所以好几年没有用过c# 了,调用一些 1、建立c 项目 .h 文件 #pragma once #ifdef __DLLEXPORT #define __DLL_EXP _declspec(dllexport) #else #define __DLL_EXP _declspec(dllimport) #endif extern "…

VSCode通过跳板机免密连接远程服务器的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

每周一算法:多起点最短路

题目描述 有一天,琪琪想乘坐公交车去拜访她的一位朋友。由于琪琪非常容易晕车,所以她想尽快到达朋友家。 现在给定你一张城市交通路线图,上面包含城市的公交站台以及公交线路的具体分布。 已知城市中共包含 n n n个车站(编号 …

编写你的第一个java 程序

1.安装 jdk 网址: Java Downloads | Oracle 一般我们安装jdk 17 就行了 自己练习 自己学习 真正的开发中我们使用jdk 8 这个是最适合开发java 应用程序的 当然你也可以选择你的 系统 来安装这个java 在文件资源管理器打开JDK的安装目录的bin目录,会发…

Sectigo证书申请流程及价格介绍

Sectigo 是一家全球知名的数字证书颁发机构(Certificate Authority, CA),自1998年起就开始提供 SSL 证书服务,是全球最早的 CA 机构之一。 一 Sectigo证书申请流程 1 确定证书类型 根据自身的需求确定证书的类型,一…

ctfshow——XSS

文章目录 XSS介绍什么是xss&#xff1f;XSS危害XSS的分类常用XSSpayload web316——反射型XSSweb317——过滤<script> web318——过滤script、imgweb319——不止过滤script、imgweb320——过滤空格web321——不止过滤空格web322——不止过滤空格web323web324web 325web32…

PS入门|用PS设计物品尺寸,需要注意的几个重要问题

注&#xff1a;仅学习使用 【PS24】2024版本更新的内容比较多&#xff0c;对电脑配置的要求也是比较高的。建议配置&#xff1a;第十代i5或以上CPU。 如果是第十代i3或以下的CPU&#xff0c;建议安装PS2021或者以下版本。 ---这是一条不正经的分割线--- 讲了那么久的PS教程…

MySQL创建数据库与表

要求&#xff1a; 1.在本机安装数据库 2.创建一个数据库db_classes 3.创建一行表db_hero 4.将四大名著中的常见人物插入这个英雄表 目录 要求&#xff1a; 过程&#xff1a; 结果&#xff1a; 命令总结&#xff1a; 过程&#xff1a; 1.安装数据库 http://t.csdnimg…

基于Springboot的网课管理系统

基于SpringbootVue的网课管理系统的设计与实现 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringbootMybatis工具&#xff1a;IDEA、Maven、Navicat 系统展示 用户登录 首页 课程表 论坛交流 学校公告 后端 学生管理 教师管理 班级管理 课程分类管理…

GEE:等间隔采样点生成

作者&#xff1a;CSDN _养乐多_ 本文将介绍如何在 Google Earth Engine &#xff08;GEE&#xff09;平台上生成等间隔采样点&#xff0c;以及如何根据用户指定的参数&#xff0c;包括中心点坐标、行列数、步长、点的样式&#xff0c;在地图上创建等间隔采样点集合。 结果如…

C 函数递归

目录 什么是递归 递归的限制条件 递归的例子 1、用递归求n的阶乘 递归扩展学习 1、青蛙跳台阶 思路 代码实现 2、汉诺塔问题​ 思路 代码实现 总结 什么是递归 递归&#xff1a;“递推” “回归” 在C语言中&#xff0c;函数递归就是&#xff1a;函数自己调用自…