现在终于到了动手实验课了,别害怕,应用初中物理知识即可轻松搞定。看似简单的实验,却蕴含着大大的道理。任何看似复杂的事务,都是由最基本的原理所构成。学会点亮发光二极管,离制作智能机器人就不遥远了。以下以树莓派4B,Ubuntu Server 20.04.2 LTS版本为例。

实验器材

树莓派第一堂动手实验课,点亮发光二极管

实验器材

名称

数量

树莓派

1

发光二极管

1

1kΩ电阻

1

面包板

1

杜邦线(公母)

2

安装golang 1.16

下载,一定要选arm版本的安装包

wget https://golang.org/dl/go1.16.linux-arm64.tar.gz

解压

sudo tar -xvf go1.16.linux-arm64.tar.gz

移动至/usr/local目录

sudo mv go /usr/local

设置go环境变量

export GOROOT=/usr/local/goexport PATH=$PATH:$GOROOT/bin

输入`go version`命令显示`go version go1.16 linux/arm64`表示已经成功安装了Golang 1.16。

实验电路

下面我们将使用33和39号引脚,39号引脚为Ground,表示接地,用代码控制33号引脚输出高低电压,所以33号引脚和39号引脚就相当于电源。GPIO引脚的输出电压约为3.3V,基本1mA以上的电流即可点亮发光二极管,切不可直接将二极管串联进电路,我们需要串联一个电阻。R = V / A,1000欧姆的电阻,可将电流限制在3.3mA左右。

电路图:

树莓派第一堂动手实验课,点亮发光二极管

电路图

按照电路图连接电路:

树莓派第一堂动手实验课,点亮发光二极管

实验链接

33号、39号引脚的位置如下图:

树莓派第一堂动手实验课,点亮发光二极管

引脚标识

编写代码

package mainimport (    "time"    "periph.io/x/conn/v3/gpio"    "periph.io/x/host/v3"    "periph.io/x/host/v3/rpi")func main() {    host.Init()    t := time.NewTicker(1000 * time.Millisecond)    for l := gpio.Low; ; l = !l {        rpi.P1_33.Out(l) <-t.C    }}

这段代码的意思是,每隔1秒切换33号引脚的高低电压。

编译执行

运行后成功点亮LED。至此,我们已经可以控制硬件了,这是你控制硬件的一小步,却是你在树莓派世界迈出的一大步,要知道,各种机器人、智能小车,都是通过GPIO控制的呀。