nodemcu-firmware/docs/modules/tcs34725.md

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