MMA7455L (PDF) 三轴加速度传感器,可以使用 I2C 或者 SPI 总线连接。两者 Cubieboard 均有提供,虽然不懂有多大区别但是 SPI 要四根线好麻烦所以就用 I2C 了..(
与 Cubieboard 的连接参照 Wiki,PB18 (TWI1-SCK)、PB19 (TWI1-SDA) 两根接在模块的 SCL、SDI 口上,接好电源(3.3V)和地线,模块的 CS 也接在电源上(以使能 I2C)。官网 ubuntu 镜像默认启用 I2C-1,若未启用则需修改 Fex 文件:twi1_used = 1
可以使用 i2c-tools 确认连接正确。装好后输入i2cdetect -y 1
,如果出现1d
(MMA7455L 的地址),说明连接无误可以通讯。
在 Cubieboard 上使用 Python 读取加速度数值,代码在这:MMA7455L.py,目前实现功能有:
- 读取 8 或 10 位的 X, Y, Z 轴加速度数值(-127 ~ 128 / -511 ~ 512);
- 切换 ±2g, ±4g 和 ±8g(
set_range()
); - 自动校准(
set_offset()
clear_offset()
)。