今天我们学习合宙低功耗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工具中查看效果











