因为感觉各种感应器的 GPIO 有点乱,干脆买了一个官方提供的集成板来玩,这样看着也整体一些…

英文不错的同学出门右转:

官方提供的一个说明 一个 sense-hat 的接口文档 各感应模块的针脚示意图

更新系统(Rasbian)

1
$ sudo apt update && sudo apt upgrade -y

可能得等一大会儿….

安装扩展模块

1
2
$ sudo apt-get install sense-hat
$ sudo reboot

运行一个 demo,

官方提供的一些 demo

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/bin/python
import time
from sense_hat import SenseHat

sense = SenseHat()

r = 255
g = 0
b = 0

msleep = lambda x: time.sleep(x / 1000.0)


def next_colour():
    global r
    global g
    global b

    if (r == 255 and g < 255 and b == 0):
        g += 1

    if (g == 255 and r > 0 and b == 0):
        r -= 1

    if (g == 255 and b < 255 and r == 0):
        b += 1

    if (b == 255 and g > 0 and r == 0):
        g -= 1

    if (b == 255 and r < 255 and g == 0):
        r += 1

    if (r == 255 and b > 0 and g == 0):
        b -= 1

while True:
    sense.clear([r, g, b])
    msleep(2)
    next_colour()

如果运行是出现下列报错的话:

1
2
3
4
5
6
7
Traceback (most recent call last):
  File "demo1.py", line 38, in <module>
    sense.clear([r, g, b])
  File "/usr/lib/python2.7/dist-packages/sense_hat/sense_hat.py", line 413, in clear
    self.set_pixels([colour] * 64)
  File "/usr/lib/python2.7/dist-packages/sense_hat/sense_hat.py", line 294, in set_pixels
    f.seek(map[index // 8][index % 8] * 2)  # row, column

还是比较好解决的,更改配置就行

1
2
3
4
5
$ sudo vi /boot/config.txt
//找到 dtoverlay 这一行修改成
dtoverlay=rpi-sense
//然后 wq 退出
$ sudo reboot

这是我第一次安装时碰到的问题

解决方案来源