1.套件简介
先从淘宝上主要购买了如下几个套件:
❶树莓派3代B型E14 ❷彩虹40P排线 ❸GPIO扩展板 ❹面包板 ❺电阻若干 ❻跳线若干
❼HDMI TO DVI 24+1公转公头电脑显示器视频转接线 ❽HDMI转HDMI 视频转接线(根据显示器情况可选一种) ⑨LED二极管些许,如上图连线。
2.系统安装
系统安装选择基于Debian的官网的Raspbian版本。
RASPBIAN STRETCH WITH DESKTOP
Image with desktop based on Debian Stretch
Version:November 2017
Release date:2017-11-29
Kernel version:4.9
链接: pan.baidu.com/s/1c275kTM 密码: a9rr
RASPBIAN STRETCH LITE
Minimal image based on Debian Stretch
Version:November 2017
Release date:2017-11-29
Kernel version:4.9
链接: pan.baidu.com/s/1gfD4Old 密码: bxwj
这里选择基于DeskTop的。
Win32DiskImager工具
链接: pan.baidu.com/s/1bpg3ben 密码: hhmv
按下图连接好
开机看到如下启动画面
3.常用命令
windows下的终端连接工具
安装cygwin
cygwin.com/install.htm… cygwin.com/setup-x86_6…
查看系统是64位还是32位:
getconf LONG_BIT or getconf WORD_BIT
[root@localhost ~]# getconf LONG_BIT
32
树莓派的默认账号是pi,默认密码是 raspberry
查看系统用户相关cat /etc/passwd | grep pi
cat /etc/passwd
查看组相关信息
cat /etc/group | grep gpio
cat /etc/group
树莓派开启 ssh
sudo raspi-config
选择 Interfacing options项中的ssh,打开后重启即可。
登录
ssh pi@192.168.1.103
密码: raspberry
安装nodejs
sudo apt install nodejs
安装完成后查看版本
$ node -v
v8.9.3
4.点亮LED
树莓派提供了一组对外的 IO 接口,称为 GPIO( 通用 IO 接口,General-purpose input/output)。
它的 40 个脚的定义如下图
注意,左上角的第1针(3.3V)是一个方块,其他针脚都是圆的。将树莓派翻过来,背后可以看到 GPIO 有一个角是方的,通过这种方法就可以确认哪一个针眼是3.3V。
通过 GPIO ,树莓派可以与其他电子元件连接。
这里需要用到面包板。本质上,面包板就是几根导线,上面开了许多可以连到导线的孔。
+极和-极是两根垂直的导线,标着1、5、10这些数字的行,每一行都是一根水平的导线。导线与导线之间互不连接,另外,面包板的左右两半也是互不连接的。
然后把买回来的 GPIO扩展板 和 彩虹40P排线 加 面包板连接起来,如下:
注意:
排线连接树莓派时,有凸起的一端 朝向树莓派
点亮效果图如下:
常用计算方法如下:
蓝 绿色:
直径:3mm
电压范围:2.1-2.6V
电流范围:5mA——17.5mA
提醒,绿色二极管发出的颜色就是那种黄绿色,淡黄绿
R=(E-UF)/IF
R=(3.3-2.2)/0.01 = 110Ω
黄色:
直径:3mm
参考电压:1.8——2V
参考电流:5mA——20mA 取 0.01A
正向压降:约为2.2V
R=(E-UF)/IF
R=(3.3-1.1)/0.01 = 220Ω
红色
直径:3mm
电压范围:1.8-2.2V
电流范围:5mA——18mA
R=(E-UF)/IF
R=(3.3-2.2)/0.01 = 110Ω
白色透明色:
直径:3mm
电压范围:3.1-3.3V
电流范围:5mA——19mA
R=(E-UF)/IF
R=(3.3-2.2)/0.01 = 110Ω
限流电阻R可用下式计算:
R=(E-UF)/IF
式中E为电源电压,UF为LED的正向压降,IF为LED的正常工作电流。
发光二极管的压降是比较固定的,通常红色为1.6V左右,绿色有2V和3V两种,黄色和橙色约为2.2V,蓝色为3.2V左右。对于常用的几毫米大小的二极管,其工作电流一般在2毫安至20毫安之间,电流越大亮度越高,用电源电压减去二极管的压降,再除以设定的工作电流,就得出限流电阻的阻值
5.LED控制脚本
下面,我们使用 Node 脚本控制 LED。
首先,将正极的导线从1号针脚(3.3V)拔出,插到第6排的11号针脚(上图的 GPIO 17)。这个针脚的电流是脚本可以控制的。
然后,在树莓派上新建一个实验目录,并安装控制 GPIO 的 Node 模块rpio。
$ mkdir led-demo && cd led-demo
$ npm init -y
$ npm install -S rpio
接着,新建一个脚本led-on.js。
// led-on.js
var rpio = require('rpio');
// 打开 11 号针脚(GPIO17) 作为输出
rpio.open(11, rpio.OUTPUT);
// 指定 11 号针脚输出电流(HIGH)
rpio.write(11, rpio.HIGH);
运行这个脚本,应该就会看到 LED 灯泡变亮了。
node led-off.js
有了这两个脚本,让 LED 闪烁就轻而易举了。新建一个led-blink.js脚本。
// led-blink.js
var rpio = require('rpio');
rpio.open(11, rpio.OUTPUT);
function blink() {
rpio.write(11, rpio.HIGH);
setTimeout(function ledoff() {
rpio.write(11, rpio.LOW);
}, 50);
}
setInterval(blink, 100);
上面的脚本让 LED 每秒闪烁10次。
$ node led-blink.js