C2835Driver CI2CBus CI2CDevice CBME280 CDS3231 CMCP3424 CMCP9808 CMCP23017 CTLS2591 CVEML6075 CSPIBus CSPIDevice CMAX31865 CLCD7789 CLCD7789PaintDevice CSleeper

Architecture de la librairie cpp2835

La librairie cpp2835 déclare et définie les classes, structures, énumérations, types, constantes et macros documentés dans cette rubrique.


 - Classes
 - Structures
 - Enumérations
 - Types
 - Constantes
 - Macros


Diagramme des classes



Structures


La librairie définie les structures suivantes :

DS3231DateTime

La structure DS3231DateTime est utilisée par la classe CDS3231 pour ajuster ou lire la date et/ou l'heure.


struct DS3231DateTime
{
  int DS3231_second;
  int DS3231_minute;
  int DS3231_hour;
  int DS3231_day;
  int DS3231_month;
  int DS3231_year;
  int DS3231_weekday;
};

Champ Type Bornes Définition
DS3231_second int 0 - 59 Seconde de la minute en cours
DS3231_minute int 0 - 59 Minute de l'heure en cours
DS3231_hour int 0 - 23 Heure de la date en cours
DS3231_day int 1 - 31 Jour du mois en cours
DS3231_month int 1 -12 Mois de l'année en cours (janvier = 1 .../... décembre = 12)
DS3231_year int 1970 - n Année
DS3231_weekday int 1 - 7 Jour de la semaine (Lundi = 1 .../... Dimanche = 7)

Enumérations


La librairie définie les énumérations suivantes :

GPIO_PIN

Définie les broches GPIO du Raspberry Pi selon le modèle le plus ancien utilisable par cette librairie : le Raaspberry Pi III B.
La librairie bcm235 sur laquelle est basé la librairie Cpp2835 numérote les broches des fonctions GPIO du Raspberry Pi selon leur numéro physique. Hors le composant BCM2835 utilise une numérotation logique différente à laquelle se réfère la plupart des documentations. Cette énumération renumérote les voies GPIO de la librairie bcm2835 conformément à la documentation du Raspberry Pi en se basant sur leur numéro de broche physique défini et utilisé par la librairie bcm2835. Ainsi, dans la librairie cpp2835 on référence les voies par leur numéro logique GPIO et non pas par le numéro de broche.


Elément Valeur (définie par la librairie bcm2835)
GPIO_2 RPI_BPLUS_GPIO_J8_03
GPIO_3 RPI_BPLUS_GPIO_J8_05
GPIO_4 RPI_BPLUS_GPIO_J8_07
GPIO_14RPI_BPLUS_GPIO_J8_08
GPIO_15RPI_BPLUS_GPIO_J8_10
GPIO_17RPI_BPLUS_GPIO_J8_11
GPIO_18RPI_BPLUS_GPIO_J8_12
GPIO_27RPI_BPLUS_GPIO_J8_13
GPIO_22RPI_BPLUS_GPIO_J8_15
GPIO_23RPI_BPLUS_GPIO_J8_16
GPIO_24RPI_BPLUS_GPIO_J8_18
GPIO_10RPI_BPLUS_GPIO_J8_19
GPIO_9 RPI_BPLUS_GPIO_J8_21
GPIO_25RPI_BPLUS_GPIO_J8_22
GPIO_11RPI_BPLUS_GPIO_J8_23
GPIO_8 RPI_BPLUS_GPIO_J8_24
GPIO_7 RPI_BPLUS_GPIO_J8_26
GPIO_5 RPI_BPLUS_GPIO_J8_29
GPIO_6 RPI_BPLUS_GPIO_J8_31
GPIO_12RPI_BPLUS_GPIO_J8_32
GPIO_13RPI_BPLUS_GPIO_J8_33
GPIO_19RPI_BPLUS_GPIO_J8_35
GPIO_16RPI_BPLUS_GPIO_J8_36
GPIO_26RPI_BPLUS_GPIO_J8_37
GPIO_20RPI_BPLUS_GPIO_J8_38
GPIO_21RPI_BPLUS_GPIO_J8_40

GPIO_FUNCTION

Définie les fonctions assignables aux voies définies par GPIO_PIN.


Elément Valeur (définie par la librairie bcm2835)
GPIO_FUNCTION_INPUT BCM2835_GPIO_FSEL_INPT : Entrée numérique
GPIO_FUNCTION_OUTPUTBCM2835_GPIO_FSEL_OUTP : Sortie numérique
GPIO_FUNCTION_ALT0 BCM2835_GPIO_FSEL_ALT0 : Voir documentation Raspberry Pi fonction ALT0
GPIO_FUNCTION_ALT1 BCM2835_GPIO_FSEL_ALT1 : Voir documentation Raspberry Pi fonction ALT1
GPIO_FUNCTION_ALT2 BCM2835_GPIO_FSEL_ALT2 : Voir documentation Raspberry Pi fonction ALT2
GPIO_FUNCTION_ALT3 BCM2835_GPIO_FSEL_ALT3 : Voir documentation Raspberry Pi fonction ALT3
GPIO_FUNCTION_ALT4 BCM2835_GPIO_FSEL_ALT4 : Voir documentation Raspberry Pi fonction ALT4
GPIO_FUNCTION_ALT5 BCM2835_GPIO_FSEL_ALT5 : Voir documentation Raspberry Pi fonction ALT5
GPIO_FUNCTION_MASK BCM2835_GPIO_FSEL_MASK : Fonction sélection masque binaire

GPIO_PUD_DIRECTION

Définie la mise en place ou pas de résistances de pull up ou pull down sur les voies définies par GPIO_PIN. lorsqu'elles sont configurées en entrées numériques selon l'énumération GPIO_FUNCTION.


Pour ceux que cela interesse : C'est quoi une résistance de pull up ou Pull down ?.


Elément Valeur (définie par la librairie bcm2835)
GPIO_PUD_DIRECTION_OFF BCM2835_GPIO_PUD_OFF : Entrée numérique laissée flottante
GPIO_PUD_DIRECTION_DOWNBCM2835_GPIO_PUD_DOWN : Résistance de pull down vers GND
GPIO_PUD_DIRECTION_UP BCM2835_GPIO_PUD_UP : Résistance de pull up vers VCC

SPI_BIT_ORDER

Définie l'ordre des bits lors des échanges sur un bus SPI.


Elément Valeur (définie par la librairie bcm2835)
SPI_BIT_ORDER_LSBFIRST BCM2835_SPI_BIT_ORDER_LSBFIRST : Bit de poids faible en tête
SPI_BIT_ORDER_MSBFIRSTBCM2835_SPI_BIT_ORDER_MSBFIRST : Bit de poids fort en tête

SPI_CLOCK_DIVIDER

Définie la fréquence d'horloge utilisée lors d'échanges sur bus SPI.


Elément Valeur (définie par la librairie bcm2835)
SPI_CLOCK_DIVIDER_65536BCM2835_SPI_CLOCK_DIVIDER_65536 - 6.1035156kHz sur RPI3
SPI_CLOCK_DIVIDER_32768BCM2835_SPI_CLOCK_DIVIDER_32768 - 12.20703125kHz sur RPI3
SPI_CLOCK_DIVIDER_16384BCM2835_SPI_CLOCK_DIVIDER_16384 - 24.4140625kHz sur RPI3
SPI_CLOCK_DIVIDER_8192 BCM2835_SPI_CLOCK_DIVIDER_8192 - 48.828125kHz sur RPI3
SPI_CLOCK_DIVIDER_4096 BCM2835_SPI_CLOCK_DIVIDER_4096 - 97.65625kHz sur RPI3
SPI_CLOCK_DIVIDER_2048 BCM2835_SPI_CLOCK_DIVIDER_2048 - 195.3125kHz sur RPI3
SPI_CLOCK_DIVIDER_1024 BCM2835_SPI_CLOCK_DIVIDER_1024 - 390.625kHz sur RPI3
SPI_CLOCK_DIVIDER_512 BCM2835_SPI_CLOCK_DIVIDER_512 - 781.25kHz sur RPI3
SPI_CLOCK_DIVIDER_256 BCM2835_SPI_CLOCK_DIVIDER_256 - 1.5625MHz sur RPI3
SPI_CLOCK_DIVIDER_128 BCM2835_SPI_CLOCK_DIVIDER_128 - 3.125MHz sur RPI3
SPI_CLOCK_DIVIDER_64 BCM2835_SPI_CLOCK_DIVIDER_64 - 6.250MHz sur RPI3
SPI_CLOCK_DIVIDER_32 BCM2835_SPI_CLOCK_DIVIDER_32 - 12.5MHz sur RPI3
SPI_CLOCK_DIVIDER_16 BCM2835_SPI_CLOCK_DIVIDER_16 - 25MHz sur RPI3
SPI_CLOCK_DIVIDER_8 BCM2835_SPI_CLOCK_DIVIDER_8 - 50MHz sur RPI3
SPI_CLOCK_DIVIDER_4 BCM2835_SPI_CLOCK_DIVIDER_4 - 100MHz sur RPI3
SPI_CLOCK_DIVIDER_2 BCM2835_SPI_CLOCK_DIVIDER_2 - 200MHz sur RPI3
SPI_CLOCK_DIVIDER_1 BCM2835_SPI_CLOCK_DIVIDER_1 - 6.1035156kHz sur RPI3

SPI_DATA_MODE

Définie la polarité et la phase de l'horloge CLK selon la norme sur bus SPI.


Elément Valeur (définie par la librairie bcm2835)
SPI_DATA_MODE_0BCM2835_SPI_MODE0 - CPOL = 0, CPHA = 0
SPI_DATA_MODE_1BCM2835_SPI_MODE1 - CPOL = 0, CPHA = 1
SPI_DATA_MODE_2BCM2835_SPI_MODE2 - CPOL = 1, CPHA = 0
SPI_DATA_MODE_3BCM2835_SPI_MODE3 - CPOL = 1, CPHA = 1

SPI_CS

Définie l'assignation des lignes CS du port GPIO à un bus SPI.


Elément Valeur (définie par la librairie bcm2835)
SPI_CS_0BCM2835_SPI_CS0 - GPIO 8 pour bus SPI0 - GPIO 16 pour sur SPI1
SPI_CS_1BCM2835_SPI_CS1 - GPIO 7 pour bus SPI0
SPI_CS_BOTHBCM2835_SPI_CS2 - GPIO 8 et GPIO 7 pour bus SPI0 - GPIO 16 pour sur SPI1
SPI_CS_NONEBCM2835_SPI_CS_NONE - Gestion de la ligne CS par le programme utilisateur

SPI_CS_POLARITY

Définie la polarité de la ligne CS attribuée à un périphérique SPI.


Elément Valeur
SPI_CS_POLARITY_NEGATIVE0x00
SPI_CS_POLARITY_POSITIVE0x01

I2C_CLOCK_DIVIDER

Définie la fréquence d'horloge utilisée lors d'échanges sur bus I2C. Attention la valeur numérique en fin de nom des éléments n'a pas de signification matérielle. Elles sont simplement équivalentes aux valeurs de l'énumération SPI_CLOCK_DIVIDER.


Elément Valeur (définie par la librairie bcm2835)
I2C_CLOCK_DIVIDER_65536BCM2835_I2C_CLOCK_DIVIDER_2500 - 100kHz
I2C_CLOCK_DIVIDER_32768BCM2835_I2C_CLOCK_DIVIDER_626 - 400kHz
I2C_CLOCK_DIVIDER_16384BCM2835_I2C_CLOCK_DIVIDER_150 - 1.666MHz
I2C_CLOCK_DIVIDER_8192 BCM2835_I2C_CLOCK_DIVIDER_148 - 1.689MHz

PWM_CLOCK_DIVIDER

Définie la fréquence du PWM sur la broche GPIO18. Cette fréquence sera 19.2 MHz divisée par la valeur de cette énumération.
Par exemple : 19.2 MHz / PWM_CLOCK_DIVIDER_16 = 1,2 MHz


Elément Valeur (définie par la librairie bcm2835)
PWM_CLOCK_DIVIDER_2048BCM2835_PWM_CLOCK_DIVIDER_2048
PWM_CLOCK_DIVIDER_1024BCM2835_PWM_CLOCK_DIVIDER_1024
PWM_CLOCK_DIVIDER_512 BCM2835_PWM_CLOCK_DIVIDER_512
PWM_CLOCK_DIVIDER_256 BCM2835_PWM_CLOCK_DIVIDER_256
PWM_CLOCK_DIVIDER_128 BCM2835_PWM_CLOCK_DIVIDER_128
PWM_CLOCK_DIVIDER_64 BCM2835_PWM_CLOCK_DIVIDER_64
PWM_CLOCK_DIVIDER_32 BCM2835_PWM_CLOCK_DIVIDER_32
PWM_CLOCK_DIVIDER_16 BCM2835_PWM_CLOCK_DIVIDER_16
PWM_CLOCK_DIVIDER_8 BCM2835_PWM_CLOCK_DIVIDER_8
PWM_CLOCK_DIVIDER_4 BCM2835_PWM_CLOCK_DIVIDER_4
PWM_CLOCK_DIVIDER_2 BCM2835_PWM_CLOCK_DIVIDER_2
PWM_CLOCK_DIVIDER_1 BCM2835_PWM_CLOCK_DIVIDER_1

PWM_MODE

Définie le mode PWM sur la voie GPIO 18.


Elément Valeur
PWM_MODE_BALANCED0x00
PWM_MODE_MARKSPACE0x01

BME280_ADR

Recense les adresses possibles d'un composant BME280 sur un bus I2C.


Elément Valeur
BME280_ADR_0X760x76
BME280_ADR_0X770x77

BME280_REGISTER

Recense les registres d'un composant BME280 sur un bus I2C.


Elément Valeur
BME280_T1_LSB_REG 0x88
BME280_T1_MSB_REG 0x89
BME280_T2_LSB_REG 0x8A
BME280_T2_MSB_REG 0x8B
BME280_T3_LSB_REG 0x8C
BME280_T3_MSB_REG 0x8D
BME280_P1_LSB_REG 0x8E
BME280_P1_MSB_REG 0x8F
BME280_P2_LSB_REG 0x90
BME280_P2_MSB_REG 0x91
BME280_P3_LSB_REG 0x92
BME280_P3_MSB_REG 0x93
BME280_P4_LSB_REG 0x94
BME280_P4_MSB_REG 0x95
BME280_P5_LSB_REG 0x96
BME280_P5_MSB_REG 0x97
BME280_P6_LSB_REG 0x98
BME280_P6_MSB_REG 0x99
BME280_P7_LSB_REG 0x9A
BME280_P7_MSB_REG 0x9B
BME280_P8_LSB_REG 0x9C
BME280_P8_MSB_REG 0x9D
BME280_P9_LSB_REG 0x9E
BME280_P9_MSB_REG 0x9F
BME280_H1_REG 0xA1
BME280_H2_LSB_REG 0xE1
BME280_H2_MSB_REG 0xE2
BME280_H3_REG 0xE3
BME280_H4_411_REG 0xE4
BME280_H4_30_H5_30_REG 0xE5
BME280_H5_411_REG 0xE6
BME280_H6_REG 0xE7
BME280_ID_REG 0xD0
BME280_RESET_REG 0xE0
BME280_CTRL_HUM_REG 0xF2
BME280_STATUS_REG 0xF3
BME280_CTRL_MEAS_REG 0xF4
BME280_CONFIG_REG 0xF5
BME280_PRESS_MSB_REG 0xF7
BME280_PRESS_LSB_REG 0xF8
BME280_PRESS_XSB_REG 0xF9
BME280_TEMP_MSB_REG 0xFA
BME280_TEMP_LSB_REG 0xFB
BME280_TEMP_XSB_REG 0xFC
BME280_HUM_MSB_REG 0xFD
BME280_HUM_LSB_REG 0xFE

BME280_PRESS_OVERSAMPLING

Définie le niveau de suréchantillonage lors des mesures de pression sur un composant BME280.


Elément Valeur
BME280_PRESS_OVERSAMPLING_10x04
BME280_PRESS_OVERSAMPLING_20x08
BME280_PRESS_OVERSAMPLING_40x0C
BME280_PRESS_OVERSAMPLING_80x10
BME280_PRESS_OVERSAMPLING_160x14

BME280_TEMP_OVERSAMPLING

Définie le niveau de suréchantillonage lors des mesures de température sur un composant BME280.


Elément Valeur
BME280_TEMP_OVERSAMPLING_10x20
BME280_TEMP_OVERSAMPLING_20x40
BME280_TEMP_OVERSAMPLING_40x60
BME280_TEMP_OVERSAMPLING_80x80
BME280_TEMP_OVERSAMPLING_160xA0

BME280_HUM_OVERSAMPLING

Définie le niveau de suréchantillonage lors des mesures d'humidité relative sur un composant BME280.


Elément Valeur
BME280_HUM_OVERSAMPLING_10x01
BME280_HUM_OVERSAMPLING_20x02
BME280_HUM_OVERSAMPLING_40x03
BME280_HUM_OVERSAMPLING_80x04
BME280_HUM_OVERSAMPLING_160x05

DS3231_REGISTER

Recense les registres d'un composant DS3231 sur un bus I2C.


Elément Valeur
DS3231_SEC_REG_ADDR 0x00
DS3231_MIN_REG_ADDR 0x01
DS3231_HR_REG_ADDR 0x02
DS3231_DAY_REG_ADDR 0x03
DS3231_DATE_REG_ADDR0x04
DS3231_MON_REG_ADDR 0x05
DS3231_YR_REG_ADDR 0x06
DS3231_CTL_REG_ADDR Ox0E
DS3231_STAT_REG_ADDR0x0F

MAX31865_RTD_TYPE

Recense les types de sondes platine utilisables selon leur résistance à 0°C pour un composant MAX31865.

Ce point est important pour mettre en oeuvre la bonne linéarisation en température à partir des données retournées par le composant.
Ces données sont retournées par rapport à une résistance de référence nommée RREF physiquement cablée sur le composant.
Dans le cas de RTD 100 Ohms, RREF vaut 430 Ohms, dans le cas de RTD 1000 Ohms, RREF vaut 4,3 KOhms.

A titre d'exemple, chez ADAFRUIT leur produit MX31865 est disponible dans les deux versions :

- 100 Ohms : Product ID : 3328
- 1000 Ohms : Product ID : 3648

Seule la valeur de RREF différencie ces deux versions


Elément Valeur
MAX31865_100_RTD_TYPE
MAX31865_1000_RTD_TYPE

MAX31865_RTD_WIRES

Recense les types de cablages des sondes platine utilisables par un composant MAX31865.


Elément Valeur
MAX31865_RTD_2_WIRES
MAX31865_RTD_3_WIRES
MAX31865_RTD_4_WIRES

MAX31865_FILTER

Recense les fréquences à filtrer (fréquence secteur) par un composant MAX31865 lors de mesures de température.


Elément Valeur
MAX31865_50HZ_FILTER
MAX31865_60HZ_FILTER

MAX31865_ERROR_CODE

Recense les erreurs possibles rencontrées lors des mesures par la classe CMAX31685.


Elément Valeur
MAX31865_ERROR_CODE_NOERROR0 - Pas d'erreur
MAX31865_ERROR_CODE_2835DRIVER_ERROR1 - Erreur pilote cpp2835
MAX31865_ERROR_CODE_FAULT2 - Erreur électrique lors de la mesure

MCP3424_ADR

Recense les adresses possibles d'un composant MCP3424 sur un bus I2C.


Elément Valeur
MCP3424_ADR_0X680x68
MCP3424_ADR_0X690x69
MCP3424_ADR_0X6A0x6A
MCP3424_ADR_0X6B0x6B
MCP3424_ADR_0X6C0x6C
MCP3424_ADR_0X6D0x6D
MCP3424_ADR_0X6E0x6E
MCP3424_ADR_0X6F0x6F

MCP3424_CHANNEL

Recense les voies d'acquisition possibles d'un composant MCP3424 sur un bus I2C.


Elément Valeur
MCP3424_CHANNEL_10x00
MCP3424_CHANNEL_20x20
MCP3424_CHANNEL_30x40
MCP3424_CHANNEL_40x60

MCP3424_RESOLUTION

Recense les résolutions d'acquisition possibles d'un composant MCP3424 sur un bus I2C.


Elément Valeur
MCP3424_RESOLUTION_120x00
MCP3424_RESOLUTION_140x04
MCP3424_RESOLUTION_160x08
MCP3424_RESOLUTION_180x0C

MCP3424_GAIN

Recense les résolutions d'acquisition possibles d'un composant MCP3424 sur un bus I2C.


Elément Valeur
MCP3424_GAIN_10x00
MCP3424_GAIN_20x01
MCP3424_GAIN_40x02
MCP3424_GAIN_80x03

MCP9808_ADR

Recense les adresses possibles d'un composant MCP9808 sur un bus I2C.


Elément Valeur
MCP9808_ADR_0X180x18
MCP9808_ADR_0X190x19
MCP9808_ADR_0X200x20
MCP9808_ADR_0X210x21
MCP9808_ADR_0X220x22
MCP9808_ADR_0X230x23
MCP9808_ADR_0X240x24
MCP9808_ADR_0X250x25

MCP9808_REGISTER

Recense les registres d'un composant MCP9808 sur un bus I2C.


Elément Valeur)
MCP9808_REG_CONFIG 0x01
MCP9808_REG_UPPER_TEMP 0x02
MCP9808_REG_LOWER_TEMP 0x03
MCP9808_REG_CRIT_TEMP 0x04
MCP9808_REG_AMBIENT_TEMP0x05
MCP9808_REG_MANUF_ID 0x06
MCP9808_REG_DEVICE_ID 0x07

MCP23017_ADR

Recense les adresses possibles d'un composant MCP23017 sur un bus I2C.


Elément Valeur
MCP23017_ADR_0X200x20
MCP23017_ADR_0X210x21
MCP23017_ADR_0X220x22
MCP23017_ADR_0X230x23
MCP23017_ADR_0X240x24
MCP23017_ADR_0X250x25
MCP23017_ADR_0X260x26
MCP23017_ADR_0X270x27

MCP23017_PORT

Recense les ports numériques présents sur un composant MCP23017.


Elément Valeur
MCP23017_PORT_00x00 - Port 0
MCP23017_PORT_10x01 - Port 1

MCP23017_PORT_DIR

Recense les directions (entrée ou sortie) des ports numériques présents sur un composant MCP23017.


Elément Valeur
MCP23017_PORT_DIR_OUTPUT0x00 - Port en sortie
MCP23017_PORT_DIR_INPUT0xFF - Port en entrée

MCP23017_REGISTER

Recense les registres d'un composant MCP23017.


Elément Valeur
MCP23017_REG_IODIR0 0x00
MCP23017_REG_IODIR1 0x01
MCP23017_REG_IOPOL0 0x02
MCP23017_REG_IOPOL1 0x03
MCP23017_REG_GPINTEN00x04
MCP23017_REG_GPINTEN10x05
MCP23017_REG_DEFVAL0 0x06
MCP23017_REG_DEFVAL1 0x07
MCP23017_REG_INTCON0 0x08
MCP23017_REG_INTCON1 0x09
MCP23017_REG_IOCON 0x0A
MCP23017_REG_GPPU0 0x0C
MCP23017_REG_GPPU1 0x0D
MCP23017_REG_INTF0 0x0E
MCP23017_REG_INTF1 0x0F
MCP23017_REG_INTCAP0 0x10
MCP23017_REG_INTCAP1 0x11
MCP23017_REG_GPIO0 0x12
MCP23017_REG_GPIO1 0x13
MCP23017_REG_OLAT0 0x14
MCP23017_REG_OLAT1 0x15

TLS2591_REGISTER

Recense les registres d'un composant TLS2591.


Elément Valeur
TLS2591_CONTROL_REG 0xA0
TLS2591_TIMING_REG 0xA1
TLS2591_THRESHOLDLOWLOW_REG 0xA4
TLS2591_THRESHOLDLOWHIGH_REG 0xA5
TLS2591_THRESHOLDHIGHLOW_REG 0xA6
TLS2591_THREASHOLDHIGHHIGH_REG 0xA7
TLS2591_NOPERSIST_THRESHOLDLOWLOW_REG 0xA8
TLS2591_NOPERSIST_THRESHOLDLOWHIGH_REG 0xA9
TLS2591_NOPERSIST_THRESHOLDHIGHLOW_REG 0xAA
TLS2591_NOPERSIST_THRESHOLDHIGHHIGH_REG 0xAB
TLS2591_PERSIST_REG 0xAC
TLS2591_PID_REG 0xB1
TLS2591_ID_REG 0xB2
TLS2591_STATUS_REG 0xB3
TLS2591_DATA0LOW_REG 0xB4
TLS2591_DATA0HIGH_REG 0xB5
TLS2591_DATA1LOW_REG 0xB6
TLS2591_DATA1HIGH_REG 0xB7

TLS2591_GAIN

Recense les gains possibles lors des mesures de luminosité avec un composant TLS2591.


Elément Valeur
TLS2591_GAIN_LOW 0x00
TLS2591_GAIN_MED 0x10
TLS2591_GAIN_HI 0x20
TLS2591_GAIN_MAX 0x30

TLS2591_TINT

Recense les durées d'intégration en mlillisecondes possibles lors des mesures de luminosité avec un composant TLS2591.


Elément Valeur
TLS2591_TINT_100 0x00
TLS2591_TINT_200 0x01
TLS2591_TINT_300 0x02
TLS2591_TINT_400 0x03
TLS2591_TINT_500 0x04
TLS2591_TINT_600 0x05

VEML6075_REGISTER

Recense les registres d'un composant VEML6075.


Elément Valeur
VEML6075_CONFIGURATION_REG 0x00
VEML6075_UVA_REG 0x07
VEML6075_UVB_REG 0x09
VEML6075_UVCOMP1_REG 0x0A
VEML6075_UVCOMP2_REG 0x0B
VEML6075_ID_REG 0x0C

VEML6075_INTEGRATION_TIME

Recense les durées d'intégration des mesures UV d'un composant VEML6075.


Elément Valeur
VEML6075_INTEGRATION_TIME_50MS 0
VEML6075_INTEGRATION_TIME_100MS 1
VEML6075_INTEGRATION_TIME_200MS 2
VEML6075_INTEGRATION_TIME_400MS 3
VEML6075_INTEGRATION_TIME_800MS 4

VEML6075_DYNAMIC_SETTING

Recense les gammes dynamiques des mesures UV d'un composant VEML6075.


Elément Valeur
VEML6075_DYNAMIC_SETTING_NORMAL 0
VEML6075_DYNAMIC_SETTING_HIGH 8

UV_INDEX_CLASS

Recense les indices UV selon la norme ISO.


Elément Valeur
UV_INDEX_CLASS_LOW
UV_INDEX_CLASS_MODERATE
UV_INDEX_CLASS_HIGH
UV_INDEX_CLASS_VERY_HIGH
UV_INDEX_CLASS_EXTREM

Types


La librairie définie les types suivants :

RGB565

Le type RGB565 défini des couleurs codées sur 16 bit (soit 65536 couleurs) ou la composante bleu est codée sur les bit 0 à 4, la composante verte est codée sur les bit 5 à 10 et la composante rouge sur les bits 11 à15. Ce type est utilisé par les classe CLCD7789 et CLCD7789PaintDevice pour définir les couleurs applicables au LCD.


typedef uint16_t RGB565;

Constantes


La librairie définie les constantes suivantes :


Nom Type Valeur
CLCD7789::LCDWidth uint16_t 240
CLCD7789::LCDHeight uint16_t 320
CLCD7789::Black RGB565 0x0000
CLCD7789::White RGB565 0xFFFF
CLCD7789::Red RGB565 0xF800
CLCD7789::DarkRed RGB565 0x8000
CLCD7789::Green RGB565 0x07E0
CLCD7789::DarkGreen RGB565 0x0400
CLCD7789::Blue RGB565 0x001F
CLCD7789::DarkBlue RGB565 0x0010
CLCD7789::Cyan RGB565 0x07FF
CLCD7789::DarkCyan RGB565 0x0410
CLCD7789::Magenta RGB565 0xF81F
CLCD7789::DarkMagenta RGB565 0x8010
CLCD7789::Yellow RGB565 0xFFE0
CLCD7789::DarkYellow RGB565 0x8400
CLCD7789::Gray RGB565 0xA514
CLCD7789::DarkGray RGB565 0x8410
CLCD7789::LightGray RGB565 0xC618

Macros


La librairie définie les constantes suivantes sous forme de macros :


Nom Valeur Définition
DS_3231_I2C_ADDRESS 0x68 Adresse fixe sur bus I2C d'un composent DS3231
TLS2591_I2C_ADDRESS 0x29 Adresse fixe sur bus I2C d'un composent TLS2591
TLS2591_POWERUP 0x03 Octet de commande de démarrage d'un composent TLS2591
TLS2591_POWERDOWN 0x00 Octet de commande de d'arrêt d'un composent TLS2591
TSL2591_LUX_DF (408.0F) Coefficient de conversion en lux d'une msure sur composent TLS2591
VEML6075_DEVICE_ID 0x26 Identificateur d'un composant VEML6075
VEML6075_I2C_ADDRESS 0x10 Adresse fixe sur bus I2C d'un composent VEML6075