105 lines
2.1 KiB
Markdown
105 lines
2.1 KiB
Markdown
|
# TCS34725 module
|
||
|
| Since | Origin / Contributor | Maintainer | Source |
|
||
|
| :----- | :-------------------- | :---------- | :------ |
|
||
|
| 2017-04-02 | [tjhowse](https://github.com/tjhowse) | [tjhowse](https://github.com/tjhowse) | [tcs34725.c](../../app/modules/tcs34725.c)|
|
||
|
|
||
|
This module provides a simple interface to [TCS34725 colour/light sensors](https://www.adafruit.com/product/1334) (Adafruit).
|
||
|
|
||
|
!!! Warning
|
||
|
|
||
|
You must call [`setup()`](#tcs34725setup) before you can start reading values!
|
||
|
|
||
|
## tcs34725.setup()
|
||
|
|
||
|
Initialization via this call is mandatory before values can be read.
|
||
|
|
||
|
#### Syntax
|
||
|
|
||
|
`tcs34725.setup()`
|
||
|
|
||
|
#### Returns
|
||
|
`0` if setup has failed (no sensor connected?), `1` if sensor is TCS34725
|
||
|
|
||
|
#### Example
|
||
|
```lua
|
||
|
tcs34725.setup()
|
||
|
tcs34725.enable(function()
|
||
|
print("TCS34275 Enabled")
|
||
|
clear,red,green,blue=tcs34725.raw()
|
||
|
end)
|
||
|
```
|
||
|
|
||
|
## tcs34725.enable(function())
|
||
|
|
||
|
Enables the sensor. Can be used to wake up after a disable.
|
||
|
|
||
|
#### Syntax
|
||
|
```lua
|
||
|
tcs34725.enable(function()
|
||
|
print("TCS34275 Enabled")
|
||
|
clear,red,green,blue=tcs34725.raw()
|
||
|
end)
|
||
|
```
|
||
|
#### Parameters
|
||
|
A function called when the sensor has finished initialising.
|
||
|
|
||
|
#### Returns
|
||
|
0
|
||
|
|
||
|
## tcs34725.disable()
|
||
|
|
||
|
Disables the sensor. Enables a low-power sleep mode.
|
||
|
|
||
|
#### Syntax
|
||
|
`tcs34725.disable()`
|
||
|
|
||
|
#### Returns
|
||
|
0
|
||
|
|
||
|
## tcs34725.raw()
|
||
|
|
||
|
Reads the clear, red, green and blue values from the sensor.
|
||
|
|
||
|
#### Syntax
|
||
|
`clear,red,green,blue=tcs34725.raw()`
|
||
|
|
||
|
#### Returns
|
||
|
clear, red, green, blue in uint16_t.
|
||
|
|
||
|
## tcs34725.setGain()
|
||
|
|
||
|
Sets the gain of the sensor. Must be called after the sensor is enabled.
|
||
|
|
||
|
#### Syntax
|
||
|
`tcs34725.setGain(gain)`
|
||
|
|
||
|
#### Parameters
|
||
|
|gain|Gain|
|
||
|
|-----|-----------------|
|
||
|
|0x00|TCS34725_GAIN_1X|
|
||
|
|0x01|TCS34725_GAIN_4X|
|
||
|
|0x02|TCS34725_GAIN_16X|
|
||
|
|0x03|TCS34725_GAIN_60X|
|
||
|
|
||
|
#### Returns
|
||
|
0
|
||
|
|
||
|
## tcs34725.setIntegrationTime()
|
||
|
|
||
|
Sets the integration time of the sensor. Must be called after the sensor is enabled.
|
||
|
|
||
|
#### Syntax
|
||
|
`tcs34725.setIntegrationTime(time)`
|
||
|
|
||
|
#### Parameters
|
||
|
|time|Gain|
|
||
|
|-----|-----------------|
|
||
|
|0xFF|TCS34725_INTEGRATIONTIME_2_4MS|
|
||
|
|0xF6|TCS34725_INTEGRATIONTIME_24MS|
|
||
|
|0xD5|TCS34725_INTEGRATIONTIME_101MS|
|
||
|
|0xC0|TCS34725_INTEGRATIONTIME_154MS|
|
||
|
|0x00|TCS34725_INTEGRATIONTIME_700MS|
|
||
|
|
||
|
#### Returns
|
||
|
0
|