Library for Si114x optical sensors. Currently intended for the Si1146, although it will work also for the Si1145, and without full functionality for the Si1147

Dependents:   Si114x_HelloWorld Hello-Uzuki-sensor-shield

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Si114x_defs.h Source File

Si114x_defs.h

00001 #ifndef SI114X_DEFS_H
00002 #define SI114X_DEFS_H
00003 
00004 
00005 #define SI114x_ADDRESS (0x60 << 1)
00006 
00007 enum Si114x_reg { 
00008     REG_PART_ID = 0x00,
00009     REG_REV_ID,
00010     REG_SEQ_ID,
00011     REG_INT_CFG,
00012     REG_IRQ_ENABLE,
00013     REG_HW_KEY = 0x07,
00014     REG_MEAS_RATE0, REG_MEAS_RATE1,
00015     REG_PS_LED21 = 0x0F, REG_PS_LED3,
00016     REG_UCOEF0 = 0x13, REG_UCOEF1, REG_UCOEF2, REG_UCOEF3,
00017     REG_PARAM_WR,
00018     REG_COMMAND,
00019     REG_RESPONSE = 0x20,
00020     REG_IRQ_STATUS,
00021     REG_ALS_VIS_DATA0, REG_ALS_VIS_DATA1,
00022     REG_ALS_IR_DATA0, REG_ALS_IR_DATA1,
00023     REG_PS1_DATA0, REG_PS1_DATA1,
00024     REG_PS2_DATA0, REG_PS2_DATA1,
00025     REG_PS3_DATA0 = 0x2A, REG_PS3_DATA1,
00026     REG_UV_INDEX0, REG_UV_INDEX1,
00027     REG_PARAM_RD,
00028     REG_CHIP_STAT = 0x30,
00029     REG_ANA_IN_KEY = 0x3B
00030     };
00031 
00032 enum Si114x_commands {
00033     CMD_PARAM_QUERY = 0x80,
00034     CMD_PARAM_SET = 0xA0,
00035     CMD_NOP = 0x00,
00036     CMD_RESET = 0x01,
00037     CMD_BUS_ADDRESS = 0x02,
00038     CMD_PS_FORCE = 0x05,
00039     CMD_GET_CAL = 0x12,
00040     CMD_ALS_FORCE = 0x06,
00041     CMD_PLSALS_FORCE = 0x07,
00042     CMD_PS_AUTO = 0x0D,
00043     CMD_ALS_AUTO = 0x0E,
00044     CMD_PSALS_AUTO = 0x0F
00045 };
00046 
00047 enum Si114x_ram_address {
00048     RAM_I2C_ADDR,
00049     RAM_CHLIST,
00050     RAM_PSLED12_SELECT,
00051     RAM_PSLED3_SELECT,
00052     RAM_PS_ENCODING,
00053     RAM_ALS_ENCODING,
00054     RAM_PS1_ADCMUX,
00055     RAM_PS2_ADCMUX,
00056     RAM_PS3_ADCMUX,
00057     RAM_PS_ADC_COUNTER,
00058     RAM_PS_ADC_GAIN,
00059     RAM_PS_ADC_MISC,
00060     RAM_RESERVED0,
00061     RAM_ALS_IR_ADCMUX,
00062     RAM_AUX_ADCMUX,
00063     RAM_ALS_VIS_ADC_COUNTER,
00064     RAM_ALS_VIS_ADC_GAIN,
00065     RAM_ALS_VIS_ADC_MISC,
00066     RAM_RESERVED1,
00067     RAM_RESERVED2,
00068     RAM_RESERVED3,
00069     RAM_LED_REC,
00070     RAM_IR_ADC_COUNTER,
00071     RAM_IR_ADC_GAIN,
00072     RAM_IR_ADC_MISC
00073 };
00074     
00075     
00076 #endif