raspberry pi
去年,在Pi Day前后,我在Opensource.com上写了一篇文章,介绍如何使用Raspberry Pi设置音乐灯光秀 。 在创建灯光秀之前,我鼓励读者学习面包板和CanaKit,作为使用Raspberry Pi和LED进行原型控制的一种方法。
![连接到面包板的LED](https://opensource.com/sites/default/files/breadboard_0.jpg)
我将是第一个承认该套件随附的所有电线,电阻器和LED的插入可能会有些吓人,并且如果安装不当可能会对您的硬件造成危害。
为了简化您对Raspberry Pi,LED的了解,并编写控制它们的代码,我决定编写一个称为Pi Traffic Light的小控件。 它具有您开始使用Pi控制LED所需的一切。
![Pi交通灯](https://opensource.com/sites/default/files/led_0.jpg)
Pi红绿灯的特写镜头。
使用Pi红绿灯,您所需要做的就是将小型设备直接插入Raspberry Pi的GPIO引脚中。 您无需担心在面包板上正确连接电线,为LED找到合适的电阻器或弄清楚哪条电线进入面包板的负极或正极。
默认情况下,Pi交通灯被标记为插入GPIO引脚10、9、11和接地(GND),它们在Pi上彼此相邻设置。 在更高版本的Raspberry Pi中,这些引脚位于GPIO区域的中间,并且计数起来有些棘手(特别是在视力或照明不佳的情况下)。 我更喜欢将我的Pi Traffic Light设备插入GPIO引脚13、19、26和GND,因为它们很容易在板上发现。
![Pi红绿灯插入Raspberry Pi中](https://opensource.com/sites/default/files/ledwithpi_0.jpg)
插入电源后,启动Raspberry Pi并编写一些代码来控制LED。 对于本文,我写了一些示例。 在第一个示例中,我使用Python使用psutil库读取Raspberry Pi的CPU利用率级别,并使用RPi.GPIO库控制红,黄,绿灯。
如果CPU负载低于50%,则显示绿色。 如果CPU负载在50%到90%之间,请显示黄色。 如果CPU负载超过90%,则为红色。 还有一个异常处理程序,因此当有人按Ctrl + C退出程序时,所有指示灯都将关闭。 出于所有目的和目的,该代码使Pi Traffic Light成为Raspberry Pi的CPU利用率仪表板。
#!/usr/bin/env python
# to use with Pi Traffic Light
import RPi.
GPIO
as GPIO
import psutil
GREEN
=
26
YELLOW
=
13
RED
=
19
# Pin Setup:
GPIO.
setmode
( GPIO.
BCM
)
# Broadcom pin-numbering scheme.
GPIO.
setwarnings
(
False
)
GPIO.
setup
( GREEN
, GPIO.
OUT
)
GPIO.
setup
( YELLOW
, GPIO.
OUT
)
GPIO.
setup
( RED
, GPIO.
OUT
)
try :
while
(
1
) :
cpu_pc
= psutil.
cpu_percent
( interval
=
2
)
print
'CPU: %d%' %
( cpu_pc
)
if cpu_pc
<=
50 :
GPIO.
output
( RED
,
False
)
GPIO.
output
( YELLOW
,
False
)
GPIO.
output
( GREEN
,
True
)
if
50
< cpu_pc
<
90 :
GPIO.
output
( GREEN
,
False
)
GPIO.
output
( RED
,
False
)
GPIO.
output
( YELLOW
,
True
)
if cpu_pc
>=
90 :
GPIO.
output
( GREEN
,
False
)
GPIO.
output
( YELLOW
,
False
)
GPIO.
output
( RED
,
True
)
except
KeyboardInterrupt :
print
"Good bye"
GPIO.
output
( GREEN
,
False
)
GPIO.
output
( YELLOW
,
False
)
GPIO.
output
( RED
,
False
)
第二个示例要简单得多,但从某种意义上讲,会更有趣,因为我使用了Scratch来控制LED。 Scratch是一种免费的可视化编程语言,可让程序员创建交互式游戏,故事和动画。 它最初是由麻省理工学院开发的,在世界各地取得了巨大的成功,作为一种向孩子们介绍编程概念的方法。
![临时代码屏幕截图](https://opensource.com/sites/default/files/scratchscreenshot.png)
要使Scratch与Raspberry Pi的GPIO引脚进行交互,要做的第一件事是打开程序,转到“ 编辑” ,然后选择“ 启动GPIO服务器” 。 然后,您可以使用广播模块来确定要使用的GPIO引脚。 在上面的屏幕截图中,这两个广播块是config19out和gpio19on 。 你猜怎么着? GPIO 19映射到红色LED。
有关如何使用Scratch与GPIO引脚进行交互的更多信息,请参见Raspberry Pi Foundation资源 。
![完整设置](https://opensource.com/sites/default/files/fullsetup.jpg)
最后,如果您对电子设备感到恐惧,我希望对Pi Traffic Light的快速介绍将有助于您对Raspberry Pi所提供的功能更加好奇和感兴趣。 而且,如果您或您认识的人正在尝试学习编码,我希望使用Scratch可以控制LED并使事情变得有趣。
翻译自: https://opensource.com/life/16/3/simple-led-control-raspberry-pi
raspberry pi