Sense HAT
安装
为了正常工作,Sense HAT需要使用最新的内核,启用 I2C 和一些库才能开始。
1.确保您的 APT 软件包列表是最新的:
``
sudo apt update
```
1.接下来,安装 Sense -hat软件包,以确保内核是最新的,启用 I2C ,并安装必要的库和程序:
``
sudo apt安装 Sense -hat
```
1.最后,如果在安装之前禁用了 I2C 或内核不是最新的,则可能需要重新启动:
``
sudo 重启
```
硬件
原理图可以在here中找到。
软件概述
安装后,示例代码可在/usr/src/sense-hat/examples下找到。
可以通过运行 cp /usr/src/sense-hat/examples〜/-a将它们复制到用户的主目录。
可以通过在适当的目录中运行make
来编译 C /C ++示例。
RTIMULibDrive11示例已预先编译,可帮助确保一切正常。可以通过运行 RTIMULibDrive11 来启动它,并通过按 Ctrl + c来关闭它。
Python感应帽
" sense-hat"是 Sense HAT的官方支持库;它提供了对所有板载传感器和 LED 矩阵的访问。
完整的文档可以在pythonhosted.org/sense-hat中找到。
RTIMULib
RTIMULib是一个 C ++和 Python 库,可轻松在嵌入式 Linux 系统中使用 9 -dof和 10 -dof IMU。在/etc/RTIMULib.ini中提供了一个预先校准的设置文件,该文件也被sense-hat
复制和使用。包含的示例在当前工作目录中查找" RTIMULib.ini",因此您可能希望将文件复制到那里以获得更准确的数据。
其他
LED矩阵
LED矩阵是 ID 为" RPi-Sense FB"的 RGB565 framebuffer。适当的设备节点可以作为标准文件写入或映射。包含的" snake"示例显示了如何访问帧缓冲区。
游戏杆
操纵杆作为名为" 树莓派 Sense HAT操纵杆"的输入事件设备出现,映射到箭头键和" Enter"。任何能够处理输入的库都应支持它,或者直接通过evdev接口支持它。合适的库包括 SDL ,pygame和python-evdev。包含的"蛇"示例显示了如何直接访问操纵杆。
校准
摘自此论坛帖子。
安装必要的软件并运行校准程序,如下所示:
sudo apt update
sudo apt安装八度-y
光盘
cp/usr/share/librtimulib-utils/RTEllipsoidFit ./-a
cd RTEllipsoidFit
RTIMULibCal
然后,您将看到以下菜单:
选项有:
m-最小/最大校准磁力计
e-椭球校准磁力计(先进行最小/最大)
a-校准加速度计
x-退出
输入选项:
按小写的" m"。然后将显示以下消息;按任意键开始。
`` 磁力计最小/最大校准 -------------------------------- 左右摇动 IMU 芯片,确保所有六个轴 (+ x,-x,+ y,-y和+ z,-z)经历极值。 完成所有极端操作后,输入" s"进行保存,输入" r"进行重置 或" x"中止并丢弃数据。
按任意键开始...
``
启动后,您会看到类似于以下内容的滚动屏幕:
最小 x :51.60分钟 y :69.39分钟 z :65.91
最大值 x :53.15最大值 y :70.97最大值 z :67.97
关注屏幕最底部的两行,因为这是该程序最近发布的度量。 现在,您必须以各种可能的方式来移动 Astro Pi。如果拔下所有非必需的电缆以避免混乱,这将很有帮助。
尝试在俯仰,横摇和偏航轴的每个轴上获得一个完整的圆。这样做时请注意不要意外弹出 SD 卡。花几分钟时间移动 Astro Pi,然后在发现数字不再变化时停止。
现在按小写字母" s",然后按小写字母" x",退出程序。如果现在运行ls
命令,将会看到一个新的RTIMULib.ini
文件已创建。
除了这些步骤之外,您还可以通过执行上述步骤来进行椭圆拟合,但是按" e"而不是" m"。
完成后,将生成的RTIMULib.ini
复制到/etc /,并在〜/.config/sense_hat /
中删除本地副本:
rm〜/.config/sense_hat/RTIMULib.ini
sudo cp RTIMULib.ini/etc
现在完成。
更新 AVR 固件
...
EEPROM数据这些步骤可能不适用于树莓派 2 Model B Rev 1.0和树莓派 3 Model B主板。固件将控制 I2C0 ,从而将 ID 引脚配置为输入。
1.通过将以下行添加到/boot/config.txt
中来启用 I2C0 和 I2C1 :
```
dtparam = i2c_vc = on
dtparam = i2c_arm = on
```
1.输入以下命令以重新引导:
``
sudo systemctl重新启动
```
1.下载并构建 Flash 工具:
``
git clone https://github.com/raspberrypi/hats.git
cd帽子/eepromutils
使
```
读
1.可以使用以下命令读取 EEPROM 数据:
``
sudo ./eepflash.sh -f = sense_read.eep -t = 24c32 -r
```
写作
请注意,此操作具有潜在的危险,日常用户不需要此操作。提供以下步骤仅用于调试目的。如果发生错误,则可能不再自动检测到 HAT 。
1.下载 EEPROM 设置并构建.eep
二进制文件:
``
wget https://github.com/raspberrypi/rpi-sense/raw/master/eeprom/eeprom_settings.txt -O sense_eeprom.txt
./eepmake sense_eeprom.txt sense.eep /boot/overlays/rpi-sense-overlay.dtb
```
1.禁用写保护:
``
i2cset -y -f 1 0x46 0xf3 1
```
1.写入 EEPROM 数据:
``
sudo ./eepflash.sh -f = sense.eep -t = 24c32 -w
```
1.重新启用写保护:
``
i2cset -y -f 1 0x46 0xf3 0
```