| 数据搜索系统,热门电子元器件搜索 |
|
TSL2580CS 数据表(PDF) 37 Page - OSRAM GmbH |
|
|
|||||||||||||||||||||||||||||
TSL2580CS 数据表(HTML) 37 Page - OSRAM GmbH |
|
37 / 53 page ![]() Page 36 ams Datasheet Document Feedback [v1-00] 2016-Apr-05 TSL2580, TSL2581 − Application Information: Software // lux equation approximation without floating point calculations ////////////////////////////////////////////////////////////////////////////// // Routine: unsigned int CalculateLux(unsigned int ch0, unsigned int ch0, int iType) // // Description: Calculate the approximate illuminance (lux) given the raw // channel values of the TSL2581. The equation if implemented // as a piece-wise linear approximation. // // Arguments: unsigned int iGain - gain, where 0:1X, 1:8X, 2:16X, 3:128X // unsigned int tIntCycles - INTEG_CYCLES defined in Timing Register // unsigned int ch0 - raw channel value from channel 0 of TSL2581 // unsigned int ch1 - raw channel value from channel 1 of TSL2581 // unsigned int iType - package type (1:CS) // // Return: unsigned int - the approximate illuminance (lux) // ////////////////////////////////////////////////////////////////////////////// unsigned int CalculateLux(unsigned int iGain, unsigned int tIntCycles, unsigned int ch0, unsigned int ch1, int iType) { //------------------------------------------------------------------------ // first, scale the channel values depending on the gain and integration time // 1X, 400ms is nominal setting unsigned long chScale0; unsigned long chScale1; unsigned long channel1; unsigned long channel0; // No scaling if nominal integration (148 cycles or 400 ms) is used if (tIntCycles == NOM_INTEG_CYCLE) chScale0 = (1 << CH_SCALE); else chScale0 = (NOM_INTEG_CYCLE << CH_SCALE) / tIntCycles; switch (iGain) { case 0: // 1x gain chScale1 = chScale0; // No scale. Nominal setting break; case 1: // 8x gain chScale0 = chScale0 >> 3; // Scale/multiply value by 1/8 chScale1 = chScale0; break; case 2: // 16x gain chScale0 = chScale0 >> 4; // Scale/multiply value by 1/16 chScale1 = chScale0; break; case 3: // 128x gain chScale1 = chScale0 / CH1GAIN128X; //Ch1 gain correction factor applied |
|
链接网址 |
| ALLDATASHEET是否为您带来帮助? [ DONATE ] |
关于 Alldatasheet | 广告服务 | 联系我们 | 隐私政策 | 数据表链接 | 链接交换 | 制造商名单 All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |