徐松亮树莓派&python教学1-树莓派的系统安装

版权声明:本文为博主徐松亮的原创作品,未经允许不得转载,多谢支持!

推荐点击此链接:欢迎进入徐松亮博客一站式导航搜索(随时更新)


目录

一,本文目的与说明

二,树莓派简介

三,相关网站

四,SD卡系统制作(作废,Etcher替代)

1,SD卡格式化:

2,下载最新版的NOOBS:

五,用Etcher制作系统tf卡

1,介绍:

2,下载软件:

六,安装必要的工具

1,树莓派开启SSH

2,PC端安装支持SSH的软件

3,PC端安装SFTP的软件

七,VNC

介绍

下载软件

八,本文涉及软件,作者网盘的下载链接

树莓派系统安装相关(SD格式化、NOOBS系统):

SSH、SFTP通讯工具

九,初级实验

重要的事情先说明:

用python编写程序,实现循环LED亮灭翻转。

编写自启动脚本

 将自启动脚本加载到启动文件中

通过SSH重启设备

十,实际操作

查看linux版本

无键盘鼠标显示器的情况下,首次做完系统,设置wifi、开启SSH



一,本文目的与说明

1,实现树莓派的系统安装。

2,安装必要的工具,使Windows/Ubuntu电脑可以与树莓派进行通讯及二次开发。

3,说本文是教学,是吹牛B的说法,实际上是本人学习过程中怕以后忘了,写的一个操作记录而已。

4,硬件环境:树莓派3B、16G的SD卡、Windows 10/Ubuntu电脑。

5,随着本人深入学习,本文会不定期更新。

二,树莓派简介

       关于树莓派是什么,大家自己去查就好。我理解就是个软硬件都开源的超小型计算机,让每个专业软硬件设计师和爱好者都可以玩出新花样新高度,它和arduino都是近些年的伟大开源创新。

三,相关网站

1,官网:https://www.raspberrypi.org/

四,SD卡系统制作(作废,Etcher替代)

1,SD卡格式化:

  • 下载并安装SD Card Formatter工具:https://www.sdcard.org/downloads/formatter/eula_windows/
  • 准备8G或16G的高速SD卡,我用的是16G,因为树莓派的硬盘与内存都是用的SD卡,所以SD卡的容量与品质都影响树莓派的性能。
  • 打开软件,进行格式化,注意一定要选择Overwrite format,我之前选的快速格式化,后面就没有安装成功。

2,下载最新版的NOOBS:

  • 官网下载网址:http://www.raspberrypi.org/downloads
  • 如果官网速度过慢,可以找国内镜像下载。
  • 下载后为zip文件,执行解压,解压后的文件拷贝到SD里即可。

五,用Etcher制作系统tf卡

1,介绍:

  • 可在windows、linux、macOS下使用
  • 只需要3步就可以制作好。

2,下载软件:

六,安装必要的工具

1,树莓派开启SSH

      目的:为了能基于网络,实现命令行操控树莓派,开启方法有如下几种:

  • 开启树莓派SSH方法1:(本人未使用)
    • 通过终端指令临时开启。
    • sudo /etc/init.d/ssh start
  • 开启树莓派SSH方法2:(本人使用方式,用树莓派ZeroW时,无显示键盘鼠标时,唯一设定方法)
    • 做好系统后,TF卡呈现为boot文件夹,在boot文件夹下面,建立一个空的文件,命名为ssh,即表明开启ssh服务。
  • 开启树莓派SSH方法3:(本人使用方式,原因惊悚:当时本人只有USB鼠标,没有USB键盘,无法打指令。)
    • 打开 菜单(Menu) > 首选项(Preferences) > Raspberry Pi Configuration,点击 Interfaces 栏,选择“enable” SSH服务。
  • 开启树莓派SSH方法4:(本人未使用)
    • 命令:sudo raspi-config,选择:5 Interfacing Options,选择:P2 SSH......按提示设置即可。

2,PC端安装支持SSH的软件

  • 用来通过命令行操控树莓派。
  • 基于Windows的电脑,常用的支持SSH的终端为PuTTY或是SecureCRT软件,SecureCRT登录举例(PuTTY使用更简单)

 

  • 基于Ubuntu的电脑,直接在终端使用命令即可,命令为:ssh 用户名@IP,之后按提示操作即可。

3,PC端安装SFTP的软件

  • 目的:用来与树莓派相互传输文件。
  • 无论是Windows还是Ubuntu,都推荐使用FileZilla软件。

七,VNC(无界面版系统无此功能)

八,本文涉及软件,作者网盘的下载链接

九,初级实验

  • 重要的事情先说明:

    • 习惯用windos编代码的小伙伴请注意,文件编写后,一定要用ue等编辑器另存为UTF-8-无BOM格式,否者在linux解析器会出现各种问题!!!
    • 好习惯:在固定的文件夹下建立个人目录,把程序都放在此目录下统一管理,以防止文件找不到。比如本人在路径 /home/pi下建立了xsl文件夹。
    • 赋予文件(夹)权限,编写后的文件分为读、写、运行权限,无权限不运行!
      • 方法1(新手儿):可以在windos操作sftp可视化修改权限。
      • 方法2(老司机):可以通过命令行修改权限,如下命令为赋予文件所有权限(最高权限):sudo chmod 777 文件名 。
  • 用python编写程序,实现循环LED亮灭翻转。

    • 在xsl文件夹下,新建一个文件,在此起名为1-led-onoff.py
    • 编写如下代码(注意格式!!!缩进为TAB键,不能用空格代替,python语法很严格!):
    • 另存为UTF-8 无BOM格式的文件,通过SFTP上传到树莓派的xsl文件夹!(如果是直接在树莓派编写的就忽略此步骤啦!

    • 按照上述方法赋予文件可执行权限。
    • 注意:在lite版系统中,默认没有安装gpiozero,所以需要先手动安装此模块:
      • python2:sudo apt install python-gpiozero
      • python3:sudo apt install python3-gpiozero
from gpiozero import LED
from time import sleep
led=LED(18)

while True:
    led.on()
    sleep(1)
    led.off()
    sleep(1)
  • 编写自启动脚本

    • 在xsl文件夹新建start.sh文件,并编写如下代码
#!/bin/sh
cd /home/pi/xsl/
sudo python 1-led-onoff.py
  •  将自启动脚本加载到启动文件中

    • 修改/etc/rc.local文件,在文件中添加运行自启动脚本代码,具体代码是/home/pi/xsl/start.sh start,整体如下:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
fi

# -----xsl----- begin
/home/pi/xsl/start.sh start
# -----xsl----- end

exit 0
  • 通过SSH重启设备

    • sudo reboot

十,实际操作

  • 查看linux版本

    • 原因:想接USB触摸屏,但是不知道当前树莓派系统是否支持相关驱动,所以要查一下linux版本。
    • 指令:uname -a
    • 当前树莓派回应:Linux raspberrypi 5.4.51+ #1333 Mon Aug 10 16:38:02 BST 2020 armv6l GNU/Linux
  • 无键盘鼠标显示器的情况下,首次做完系统,设置wifi、开启SSH

    • 原因:树莓派-zero-w,首次使用无法进行SSH远程操作。需要设定wifi密码与开启SSH服务。
    • 开启SSH服务:做好系统后,TF卡呈现为boot文件夹,在boot文件夹下面,建立一个空的文件,命名为ssh,即表明开启ssh服务。
    • 设置wifi:在boot文件夹下面,建立一个文件,命名为wpa_supplicant.conf,写入如下代码:
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
 
network={
ssid="WiFi-A"
psk="12345678"
key_mgmt=WPA-PSK
priority=1
}
 
network={
ssid="WiFi-B"
psk="12345678"
key_mgmt=WPA-PSK
priority=2
scan_ssid=1
}
  • ssid:网络的ssid
  • psk:密码
  • priority:连接优先级,数字越大优先级越高(不可以是负数)
  • scan_ssid:连接隐藏WiFi时需要指定该值为1

 

  • 设置键盘

    • 原因:树莓派为英国产品,如果不修改此配置,将会出现按键错误或某些字符打不出来的状况。
    • 界面方式:操作配置即可,不在此说明。
    • 指令方式:通过raspi-config进入配置界面,将键盘设定为美式键盘,键盘排列设置为中国习惯。具体设置步骤不在此详细说明。
  • 设置时区

    • 原因:树莓派没有RTC,所以它是通过网络自动同步时钟,如果时区设置不对,则时间与当地时间有时差。
    • 界面方式操作配置即可,不在此说明。
    • 指令方式:通过raspi-config进入配置界面,配置时区和语言即可,具体设置步骤不在此详细说明。
  • apt指向国内镜像资源

    • 修改文件:
      • /etc/apt/sources.list
    • 屏蔽原内容,并增加以下配置:
      • deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main non-free contrib
        deb-src http://mirrors.aliyun.com/raspbian/raspbian/ buster main non-free contrib
    • 删除另外一个处list文件,否则还是会从官方更新。
      • 备份:sudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bak
      • 删除:sudo rm /etc/apt/sources.list.d/raspi.list
    • 同步更新源:
      • sudo apt-get update
    • 更新升级及安装软件包
      • sudo apt-get upgrade

十一,缩减开机时间

  • 查看各个模块开机时间

    • 开机时间总体统计:systemd-analyze
    • 开机时间分项统计:systemd-analyze blame

  • 关闭Boot过程等待网络连接

    • 指令:raspi-config(不同的版本对应的信息或路径可能不同)
    • 进入:1 System Options
    • 进入:S6 Network at Boot,选择No即可
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

徐松亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值