Librairie cpp2835

cpp2835 est une librairie personnelle que j'ai développée pour encapsuler la librairie bcm2835. Comme son nom l'indique cpp2835, est une librairie exclusivement dédiée au language C++ sous environnement Qt. Pour des informations sur bcm2835, voir les rubriques suivantes :


 - Installation Librairie bcm2835
 - Exemple : Qt et bcm2835 : Vérification
 - Documentation bcm2835


Au dela de la librairie, je mets à votre disposition le code source de la librairie. Cela permettra à certains d'entre vous de la modifier selon vos besoins, voir à la corriger ou à l'enrichir et l'améliorer. Dans ce cas, faites moi profitez de vos modifications. Ce sera sympa.


cpp2835 n'est pas seulement une encapsulation de bcm2835. Elle incorpore également des classes supportant quelques composants complémentaires accessibles via les bus I2C ou SPI. Ces périphériques sont :


 - Horloge temps réel DS3231 sur bus I2C (classe CDS3231),
 - Mesure de température, pression atmosphérique, humidité relative Bosch BME280 sur bus I2C (classe CBME280),
 - Tout afficheur LCD pilotés par un composant ST7789 sur bus SPI (classes CLCD7789 et CLCD7789PaintDevice),
 - Mesure de température par sondes PT100 via un composant MAX31865 sur bus SPI (classe CMAX31865),
 - Entrées analogiques via un composant MCP3424 sur bus I2C (classe CMCP3424),
 - Entrées et sorties numériques via un composant MCP23017 sur bus I2C (classe CMCP23017),
 - Mesure de température via un composant MCP9808 sur bus I2C (classe CMCP9808),
 - Mesure de luminosité via un composant TLS2591 sur bus I2C (classe CTLS2591),
 - Mesure d'indice UV via un composant VEML6075 sur bus I2C (classe CVEML6075),

Je ne garanti pas que la librairie soit exempte de bugs. Si vous utilisez cette librairie, ce sera sous votre entière responsabilité. Considérez la comme un exemple de programmes. Rien de plus.


Pour ceux qui n'utilisent pas Qt, vous pouvez toujours extraire du code les parties qui vous interesse et les modifer selon vos desideratas. Sachez que les seules classes incluant des appels Qt sont :


 - CDS3231
 - CLCD7789PaintDevice
 - CSleeper
 - CSPIDevice

Il est évident qu'il est impossible d'utiliser cette librairie sur un Raspberry Pi sur lequel Qt, (ou ses librairies d'exécution), et la librairie bcm2835 ne serait pas préalablement installés. Comme disait ma grand mère : "Ca va mieux en le disant."

Installation

Commencez par télécharger le fichier suivant : cpp2835.tar.gz


Je n'ai pas créer de script ou de protocole d'installation spécifique afin de vous laisser installer la librairie et le code source selon vos besoins. Voici toutefois une suggestion d'installation.


Copier le fichier téléchargé vers le répertoire "/home/pi" puis extraire ce fichier. L'extraction créera un répertoire nommé "cpp2835" :


tar zxvf cpp2835.tar.gz


Le répertoire "cpp2835" contiendra 3 sous répertoires :


 - Répertoire "headers" : Contient tous les fichiers d'entêtes.
 - Répertoire "lib" : Contient tous les fichiers librairies (.so).
 - Répertoire "source" : Code source complet.

Si vous souhaitez modifier le code source, je vous conseille de créer un autre répertoire et d'y copier le contenu du répertoire "/home/pi/cpp2835/source" vers un autre répertoire. Cela vous évitera de "polluer" le répertoire "/home/pi/cpp2835" et de conserver une version d'origine du code source.

Documentation

Voir la rubrique : Introduction à la librairie cpp2835

Exemple

Voir la rubrique : Exemple Qt et cpp2835 : Vérification


La prochaine étape : Librairie TXSLib.