树莓派学习:从淘宝到开机
目录
前言
双11心血来潮买了个树莓派,想捣鼓点东西。没什么具体的目的或是想法,纯粹是觉得想学点新鲜东西。就借此机会把捣鼓过程中的点点滴滴都记录下来,一方面是作为备忘录,另一方面业希望能给像我一样的萌新提供些许帮助!本次树莓派的装机是基于Mac Book Pro进行的,如果用Windows系统的话,烧录树莓派系统的过程略有区别。
1. 树莓派简介
树莓派Raspberry Pi(简写为RPi或者RasPi),是只有信用卡大小的微型电脑,其系统基于Linux。所以说要学习Linux的话,树莓派是个很好的平台。
另外,树莓派还有40个GPIO接口、串口、摄像头接口等对外接口,这意味着还可以用树莓派做一些硬件相关的操作。
这里就先不多占篇幅做更多介绍了,放几个常用的链接以备学习树莓派知识,视频网站上也有很多入门视频可供查阅。
2. 淘宝购机
淘宝上搜索关键字树莓派4b会得到很多链接,包括各种套餐,可供选择的有主板内存的大小,以及外部设备等。我的购买清单如下:
- Raspberry Pi 4b 4Gb内存的主板
Note: 有2/4/8Gb内存的主板供选择,如果只是学习和娱乐的化8Gb太多了,2Gb和4Gb差了差不多100块钱,最终选择了4Gb的内存。 - 普通电源+普通HDMI线
Note:HDMI线没有用上,如果不需要单独给树莓派配显示器的话可以省掉。另外推荐买普通电源,因为官方电源没有开关键,长期插拔会磨损电源的TypeC接口。 - 16Gb闪迪TF卡以及读卡器
Note:16Gb足够了,仅用做装系统,今后想用树莓派存储数据的话可以用USB外接移动硬盘。 - 亚克力外壳
Note:我的反正买回来安装过程中就断了,正在考虑买个带风扇的铝合金外壳。
总共下来480块左右,在双11活动下差不多400块到手。
给萌新的建议:不要一开始把所有外围扩展套件都买齐了,很容易吃灰不说,还会让人不知道先学什么。所有我建议先把树莓派本机学明白了,进阶时用到外围模块再买也不迟。
3. 树莓派开机
3.1 开箱
3.2 开机前的准备工作
3.2.1 材料清单
正式开机前还需要准备些东西:
- mac电脑、树莓派、树莓派电源、TF卡和读卡器(当然如果是mac电脑最好还有个USB转TypeC的转接头)、网线(也可以不要,但是需要需要配置WLAN的Config文件
wpa_supplicant.conf
,我图省事还是备了根网线) - 在电脑上下载树莓派系统镜像文件,对于萌新来说我直接选择了推荐的Raspbian Buster with desktop and recommend software。将它下载下来,如果实在下载太慢的话可以自行到国内各大树莓派论坛里去搜索。
- 在电脑上下载VNC Viewer,这个是之后用图形界面远程登陆树莓派用的。
3.2.2 格式化TF/SD卡
下载软件的同时可以对TF卡进行格式化。
-
将TF卡插入读卡器并接入mac电脑,打开mac终端,查看一下已挂载的卷
df -h
这里的/dev/disk3s1
就是接入的TF卡,当然名字是系统给它起的,可能会略有不同。 -
将TF卡设备所在分区卸载,否则等一下的格式化操作会提示设备正忙。
sudo diskutil unmount /dev/disk3s1
再次查看设备,
/dev/disk3s1
已经不再列表里了。敲命令时要注意把要卸载的disk名字检查好,不一定是/dev/disk3s1
。
格式化之前再确认一下要格的盘是TF卡,否则错格式化了系统盘就很麻烦了。可以用下面命令打开磁盘管理工具来查看设备。diskutil list
可以确认/dev/disk3
就是我们即将要格式化的TF卡,这张卡里之前已经烧录过树莓派的系统disk3s2
上的Linux
系统,新卡的话应该全部存储空间可用的。 -
通过dd命令格式化TF卡
sudo dd bs=512 count=1 if=/dev/zero of=/dev/rdisk3
其中rdisk3是的r代表快速格式化,不用纠结
s1
或者s2
。输入后系统会提示输入mac的密码,之后稍等片刻,格式化就完成了。
-
重新拔插一下TF卡,mac就会字体弹出初始化窗口
点击初始化,然后选中对应的TF卡的磁盘,将磁盘格式设置成FAT(ExFAT是针对大于64GB的TF卡的),名称起成自己想要的,最后点击抹掉,整个磁盘就会被初始化,至此整个格式化和初始化就完成来。
3.3.3 将系统镜像烧录到TF/SD卡中
在TF卡初始化完成后,我们要把下载好的Raspbian的镜像烧录到TF卡中。
和刚才格式化的流程一样,也要先找到TF卡所在的卷,再卸载卷,然后确定要烧录的盘。
同样通过dd命令,将下载好的镜像文件2020-08-20-raspios-buster-armhf-full.img
烧录进TF卡。
sudo dd bs=1m if=/Users/huanchen/Downloads/2020-08-20-raspios-buster-armhf-full.img of=/dev/rdisk3
这里要等较长一段时间,并且没有烧录正在进行之类提示,所以安静的等着就好了,直至提示出现。
至此TF卡上已经成功烧录了Raspbian的系统文件。
3.3.4 开机前最后一步
开机前的最后一步,给TF卡所在盘添加ssh
文件,目的是等下我们要通过ssh
链接来通过mac访问树莓派,因为我们并没有给树莓派专门配的鼠标、键盘和显示器。
方法很简单:手动创建一个空白记事本.txt
文件,命名为ssh
,重命名,删掉.txt
扩展名。将这个文件放入SD卡的boot盘中。
可选操作:配置WLAN文件,如果真的找不到网线的话,也可以提前配置WLAN。用同样的方法新建一个空白文件wpa_supplicant.conf
(注意要删掉扩展名.txt
)
用文本编辑器打开wpa_supplicant.conf
,输入以下配置:
country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="将我替换成第一个WiFi的名字,不删除引号,不能有中文"
psk="将我替换成WiFi密码,不删除引号"
key_mgmt=WPA-PSK
}
network={
ssid="将我替换成第二个WiFi的名字,不删除引号,不能有中文"
psk="将我替换成WiFi密码,不删除引号"
key_mgmt=WPA-PSK
}
说明以及不同安全性的 WiFi 配置示例:
#ssid:网络的ssid
#psk:密码
#priority:连接优先级,数字越大优先级越高(不可以是负数)
#scan_ssid:连接隐藏WiFi时需要指定该值为1
#key_mgmt指的是加密方式,如果是WPA2的话,写WPA-PSK这个就可以
3.4 树莓派开机及配置
将树莓派电源和网线插上,开机!
3.4.1 确定树莓派ip地址
不管是网线链接还是WLAN,要确保树莓派和mac在同一网络下,最简单的办法是网线链接树莓派和家里路由器的LAN口。然后通过路由器主页可以查询局域网内设备分配到的ip地址,比如
192.168.3.27
3.4.2 通过ssh远程链接树莓派
mac系统是自带ssh工具的,加上刚才我们在树莓派的系统文件里添加里shh
文件,所以我们先找可以直接通过如下命令登陆树莓派。
ssh pi@192.168.3.27
然后两次确定,再之后输入树莓派初始密码raspberry
,如果屏幕上最终出现绿色的pi@raspberrypi
就说明成功登陆里树莓派。
3.4.3 通过VNC远程链接树莓派
在mac上安装刚才下载的VNC Viewer;在树莓派上安装VNC Server。
pi@raspberrypi:~ $ sudo apt-get install tightvncserver
安装完成后启动树莓派的VNC Server,
tightvncserver
之后VNC Server会让你设置一个密码并重复,然后问你要不要再为view-only模式设置密码,我选的不要。启动后出现如下提示,记住端口号。
New 'X' desktop is raspberrypi:1 #<- 其中1是网络端口!
在mac上打开VNC Viewer然后输入ip地址:端口号,然后回车就可以连接到树莓派的图形桌面了!
后面本地配置中有如何设置打开树莓派的VNC端口。
- 我用mac的VNC viewer登陆,如果把画质分辨率设置的比较高,整个窗口界面就会非常卡,使用体验很差。不知道是不是局域网带宽问题,或者是VNC服务器设置问题。待解决!
3.4.4 配置树莓派
3.4.4.1 Raspbian
的包管理器apt-get
换源
- 修改软件更新源
用nano编辑器打开/etc/apt/sources.list
,
将原来的mirro地址comment#掉,换成清华大学开源软件镜像站。sudo nano /etc/apt/sources.list
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
ctrl + o
,回车保存,ctrl + x
退出。 - 修改系统更新源
同上,用nano编辑器打开/etc/apt/sources.list.d/raspi.list
,
将原来的mirro地址comment#掉,换成清华大学开源软件镜像站。sudo nano /etc/apt/sources.list.d/raspi.list
deb http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ buster main ui
ctrl + o
,回车保存,ctrl + x
退出。
再更改
更新apt-get列表。
sudo apt-get update #<-- 更新软件列表
sudo apt-get upgrade #<-- 更新软件,谨慎使用!
3.4.4.2 Python
的包管理器pip
换源
创建文件,逐条输入以下命令:
sudo mkdir ~/.pip
cd .pip
sudo nano pip.conf
打开文件后将以下内容放进去,
[global]
timeout = 10
index-url = http://mirrors.aliyun.com/pypi/simple/
extra-index-url= http://pypi.douban.com/simple/
[install]
trusted-host=
mirrors.aliyun.com
pypi.douban.com
ctrl + o
,回车保存,ctrl + x
退出。
3.4.4.3 本地配置
在树莓派终端内输入:
sudo raspi-config
进入配置界面,如下图:
以下是整个目录和要配置的说明(备注项是我更改过的配置):
1. System Options
S1 Wireless LAN # 无线网配置
S2 Audio # 音频
S3 Password # 改密码(原密码为raspberry)
S4 Hostname
S5 Boot / Auto Login
S6 Network at Boot
S7 Splash Screen
S8 Power LED
2. Display Options
D1 Resolution # 设置显卡分辨率
D2 Underscan # 去显示黑边
D3 Pixel Doubling # 2x2 pixel mapping (显示更多细节)
D4 Composite Video # 视频输出
D5 Screen Blanking
3. Interface Options
P1 Camera # 打开摄像头接口
P2 SSH # SSH刚才开机前已经通过ssh文件打开了
P3 VNC # 打开VNC接口(图形界面远程登陆)
P4 SPI # 打开SPI总线接口(玩GPIO时候会用)
P5 I2C # 打开I2C总线接口(玩GPIO时候会用)
P6 Serial Port # 打开串口(玩GPIO时候会用)
P7 1-Wire
P8 Remote GPIO # 打开GPIO远程控制(玩GPIO时候会用)
4. Performance Options
P1 Overclock
P2 GPU Memory # 配置成了512M(本希望显示会更流畅些,现在发现瓶颈在VNC)
P3 Overlay File System
P4 Fan
5. Localisation Options
L1 Locale # 中国(在最下面)
L2 Timezone # Asia / Shanghai
L3 Keyboard # US Keyboard
L4 WLAN country # 中国
6. Advanced Options
A1 Expand Filesystem # 扩展整个SD卡
A2 GL Driver
A3 Compositor
A4 Network Interface Names
A5 Network Proxy Settings
A6 Boot Order
A7 Bootloader Version
8. Update
9. About raspi-config
3.4.4.4 下载常用软件
- 中文字体输入法
- FTP: FileZilla
- VIM编辑器
- to be add…
- git
- 安装
sudo apt-get install git
- 配置用户名和邮箱
git config --global user.name "用户名" git config --global user.email "邮箱"
- 查看配置列表
git config --global list
- 安装
3.4.4.5 重启、关机
- 如何关机
sudo shutdown -h now sudo halt sudo poweroff sudo init 0
- 如果重启
sudo reboot shutdown -r now shutdown -r 18:23:52 #定时重启在18点23分52秒关闭
总结展望
树莓派的开机和配置已经基本完成了,以下Open Points待完成:
- 购买外壳及冷却风扇
- 学习总结树莓派硬件及系统
- 在树莓派上搭建vim编辑器和开发环境
- 用树莓派链接摄像头
- 用树莓派控制直流电机
- 用树莓派控制无刷电机