Project Digora IOT
Dependencies: libmDot-dev-mbed5
Lum_sensor.h@0:522ad8e780f6, 2017-05-19 (annotated)
- Committer:
- Niiippoooo
- Date:
- Fri May 19 09:26:49 2017 +0000
- Revision:
- 0:522ad8e780f6
project Digora IOT
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Niiippoooo | 0:522ad8e780f6 | 1 | #ifndef LUM_SENSOR_H |
Niiippoooo | 0:522ad8e780f6 | 2 | #define LUM_SENSOR_H |
Niiippoooo | 0:522ad8e780f6 | 3 | |
Niiippoooo | 0:522ad8e780f6 | 4 | #include "mbed.h" |
Niiippoooo | 0:522ad8e780f6 | 5 | |
Niiippoooo | 0:522ad8e780f6 | 6 | #define TSL_SLAVE_ADDRESS 0x29 //addresse du capteur |
Niiippoooo | 0:522ad8e780f6 | 7 | #define TSL_CONTROL 0x00 //registre pour allumer et éteindre le capteur |
Niiippoooo | 0:522ad8e780f6 | 8 | #define TSL_TIMING 0x01 //registre contenant les informations sur le gain et le temps d'intégration |
Niiippoooo | 0:522ad8e780f6 | 9 | #define TSL_THRESHLOWLOW 0x02 |
Niiippoooo | 0:522ad8e780f6 | 10 | #define TSL_THRESHHIGHLOW 0x04 |
Niiippoooo | 0:522ad8e780f6 | 11 | #define TSL_INTERRUPT 0x06 |
Niiippoooo | 0:522ad8e780f6 | 12 | #define TSL_ID 0x0A |
Niiippoooo | 0:522ad8e780f6 | 13 | #define TSL_DATA0LOW 0x0C |
Niiippoooo | 0:522ad8e780f6 | 14 | #define TSL_DATA1LOW 0x0E |
Niiippoooo | 0:522ad8e780f6 | 15 | |
Niiippoooo | 0:522ad8e780f6 | 16 | class Capt_Lum |
Niiippoooo | 0:522ad8e780f6 | 17 | { |
Niiippoooo | 0:522ad8e780f6 | 18 | private: |
Niiippoooo | 0:522ad8e780f6 | 19 | I2C i2c; //pins I2C initialisés par le constructeur |
Niiippoooo | 0:522ad8e780f6 | 20 | float lux; //variable dans laquelle on stocke la luminosité mesurée |
Niiippoooo | 0:522ad8e780f6 | 21 | |
Niiippoooo | 0:522ad8e780f6 | 22 | public: |
Niiippoooo | 0:522ad8e780f6 | 23 | Capt_Lum(); //Constructeur |
Niiippoooo | 0:522ad8e780f6 | 24 | int enablePower(); //allume le capteur |
Niiippoooo | 0:522ad8e780f6 | 25 | int disablePower(); //éteint le capteur |
Niiippoooo | 0:522ad8e780f6 | 26 | int writeSingleRegister( char A, char B); //écrit le mot B à l'addresse A |
Niiippoooo | 0:522ad8e780f6 | 27 | int readMultipleRegisters( char A, char* B, int N); //recopie N mots lus dans le registre d'addresse A dans le tableau d'adresse B |
Niiippoooo | 0:522ad8e780f6 | 28 | int getVisibleAndIR(); //mesure la luminosité du visible et des infrarouges |
Niiippoooo | 0:522ad8e780f6 | 29 | int getIROnly(); //mesure uniquement la luminosité infrarouge |
Niiippoooo | 0:522ad8e780f6 | 30 | float getLux(); //convertit les donnée ent lux |
Niiippoooo | 0:522ad8e780f6 | 31 | float readIntegrationTime(); //calcule le temps d'intégration necessaire pour une mesure correcte |
Niiippoooo | 0:522ad8e780f6 | 32 | int readGain(); //calcule le gain necessaire pour une mesure correcte |
Niiippoooo | 0:522ad8e780f6 | 33 | char readSingleRegister( char A); //retourne un mot lu dans le registre d'addresse A |
Niiippoooo | 0:522ad8e780f6 | 34 | float obtenirLuminosite(); //calcule, affiche et retourne la luminosité |
Niiippoooo | 0:522ad8e780f6 | 35 | |
Niiippoooo | 0:522ad8e780f6 | 36 | }; |
Niiippoooo | 0:522ad8e780f6 | 37 | |
Niiippoooo | 0:522ad8e780f6 | 38 | |
Niiippoooo | 0:522ad8e780f6 | 39 | |
Niiippoooo | 0:522ad8e780f6 | 40 | |
Niiippoooo | 0:522ad8e780f6 | 41 | |
Niiippoooo | 0:522ad8e780f6 | 42 | #endif |