0.烧录系统

下载网址:https://www.raspberrypi.org/software/operating-systems/

64位:lite 版https://downloads.raspberrypi.org/raspios_lite_arm64/images/

桌面版:https://downloads.raspberrypi.org/raspios_arm64/images/

推荐下载lite版比较小

烧录工具Raspberry Pi Imager

电脑插上内存卡,USB Image Tool.exe,打开软件Restore即可烧录

烧录好会弹出格式化,不要格式化

默认用户是 pi 密码为 raspberry

1.查看Debian版本

查看系统位数

getconf LONG_BIT

如果结果返回 32,说明是 32 位系统;

如果结果返回 64,说明是 64 位系统。

 

lsb_release -a

No LSB modules are available.
Distributor ID:    Debian
Description:    Debian GNU/Linux 10 (buster)
Release:    10
Codename:    buster
 

2.切换源

点击查看

3.安装ssh

不用显示器打开ssh

在boot根目录新建一个名为 ssh 的空文件即可。

带有系统的tf卡(或SD卡)插入读卡器中,新建ssh文件即可,注意无后缀名

 

点击查看

4.安装tesseract-ocr

乌班图一样

5.显示器不显示问题

情况1:

32位Debain10

修改config.txt让usbhdmi_force_hotplug=1优先使用hdmi

hdmi0接口连接micro hdmi线,才 成功,hdmi1接口失败

情况2:

64位的Debian11 用hdmi1接口成功,添加usbhdmi_force_hotplug=1

扩展修改路径

sudo name /boot/config.txt

6.连接wifi

已知方法1

读卡器写好系统以后,打开读卡器

新建文件,文件名为wpa_supplicant.conf
写入

ssid:wifi账号,psk:wifi密码

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
ssid=""
psk=""
key_mgmt=WPA-PSK
priority=1
}

/boot/wpa_supplicant.conf

            进入系统后路径在: /etc/wpa_supplicant/wpa_supplicant.conf

 

方法2:

输出

sudo raspi-config

找Network Options ,我没找到

 

扩展:如果上面方法都不行,可能缺少wifi驱动,没有wifi驱动解决

在树莓派上连接Wi-Fi可能涉及到多个步骤和配置。如果你无法连接Wi-Fi,可能的原因包括配置错误、驱动缺失或硬件问题。以下是一些常见的解决方法和检查步骤:

检查Wi-Fi驱动

首先,确保你的树莓派上安装了必要的Wi-Fi驱动。对于大多数树莓派设备,Wi-Fi驱动已经预装好,但如果你使用的是较旧的设备或自定义镜像,可能需要手动安装。

sudo apt update
sudo apt install firmware-brcm80211

检查Wi-Fi接口

确保Wi-Fi接口是启用状态。可以使用以下命令检查Wi-Fi接口的状态:

ifconfig

你应该看到类似 wlan0 的接口。如果没有,可以尝试使用以下命令启用它:

sudo ifconfig wlan0 up

配置Wi-Fi

在Debian 10上,你可以通过编辑 /etc/wpa_supplicant/wpa_supplicant.conf 文件来配置Wi-Fi连接。打开终端并编辑该文件:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

添加以下内容(将 SSID 和 PASSWORD 替换为你的Wi-Fi网络名称和密码):

country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="SSID"
    psk="PASSWORD"
}

保存并退出编辑器(按 Ctrl+X,然后按 Y,再按 Enter)。

重启网络服务

配置完成后,重启网络服务:

sudo systemctl restart dhcpcd

或者你也可以重启树莓派:

sudo reboot

手动连接Wi-Fi

你可以使用以下命令手动连接Wi-Fi,以检查是否有任何错误信息:

sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
sudo dhclient wlan0

查看日志

如果上述步骤无法解决问题,可以查看系统日志以获取更多调试信息:

dmesg | grep wlan0

这将显示与 wlan0 相关的日志信息,帮助你了解问题的根源。

使用 raspi-config 配置Wi-Fi(推荐方法)

如果你在使用Raspbian(基于Debian的系统),可以使用 raspi-config 工具来配置Wi-Fi:

sudo raspi-config

选择 Network Options -> Wi-Fi,然后输入你的Wi-Fi网络名称和密码。

检查硬件问题

如果以上方法都无法解决问题,可以尝试以下步骤:

  1. 确保Wi-Fi模块没有硬件问题。
  2. 尝试连接其他Wi-Fi网络,排除是网络本身的问题。
  3. 更新系统和所有软件包:
sudo apt update
sudo apt upgrade

通过上述步骤,你应该能够排查并解决树莓派无法连接Wi-Fi的问题。如果仍然无法解决,可能需要进一步检查硬件或重新安装操作系统。

7.安装pip3

sudo apt-get install python3-pip

8.安装uiautomator2

安装lxml

sudo apt-get install python3-lxml

其他正常装就行

9.免开机密码登录

sudo vim /etc/systemd/system/getty.target.wants/getty\@tty1.service

1、普通用户实现开机免密码登陆
修改如下文件

#ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear %I $TERM
ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM

root用户免密码登录

root用户实现开机免密码登陆
实际上是和上面的操作一样的,将上面的那一行改为root即可。这个需要根据自己的实际需求来更改。

#ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear %I $TERM
ExecStart=-/sbin/agetty --autologin root --noclear %I $TERM

 

sudo passwd pi               #修改 pi 密码  

10.安装opencv

sudo apt install python3-opencv

 

11.mysql

 11.1安装mariadb

sudo apt-get install mariadb-server
sudo mysql -u root

修改密码

use mysql;

 

set password for 'root'@'localhost' = password('123456');
flush privileges;

 

quit; 

11.2 从mysql8导入数据库

参考Termux

11.3 开启远程访问

允许远程访问

#树莓派需要修改配置文件,进入mysql配置文件夹

cd /etc/mysql

#以mariadb10.0为例,该版本数据库配置问文件为
#/etc/mysql/mariadb.conf.d/50-erver.cnf 

sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf
#【注】注释掉:127.0.0.1,如下,不注释其他机器无法访问!!!
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address            = 127.0.0.1
#也可以把port取消注释,默认为3306

重启mysql

sudo service mysql restart
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

#刷新特权表

#给root授予在任意主机(%)访问任意数据库的所有权限

flush privileges;


#如果需要指定访问主机,可以把%替换为主机的IP或者主机名。另外,这种方法会在数据库mysql的表user中,增加一条记录。如果不想增加记录,只是想把某个已存在的用户(例如root)修改成允许远程主机访问,则可以使用如下SQL来完成:

update user set host='%' where user='root' and host='localhost';


 

12.matplotlib与numpy不兼容报错

RuntimeError: module compiled against API version 0xe but this version of numpy is 0xd
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/pi/.local/lib/python3.7/site-packages/matplotlib/__init__.py", line 107, in <module>
    from . import _api, cbook, docstring, rcsetup
  File "/home/pi/.local/lib/python3.7/site-packages/matplotlib/rcsetup.py", line 26, in <module>
    from matplotlib.colors import Colormap, is_color_like
  File "/home/pi/.local/lib/python3.7/site-packages/matplotlib/colors.py", line 82, in <module>
    from matplotlib import _api, cbook, scale
  File "/home/pi/.local/lib/python3.7/site-packages/matplotlib/scale.py", line 18, in <module>
    from matplotlib.ticker import (
  File "/home/pi/.local/lib/python3.7/site-packages/matplotlib/ticker.py", line 179, in <module>
    from matplotlib import transforms as mtransforms
  File "/home/pi/.local/lib/python3.7/site-packages/matplotlib/transforms.py", line 46, in <module>
    from matplotlib._path import (
ImportError: numpy.core.multiarray failed to import
 

pip3 list

 Package         Version  
--------------- ---------
adbutils        0.11.0   
apkutils2       1.0.0    
asn1crypto      0.24.0   
bcrypt          3.2.0    
beautifulsoup4  4.7.1    
cached-property 1.5.2    
certifi         2018.8.24
cffi            1.14.6   
chardet         3.0.4    
cigam           0.0.3    
colorzero       1.1      
cryptography    2.6.1    
cycler          0.10.0   
decorator       5.0.9    
Deprecated      1.2.12   
deprecation     2.1.0    
entrypoints     0.3      
gpiozero        1.5.1    
html5lib        1.0.1    
idna            2.6      
keyring         17.1.1   
keyrings.alt    3.1.1    
kiwisolver      1.3.1    
logzero         1.7.0    
lxml            4.6.3    
matplotlib      3.4.2    
numpy           1.16.2   
packaging       20.9     
paramiko        2.7.2    
Pillow          8.3.1    
pip             18.1     
progress        1.5      
py              1.10.0   
pycparser       2.20     
pycrypto        2.6.1    
pyelftools      0.27     
PyGObject       3.30.4   
PyMySQL         1.0.2    
PyNaCl          1.4.0    
pyparsing       2.4.7    
pytesseract     0.3.8    
python-apt      1.8.4.3  
python-dateutil 2.8.2    
pyxdg           0.25     
requests        2.21.0   
retry           0.9.2    
RPi.GPIO        0.7.0    
SecretStorage   2.3.1    
setuptools      19.6     
six             1.12.0   
soupsieve       1.8      
spidev          3.4      
ssh-import-id   5.7      
uiautomator2    2.16.3   
urllib3         1.24.1   
webencodings    0.5.1    
wheel           0.32.3   
whichcraft      0.6.1    
wordcloud       1.8.1    
wrapt           1.12.1   
xmltodict       0.12.0  

已知安装

numpy           1.16.2 

matplotlib      3.4.2

由于opencv使用,numpy不能升级,所以降级matplotlib,安装3.0.3就不会报错了

pip3 uninstall matplotlib
pip3 install matplotlib==3.0.3

13.摄像头

配置摄像头

sudo raspi-config

Interfacing Options 

Camera(设置eable)

最后重启树莓派

拍照和摄像

1.CSI摄像头

raspistill -o image.jpg
raspivid -o video.h264 -t 10000# -t 10000表示录制10秒

2.usb摄像头

sudo apt-get install fswebcam

拍照

sudo fswebcam image.jpg

帮助

fswebcam -h

14.开启VNC

注意:桌面版才可以,lite版要安装图形界面

sudo raspi-config

依次操作:Interfacing Options -> VNC -> Yes。之后系统会提示你是否要安装 VNC 服务,输入 y 之后回车,等待系统自动下载安装完成,一切顺利的话 VNC 服务就启动了!

安装 VNC 客户端

下面去 RealVNC 官网下载 RealVNC Viewer,它是 RealVNC 的客户端,跨平台。下载你需要的平台的客户端版本即可。

https://www.realvnc.com/en/connect/download/viewer/