树莓派python⼊门_树莓派新⼿⼊门教程
树莓派(Raspberry Pi)是学习计算机知识、架设服务器的好⼯具,价格低廉,可玩性⾼。
本⽂根据我的亲⾝经验,介绍如何从零开始,搭建⼀个树莓派服务器,控制 LED 灯。你会看到,树莓派玩起来实在很容易。
我要感谢 100offer 对我提供赞助。100offer 是国内第⼀流的⼈⼒资源服务⽹站,本⽂结尾有他们的简介,最近想换⼯作的朋友可以看⼀下。
⼀、型号
树莓派是⼀个迷你电脑,集成在⼀块电路板。⽬前,最新的型号有两个。
(1)Raspberry Pi 3代 B 型
(2)Raspberry Pi zero (含 zero w)
虽然后者便宜,但是少了许多接⼝(⽐如只有⼀个 USB ⼝),CPU 和内存都⽐较低,配件也少,因此推荐购买第3代的 B 型。以下都针对这个型号,但⼤部分内容对 zero 也适⽤。
⼆、配件
树莓派本⾝只是⼀个主机。要运⾏起来,必须有配件。
(1)电源
Micro USB 接⼝的⼿机充电器,就可以充当电源,但输出必须是 5V 电压、⾄少 2A 电流。充电宝当电源也没问题。
(2)Micro SD 卡
树莓派不带硬盘,Micro SD 卡就是硬盘。最⼩容量8G,推荐使⽤16G和32G的卡。
(3)显⽰器
树莓派有 HDMI 输出,显⽰器必须有该接⼝。如果有 HDMI 转 VGA 的转接线,那么 VGA 显⽰器也可以。我⽤的是⼀个 7 ⼨的液晶监视器。
不过,显⽰器只在安装系统时需要,后⾯可以 SSH 登录,就不需要了。
(4)⽆线键⿏
树莓派内置蓝⽛,USB 或蓝⽛的⽆线键⿏都可以⽤。
就像显⽰器⼀样,如果树莓派已经装好系统,⽽且只当作服务器,⽆线键⿏也可以不配。
三、电⼦元件
除了配件,下⾯的实验还需要⼀些电⼦元件。
(1)⾯包板(⼀块)
(2)连接线(若⼲)
注意,连接线必须⼀端是公头,⼀端是母头。
另外,最好也备⼀些两端都是公头的连接线。
(3)LED ⼆极管(若⼲)
(4)270欧姆的电阻(若⼲)
四、安装系统
如果商家已经装好系统,可以跳过这⼀步,否则需要⾃⼰安装操作系统。
官⽅提供的操作系统是 Raspbian,这是 Debian 系统的定制版。
官⽅还提供⼀个安装器 NOOBS,建议通过它来安装 Raspbian,相对简单⼀点。
格式化 Micro SD 卡为 FAT 格式(操作指导)。
解压NOOBS.zip到 Micro SD 卡根⽬录。
插⼊ Micro SD 卡到树莓派底部的卡槽,接通电源,启动系统。
正常情况下,按照屏幕上的提⽰,⼀路回车,就能装好系统。
五、SSH 登录
abc123的ascii码表示安装系统后,树莓派就可以上⽹了(Wifi 或者⽹线)。这时,你要看⼀下它的局域⽹ IP 地址,可以使⽤下⾯的命令。
$ sudo ifconfig
然后,更改系统设置,打开 SSH 登录(默认是禁⽌的)。
接着,从另⼀台电脑 SSH 登录树莓派。下⾯的命令是在局域⽹的另⼀台电脑上执⾏的。
$ ssh pi@192.168.1.5
上⾯代码中,192.168.1.5是我的树莓派的地址,你要换成你的地址。树莓派的默认⽤户是pi。
树莓派会提⽰你输⼊密码。pi的默认密码是raspberry。正常情况下,这样就可以登录树莓派了。接着,就可以进⾏各种服务器操作了,⽐如修改密码。
$ passwd
后⾯的实验需要将⽤户加⼊gpio⽤户组。
sqlrowcount$ sudo adduser pi gpio
上⾯的代码表⽰将⽤户pi加⼊gpio⽤户组。
六、安装 Node
为了运⾏ Node 脚本,树莓派必须安装 Node,可以参考这篇⽂章。
$ sudo apt install nodejs早期类风湿能彻底治愈吗>ascii怎么理解
正常情况下,Node 8.x 版就已经安装成功了。
$ node -v
v8.1.0
七、点亮 LED
树莓派提供了⼀组对外的 IO 接⼝,称为 GPIO( 通⽤ IO 接⼝,General-purpose input/output)。
它的 40 个脚的定义如下图。
注意,左上⾓的第1针(3.3V)是⼀个⽅块,其他针脚都是圆的。将树莓派翻过来,背后可以看到 GPIO 有⼀个⾓是⽅的,通过这种⽅法就可以确认哪⼀个针眼是3.3V。
通过 GPIO ,树莓派可以与其他电⼦元件连接。下⾯根据 Jonathan Perkin 的⽂章,使⽤树莓派连接 LED ⼆极管。
这⾥需要⽤到⾯包板。本质上,⾯包板就是⼏根导线,上⾯开了许多可以连到导线的孔。
+极和-极是两根垂直的导线,标着1、5、10这些数字的⾏,每⼀⾏都是⼀根⽔平的导线。导线与导线
之间互不连接,另外,⾯包板的左右两半也是互不连接的。
然后,按照下⾯的图,将树莓派、⾯包板、LED 灯、电阻连起来。
上图中,红⾊导线表⽰电流的正极,从 GPIO 的第1针(3.3V)连到⾯包板。⿊⾊导线表⽰电流的负极,从 GPIO 第三排的第6针(ground)连到⾯包板。它们连到⾯包板的哪个眼并不重要,但必须保证能组成⼀个完整的电路(上图的箭头流向)。注意,LED ⼆极管也有正负极,长脚表⽰正极,短脚表⽰负极。电阻没有正负极。
连接完成后,打开树莓派的电源,LED 应该就会亮起来了。
⼋、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-on.js
再新建⼀个led-off.js脚本,只要改⼀⾏(完整代码看这⾥)。
// led-off.js
//...
// 指定 11 号针脚停⽌输出电流(LOW)
rpio.write(11, rpio.LOW);
运⾏这个脚本,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
九、HTTP 服务器
通过控制 LED 可以做很多事,⽐如架设⼀个 HTTP 服务器,每当有⼈访问,LED 就闪烁⼀下。
⾸先,在刚才的⽬录⾥⾯装⼀个服务器模块。
$ npm install -S server
然后,新建⼀个脚本server.js(完整代码看这⾥)。
// server.js
var server = require('server');
var { get } = uter;
// ...
server({ port: 8080 }, [
js判断数组为空get('/' , ctx => {
console.log('a request ');
blink();
}),
]);
console.log('server starts on 8080 port');
运⾏这个脚本。
$ node server.js
然后,再打开⼀个命令⾏终端,访问8080端⼝,LED 就会闪⼀下。
好了,今天的教程就到这⾥。接下来,你可以⾃⼰探索,做更多的尝试,⽐如写⼀个测试⽤例脚本,只要测试失败 LED 就会长亮,或者组装⼀个8位的加法器。
python入门教程电子版
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论