AvrIO  1.4.5
Bibliothèque C modulaire pour ATMEL AVR
Capteur d'irradiance TSL230

Description détaillée

Ce module permet la mesure de l'éclairement lumineux (irradiance à l'aide d'un capteur TSL230. Ce capteur est composé d'un réseau de photodiodes et d'un convertisseur courant-fréquence qui fournit un signal de fréquence proportionnelle à l'irradiance.
Le rapport de proportionnalité Re en Hz/(µw/cm²) est modifiable grâce à un réglage de sensibilité et d'échelle de fréquence.

Graphe de collaboration de Capteur d'irradiance TSL230:

Modules

 Réglage bas niveau
 
 Utilisation non bloquante
 

Fonctions

double dTsl230Freq (void)
 Lit la dernière mesure d'irradiance en Hertz. Plus de détails...
 
double dTsl230FreqToIrradiance (double dFreq)
 Convertit une fréquence en irradiance. Plus de détails...
 
double dTsl230GetDarkFreq (void)
 Fréquence capteur dans le noir.
 
double dTsl230GetResponsivity (void)
 Réceptivité du capteur.
 
double dTsl230Irradiance (void)
 Lit la dernière mesure d'irradiance en µW/cm² Plus de détails...
 
double dTsl230ReadFreq (bool bAutoRange)
 Mesure bloquante de la fréquence du capteur. Plus de détails...
 
double dTsl230ReadIrradiance (bool bAutoRange)
 Mesure bloquante de l'irradiance du capteur. Plus de détails...
 
uint16_t usTsl230AutoRange (void)
 Réglage automatique de la plage de mesure du capteur. Plus de détails...
 
uint16_t usTsl230Range (void)
 Lecture de la plage de mesure du capteur. Plus de détails...
 
void vTsl230Disable (void)
 Dévalide la broche OE du capteur. Plus de détails...
 
void vTsl230Enable (void)
 Valide la broche OE du capteur. Plus de détails...
 
void vTsl230Init (void)
 Initialisation du capteur et de son fréquencemètre. Plus de détails...
 
void vTsl230SetDarkFreq (double dDarkFreq)
 Modifie la fréquence capteur dans le noir. Plus de détails...
 
void vTsl230SetRange (uint16_t usRange)
 Réglage la plage de mesure du capteur. Plus de détails...
 
void vTsl230SetResponsivity (double dResponsivity)
 Modifie la réceptivité du capteur. Plus de détails...
 

Énumérations

enum  eTsl230Range { eTsl230RangeOff = 0, eTsl230Range2000 = 1, eTsl230Range200 = 2, eTsl230Range20 = 3 }
 Plage de mesure capteur. Plus de détails...
 

Documentation du type de l'énumération

Plage de mesure capteur.

eTsl230RangeOff permet de mettre le capteur en mode sommeil (conso. 5 µA). En sortie du mode sommeil, il faut 100 µs au capteur pour être opérationnel.

Valeurs énumérées
eTsl230RangeOff 

Mode Power Down

eTsl230Range2000 

2000 W/m²

eTsl230Range200 

200 W/m²

eTsl230Range20 

20 W/m²

Définition à la ligne 51 du fichier tsl230.h.

51  {
52  eTsl230RangeOff = 0,
53  eTsl230Range2000 = 1,
54  eTsl230Range200 = 2,
55  eTsl230Range20 = 3,
56 } eTsl230Range;
eTsl230Range
Plage de mesure capteur.
Definition: tsl230.h:51

Documentation des fonctions

double dTsl230Freq ( void  )
inline

Lit la dernière mesure d'irradiance en Hertz.

Cette fonction ne lance pas de mesure.

Renvoie
fréquence en Hertz correspondant à l'irradiance mesurée
double dTsl230FreqToIrradiance ( double  dFreq)

Convertit une fréquence en irradiance.

Paramètres
fréquenceen sortie du capteur en Hertz
Renvoie
Irradiance en µW/cm² (100 µW/cm² = 1 W/m²)
Exemples:
sensor/tsl230/demo_sensor_tsl230.c.
double dTsl230Irradiance ( void  )
inline

Lit la dernière mesure d'irradiance en µW/cm²

Cette fonction ne lance pas de mesure.

Renvoie
Irradiance en µW/cm²
double dTsl230ReadFreq ( bool  bAutoRange)

Mesure bloquante de la fréquence du capteur.

Effectue une mesure et renvoie la fréquence mesurée.

dTsl230FreqToIrradiance() peut être utilisée pour convertir la fréquence en irradiance.

Paramètres
bAutoRangevalide le réglage automatique de plage de mesure
Renvoie
fréquence en Hertz correspondant à l'irradiance mesurée
Exemples:
sensor/tsl230/demo_sensor_tsl230.c.
double dTsl230ReadIrradiance ( bool  bAutoRange)
inline

Mesure bloquante de l'irradiance du capteur.

Effectue une mesure et renvoie l'irradiance mesurée.

Paramètres
bAutoRangevalide le réglage automatique de plage de mesure
Renvoie
fréquence en Hertz correspondant à l'irradiance mesurée
uint16_t usTsl230AutoRange ( void  )

Réglage automatique de la plage de mesure du capteur.

Effectue le réglage automatique de la plage de mesure en fonction

Renvoie
plage de mesure effective {0, 20, 200, 2000}
Exemples:
sensor/tsl230/demo_sensor_tsl230.c.
uint16_t usTsl230Range ( void  )

Lecture de la plage de mesure du capteur.

Renvoie
plage de mesure {0, 20, 200, 2000}
Exemples:
sensor/tsl230/demo_sensor_tsl230.c.
void vTsl230Disable ( void  )
inline

Dévalide la broche OE du capteur.

Note
Il faut que TSL230_OE soit défini dans avrio-board-tsl230.h, c'est à dire qu'une broche de port soit reliée au circuit.
void vTsl230Enable ( void  )
inline

Valide la broche OE du capteur.

Note
Il faut que TSL230_OE soit défini dans avrio-board-tsl230.h, c'est à dire qu'une broche de port soit reliée au circuit.
void vTsl230Init ( void  )

Initialisation du capteur et de son fréquencemètre.

La configuration est modifiable dans avrio-board-tsl230.h

Exemples:
sensor/tsl230/demo_sensor_tsl230.c.
void vTsl230SetDarkFreq ( double  dDarkFreq)
inline

Modifie la fréquence capteur dans le noir.

D'après le datasheet, la fréquence dans le noir typique est de 0.4 Hz, cette fonction permet de modifier cette valeur d'étalonnage.

void vTsl230SetRange ( uint16_t  usRange)

Réglage la plage de mesure du capteur.

Les valeurs possibles sont:

  • 0 W/m² (Mode power-down)
  • 20 W/m²
  • 200 W/m²
  • 2000 W/m²
Paramètres
usRangeplage de mesure {0, 20, 200, 2000}, une valeur incorrecte est ignorée.
void vTsl230SetResponsivity ( double  dResponsivity)
inline

Modifie la réceptivité du capteur.

D'après le datasheet, la réceptivité est de 790 Hz/(µW/cm²), cette fonction permet de modifier cette valeur d'étalonnage.