Create Adafruit_VCN4000.h
This commit is contained in:
parent
b84781e60c
commit
a7b582d507
1 changed files with 44 additions and 0 deletions
|
|
@ -0,0 +1,44 @@
|
|||
// VCNL4000 code adapted from:
|
||||
// https://github.com/adafruit/VCNL4000
|
||||
#ifndef ADAFRUIT_VCNL4000_H
|
||||
#define ADAFRUIT_VCNL4000_H
|
||||
|
||||
// the i2c address
|
||||
#define VCNL4000_ADDRESS 0x13
|
||||
|
||||
// commands and constants
|
||||
#define VCNL4000_COMMAND 0x80
|
||||
#define VCNL4000_PRODUCTID 0x81
|
||||
#define VCNL4000_IRLED 0x83
|
||||
#define VCNL4000_AMBIENTPARAMETER 0x84
|
||||
#define VCNL4000_AMBIENTDATA 0x85
|
||||
#define VCNL4000_PROXIMITYDATA 0x87
|
||||
#define VCNL4000_SIGNALFREQ 0x89
|
||||
#define VCNL4000_PROXINITYADJUST 0x8A
|
||||
|
||||
#define VCNL4000_3M125 0
|
||||
#define VCNL4000_1M5625 1
|
||||
#define VCNL4000_781K25 2
|
||||
#define VCNL4000_390K625 3
|
||||
|
||||
#define VCNL4000_MEASUREAMBIENT 0x10
|
||||
#define VCNL4000_MEASUREPROXIMITY 0x08
|
||||
#define VCNL4000_AMBIENTREADY 0x40
|
||||
#define VCNL4000_PROXIMITYREADY 0x20
|
||||
|
||||
|
||||
class Adafruit_VCNL4000 {
|
||||
public:
|
||||
Adafruit_VCNL4000() {}
|
||||
|
||||
bool begin();
|
||||
uint16_t readProximity();
|
||||
|
||||
private:
|
||||
uint8_t read8(uint8_t address);
|
||||
uint16_t read16(uint8_t address);
|
||||
void write8(uint8_t address, uint8_t data);
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
Loading…
Reference in a new issue