今天我们学习合宙低功耗4G模组Air780EP的LuatOS开发tcs3472示例,文末【阅读原文】获取最新资料1
一、简介
tcs3472颜色传感器能够读取照射到的物体的RGB三种数值,从而识别颜色
-
关联文档和使用工具:
-
LuatOS 固件获取
-
tcs3472 颜色传感器接口说明
-
Luatools下载调试工具
二、材料准备
2.1 Air780EP开发板一套
2.2 tcs3472模块一个
三、程序介绍
3.1 API说明
tcs3472初始化
tcs3472.init(i2c_id)
参数
传入值类型 | 解释 |
number |
所在的i2c总线id |
返回值
返回值类型 |
解释 |
bool |
成功返回true |
3.2 获取RGB的数据
tcs3472.get_rgb()
参数
无
返回值
返回值类型 | 解释 |
table |
tcs3472 rgb数据 |
3.3 获取lux的数据
tcs3472.get_lux()
参数
传入值类型 | 解释 |
table |
rgb_data rgb数据 |
返回值
返回值类型 | 解释 |
number |
lux数据 |
常量
常量 | 类型 | 解释 |
i2c.FAST |
number |
高速 |
i2c.SLOW |
number |
低速 |
3.4 i2c初始化
i2c.setup(id, speed, pullup)
参数
传入值类型 | 解释 |
int |
设备id, 例如i2c1的id为1, i2c2的id为2 |
int |
I2C速度, 例如i2c.FAST |
bool |
是否软件上拉, 默认不开启,需要硬件支持 |
返回值
返回值类型 | 解释 |
int |
成功就返回1,否则返回0 |
四、实现示例
main.lua中程序实例
4.1 创建一个Task协程
sys.taskInit(function() end)
4.2 初始化i2c
-- 初始化i2c1,传入id号和速度 i2c.setup(i2cid,i2c_speed) -- id正确就一定成功 -- 如需判断i2c id是否合法, 请使用 i2c.exist 函数
4.3 初始化tcs3472
tcs3472.init(i2cid)--初始化,传入i2c_id
4.4 读取rgb和lux值并打印
五、效果展示
5.1下载固件和脚本
5.2 在Luatools工具中查看效果
标签:初始化,tcs3472,示例,低功耗,rgb,返回值,i2c,id From: https://www.cnblogs.com/luatos/p/18488255