Basic functions for Gravitech's i2c color sensor
Dependencies: mbed
Dependents: R5 2016 Robotics Team 1
ColorSensor.h@1:b4139bd2715f, 2016-04-09 (annotated)
- Committer:
- Hypna
- Date:
- Sat Apr 09 11:01:08 2016 +0000
- Revision:
- 1:b4139bd2715f
- Parent:
- 0:42c0a779b199
did things
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Hypna | 0:42c0a779b199 | 1 | #ifndef COLORSENSOR_H |
Hypna | 0:42c0a779b199 | 2 | #define COLORSENSOR_H |
Hypna | 0:42c0a779b199 | 3 | |
Hypna | 0:42c0a779b199 | 4 | #include "mbed.h" |
Hypna | 0:42c0a779b199 | 5 | |
Hypna | 0:42c0a779b199 | 6 | //constants for i2c register communication |
Hypna | 1:b4139bd2715f | 7 | const int ADDR = 0x3A; |
Hypna | 0:42c0a779b199 | 8 | const char CTRL_VAL = 0x80; |
Hypna | 0:42c0a779b199 | 9 | const char* const CTRL = &CTRL_VAL; |
Hypna | 0:42c0a779b199 | 10 | const char CTRL_INIT_VAL = 0x03; |
Hypna | 0:42c0a779b199 | 11 | const char* const CTRL_INIT = &CTRL_INIT_VAL; |
Hypna | 0:42c0a779b199 | 12 | const char GAIN_VAL = 0x87; |
Hypna | 0:42c0a779b199 | 13 | const char* const GAIN = &GAIN_VAL; |
Hypna | 0:42c0a779b199 | 14 | const char GAIN_INIT_VAL = 0x10; |
Hypna | 0:42c0a779b199 | 15 | const char* const GAIN_INIT = &GAIN_INIT_VAL; |
Hypna | 0:42c0a779b199 | 16 | const char RED_LO_VAL = 0x92; |
Hypna | 0:42c0a779b199 | 17 | const char* const RED_LO = &RED_LO_VAL; |
Hypna | 0:42c0a779b199 | 18 | const char RED_HI_VAL = 0x93; |
Hypna | 0:42c0a779b199 | 19 | const char* const RED_HI = &RED_HI_VAL; |
Hypna | 0:42c0a779b199 | 20 | const char GRN_LO_VAL = 0x90; |
Hypna | 0:42c0a779b199 | 21 | const char* const GRN_LO = &GRN_LO_VAL; |
Hypna | 0:42c0a779b199 | 22 | const char GRN_HI_VAL = 0x91; |
Hypna | 0:42c0a779b199 | 23 | const char* const GRN_HI = &GRN_HI_VAL; |
Hypna | 0:42c0a779b199 | 24 | const char BLU_LO_VAL = 0x94; |
Hypna | 0:42c0a779b199 | 25 | const char* const BLU_LO = &BLU_LO_VAL; |
Hypna | 0:42c0a779b199 | 26 | const char BLU_HI_VAL = 0x95; |
Hypna | 0:42c0a779b199 | 27 | const char* const BLU_HI = &BLU_HI_VAL; |
Hypna | 0:42c0a779b199 | 28 | const char CLR_LO_VAL = 0x96; |
Hypna | 0:42c0a779b199 | 29 | const char* const CLR_LO = &CLR_LO_VAL; |
Hypna | 0:42c0a779b199 | 30 | const char CLR_HI_VAL = 0x97; |
Hypna | 0:42c0a779b199 | 31 | const char* const CLR_HI = &CLR_HI_VAL; |
Hypna | 0:42c0a779b199 | 32 | |
Hypna | 0:42c0a779b199 | 33 | class ColorSensor |
Hypna | 0:42c0a779b199 | 34 | { |
Hypna | 0:42c0a779b199 | 35 | public: |
Hypna | 0:42c0a779b199 | 36 | ColorSensor(PinName sda, PinName scl); |
Hypna | 0:42c0a779b199 | 37 | int getR(); |
Hypna | 0:42c0a779b199 | 38 | int getG(); |
Hypna | 0:42c0a779b199 | 39 | int getB(); |
Hypna | 0:42c0a779b199 | 40 | int getC(); |
Hypna | 0:42c0a779b199 | 41 | void setGain(int g); |
Hypna | 0:42c0a779b199 | 42 | void setScaler(int s); |
Hypna | 0:42c0a779b199 | 43 | |
Hypna | 0:42c0a779b199 | 44 | private: |
Hypna | 0:42c0a779b199 | 45 | I2C i2c; |
Hypna | 0:42c0a779b199 | 46 | int gain; |
Hypna | 0:42c0a779b199 | 47 | int scale; |
Hypna | 0:42c0a779b199 | 48 | }; |
Hypna | 0:42c0a779b199 | 49 | #endif |