传感器的使用
开发环境搭建
该教程适用于瑞莎大部分 SBC 产品,此处使用 ROCK 4C+ 进行实际演示,其他 SBC 可参考此操作。
// 下载示例代码
rock@rock-4c-plus:~$ sudo apt-get install cmake build-essential git python3-dev -y
rock@rock-4c-plus:~$ git clone https://github.com/nascs/sample_code.git
rock@rock-4c-plus:~$ source sample_code/env.sh
// 安装 wiringX 库
rock@rock-4c-plus:~$ git clone https://github.com/wiringX/wiringX.git
rock@rock-4c-plus:~$ cd wiringX
rock@rock-4c-plus:~/wiringX/$ mkdir build
rock@rock-4c-plus:~/wiringX/$ cd build
rock@rock-4c-plus:~/wiringX/build$ cmake ..
rock@rock-4c-plus:~/wiringX/build$ make -j4
rock@rock-4c-plus:~/wiringX/build$ cpack -G DEB
rock@rock-4c-plus:~/wiringX/build$ sudo dpkg -i libwiringx*.deb
LCD 1602/2004
keyestudio 1602 I2C 模块是一个 16 个字符的 2 行 LCD 显示器,采用蓝色背景和白色背光。 keyestudio 2004 I2C 模块是一个 20 个字符 4 行液晶显示屏,蓝色背景,白色背光。下面是在 radxa 平台上的使用方法:
-
使用 rsetup 工具打开 i2c7
-
断电关机
-
将 LCD 按以下方式接线
LCD <--> Radxa ROCK 4
GND <--> GND
VCC <--> 5V
SDA <--> Pin 3
SCL <--> Pin 5
- 重启,并检查 i2c7 是否开启
radxa@rock-4c-plus:~$ ls /dev/i2c-*
/dev/i2c-0 /dev/i2c-7 /dev/i2c-9 # 开启后可检测到 /dev/i2c-7
- 通过以下命令检查 LCD 是否正常被识别
radxa@rock-4c-plus:~$ sudo i2cdetect -r -y 7
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- 27 -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
- 运行 LCD 测试程序
sudo python LCD1602.py
该程序会显示系统当前时间。
ADXL345
ADXL345 是一款小巧、轻薄、低功耗的三轴 MEMS 加速计,具有高分辨率(13 位)测量功能,最大 +-16 g。数字输出数据格式为 16 位二进制,可通过 SPI(3 线制或 4 线制)或 I2C 数字接口访问。ADXL345 非常适合测量倾斜感应应用中的静态重力加速度,以及运动或冲击产生的动态加速度。其高分辨率(4 mg/LSB)可测量小于 1.0 度的倾角变化。下面是在 radxa 平台上的使用方法:
-
使用 rsetup 工具打开 i2c7
-
断电关机
-
将 sensor 按以下方式接线
ADXL345 <--> Radxa ROCK 4
GND <--> GND
VCC <--> 5V
SDA <--> Pin 3
SCL <--> Pin 5
- 重启,并检查 i2c7 是否开启
radxa@rock-4c-plus:~$ ls /dev/i2c-*
/dev/i2c-0 /dev/i2c-7 /dev/i2c-9