树莓派Raspberry Pi 4

一、简介

硬件配置

GPIO引脚定义

img

在实际使用中,我们应该熟悉树莓派接口的两种命名方案:

  • WiringPi 编号:功接线的引脚号(如TXD、PWM0等等)
  • BCM编号:是 Broadcom 针脚号,也即是通常称的GPIO
  • 物理编号(Physical – Number):PCB板上针脚的物理位置对应的编号(1~40)

I2C接口

I2C是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的器件之间传送信息。树莓派通过I2C接口可控制多个传感器和组件。它们的通信是通过SDA(数据引脚)和SCL(时钟速度引脚)来完成的。每个从设备都有一个唯一的地址,允许与许多设备间快速通信。ID_EEPROM引脚也是I2C协议,它用于与HATs通信。

SPI接口

SPI是串行外设接口,用于控制具有主从关系的组件,采用从进主出和主进从出的方式工作,树莓派上SPI由SCLK、MOSI、MISO接口组成,SCLK用于控制数据速度,MOSI将数据从树莓派发送到所连接的设备,而MISO则相反。

UART接口

有使用Arduino的朋友一定听说过UART或Serial,通用异步收/发器接口用于将Arduino连接到为其编程的计算机上,也用于其他设备与 RX 和 TX 引脚之间的通信。如果树莓派在 raspi-config 中启用了串口终端,则可以使用这些引脚通过电脑来控制树莓派,也可以直接用于控制Arduino。

PWM接口

在树莓派上,所有的引脚都可以实现软件PWM,而GPIO12、GPIO13、GPIO18、GPIO19可以实现硬件脉宽调制。

各型号配置对比

部分电子元件电路图:https://www.dazhuanlan.com/2019/12/26/5e043f4a96380/

二、基础配置

1、安装系统

树莓派官方出了一个快速在树莓派上安装OS的软件NOOBS( New Out Of Box Software),只需要将该软件刻录到SD卡上并在树莓派上启动,可在线或离线安装以下OS到您的树莓派上。

NOOBS下载地址https://www.raspberrypi.org/downloads/noobs/

NOOBS刻录操作文档https://www.raspberrypi.org/documentation/installation/noobs.md

NOOBS分为两个版本:全功能版和轻量版Lite。全功能班可在线可离线安装OS。Lite只能在线安装OS

2、连接操作

3、基础配置

①连接隐藏wifi

  • 编辑/etc/wpa_supplicant/wpa_supplicant.conf

    network={ 
      ssid=”wifi_name” 
      scan_ssid=1 
      psk=”wifi_password” 
    }
    # network:是一个连接WiFi网络的配置,可以有多个,wpa_supplicant会按照priority指定的优先级(数字越大越先连接)来连接,当然,在这个列表里面隐藏WiFi不受priority的影响,隐藏WiFi总是在可见WiFi不能连接时才开始连接。
    # ssid:网络的ssid
    # psk:密码
    # priority:连接优先级,越大越优先
    # scan_ssid:连接隐藏WiFi时需要指定该值为1
    

②CLI下配置Respbian

sudo raspi-config

③设置chromium浏览器代理

sudo echo -e 'export http_proxy="http://代理服务器地址:端口"\nexport https_proxy="https://代理服务器地址:端口"\nexport no_proxy="*.taobao.com,192.168.1.0/16"' >> /etc/environment

然后重启,打开chromium浏览器,安装Proxy SwitchyOmega插件。在Proxy SwitchyOmega插件中配置代理服务器。然后删除/etc/environment中新增的代理配置,重启。

④设置apt镜像源为阿里云镜像源

raspbian

mv /etc/apt/sources.list /etc/apt/sources.list.bak
echo -e "deb https://mirrors.aliyun.com/raspbian/raspbian/ buster main non-free contrib\ndeb-src https://mirrors.aliyun.com/raspbian/raspbian/ buster main non-free contrib" > /etc/apt/sources.list
apt update

Ubuntu 20.04

mv /etc/apt/sources.list /etc/apt/sources.list.bak
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal main restricted" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal-updates main restricted"  >>  /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal universe" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal-updates universe" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal multiverse" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal-updates multiverse" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal-backports main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal-security main restricted" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal-security universe" >> /etc/apt/sources.list
echo "deb https://mirrors.aliyun.com/ubuntu-ports focal-security multiverse" >> /etc/apt/sources.list
apt update

4、播放音频

apt install mpg123
mpg123 音频文件
mpg123 音频文件 </dev/null &
# 或者
apt-get install sox libsox-fmt-all
play 音频文件

# 或者
apt-get install cmus
cmus

5、调节音频输出音量大小

apt install alsa-utils
alsamixer # 指令会出现一个调节音量的界面。调节完成后按“ESC”退出
amixer set PCM 116%

6、vcgencmd命令查看硬件状态

①查看时钟频率

vcgencmd measure_clock [arm|core|h264|isp|v3d|uart|pwm|emmc|pixel|vec|hdmi|dpi]

②查看硬件电压

vcgencmd measure_volts [core|sdram_c|sdram_p]

③查看 BCM2835 Soc 温度

vcgencmd measure_temp

④查看解码器是否开启

vcgencmd codec_enabled [H264|MPG2|WVC1|MPG4|WMV9]

7、配置网络

Ubuntu

设置开机启动网卡

/etc/netplan/50-cloud-init.yaml

network:
    version: 2
    renderer: NetworkManager
    ethernets:
     eth0:
       dhcp4: true
       optional: true
    wifis:
       renderer: networkd
       wlan0:
         access-points:
           "WIFI SSID 名称":
              password: "WIFI 密码"
         dhcp4: true
         optional: true

上述文件中的WIFI密码可用wpa_passphrase命令进行加密: wpa_passphrase "WIFI SSID 名称" "WIFI 密码" 。输出的 PSK 值既可填入上述文件 password 字段。运行 netplan apply 以使更改生效。

手动启动网卡

ifconfig wlan0 down 
ifconfig wlan0 up

三、安装特殊软件

1、安装 Docker

参考:linux-小技巧:第 26 章节安装 Docker

2、安装RStudio Server

apt-get install -y git r-recommended python-dev
cd /home/pi/Downloads/
git clone https://github.com/rstudio/rstudio.git
cd /home/pi/Downloads/rstudio/dependencies/common/
./install-common
cd /home/pi/Downloads/rstudio/dependencies/linux/
./install-dependencies-debian

#saw java 6 was not installed. installed v7
apt-get install -y openjdk-7-jdk

#tried to make install, got an error about dictionaries not installed and rerun install-dependencies
cd /home/pi/Downloads/rstudio/dependencies/common/
./install-common

#tried to make install, hangs at "ext:" so I tried manually installing pandoc, which should have been installed earlier, but apparently was not
apt-get install -y pandoc

#tried to make install, hangs at "ext:" so I tried installing the latest GWT compiler
cd /home/pi/Downloads
wget http://dl.google.com/closure-compiler/compiler-latest.zip
unzip compiler-latest.zip
rm COPYING README.md compiler-latest.zip
mv closure-compiler-v20170218.jar /home/pi/Downloads/rstudio/src/gwt/tools/compiler/compiler.jar

#build and install works!
cd /home/pi/Downloads/rstudio/
#remove build if exists
rm -r ./build
mkdir build
cd build
cmake .. -DRSTUDIO_TARGET=Server -DCMAKE_BUILD_TYPE=Release
make install
Copyright Curiouser all right reserved,powered by Gitbook该文件最后修改时间: 2023-11-02 14:32:53

results matching ""

    No results matching ""