Table des matières:

Altimètre Arduino utilisant BMP et SPI ou I2C OLED : 5 étapes
Altimètre Arduino utilisant BMP et SPI ou I2C OLED : 5 étapes

Vidéo: Altimètre Arduino utilisant BMP et SPI ou I2C OLED : 5 étapes

Vidéo: Altimètre Arduino utilisant BMP et SPI ou I2C OLED : 5 étapes
Vidéo: Урок 96: Датчик атмосферного давления, температуры, приблизительной высоты BMP390 с ЖК-дисплеем 2024, Juillet
Anonim
Altimètre Arduino utilisant BMP et SPI ou I2C OLED
Altimètre Arduino utilisant BMP et SPI ou I2C OLED

Pendant longtemps, j'ai recherché l'altimètre et la température à l'aide d'un seul capteur et je les ai affichés sur OLED basé sur SPI. Comme je n'ai rien trouvé de précis, j'ai pensé construire le mien en utilisant la bibliothèque U8glib. Il y a un tutoriel sur youtube mais je déteste vraiment les tutoriels vidéo, je préfère les textes avec des instructions simples et sans liens commerciaux.

Étape 1: Tout d'abord

Avant de faire ce projet, je vous recommande fortement de suivre le didacticiel SSD1306/OLED pour I2C ou SPI (selon ce que vous souhaitez utiliser). Cela garantira que vous savez comment connecter/câbler votre écran et que votre écran fonctionne. Faites le didacticiel adafruit et/ou le didacticiel d'exemples u8glib. Nous utiliserons ici u8glib, ce qui est recommandé pour les utilisateurs avancés.

Étape 2: Matériels nécessaires

Matériels nécessaires
Matériels nécessaires

1. Arduino UNO ou Nano ou similaire.

2. Capteur de pression barométrique BMP085 ou BMP180.

3. SSD1306 I2C ou SPI Bus (Configurable dans le croquis).

4. Cavaliers et planche à pain ou carte vero pour les connexions.

Étape 3: Bibliothèques IDE Arduino pour la compilation

1. Fil.h

2. Adafruit_BMP085.h (fonctionnera également pour BMP180)

3. U8glib.h

Étape 4: Connexions

Les connexions sont toutes les mêmes pour les écrans I2C et SPI OLED. Seule la connexion à l'affichage sera différente.

1. BMP vers Arduino:

VCC > 3,3 V

GND > Terre

SCL > A5/SCL

SDA > A4/SDA

SCK = 12, MOSI = 11, CS = 10, A0 = 9, Réinitialiser = 13

2. SPI OLED vers Arduino

Disque dur > 5V

GND > Terre

SCK/D0 > D12 (numérique 12)

SDA/D1/Mosi > D11

CS/Sélection puce > D10

A0/DC > D9

RES/Réinitialiser > D13

(Si votre SPI OLED n'a pas de broche de réinitialisation dessus, supprimez simplement la réinitialisation et la réinitialisation de la broche des paramètres de sélection de l'affichage du croquis)

3. I2C OLED

Identique au câblage BMP, ils utilisent les mêmes ports et le même type de bus.

Étape 5: Téléchargement du croquis

Assez simple. Il suffit de télécharger le fichier zip et de l'ouvrir dans Arduino IDE. Tout est configuré dans le croquis. Les utilisateurs de SPI OLED peuvent simplement télécharger le croquis sans aucune modification et cela fonctionnera. Pour les utilisateurs I2C OLED, décommentez simplement votre nom d'affichage/option de l'option Sélection d'affichage du croquis, puis commentez et fermez le modèle/paramètre d'affichage SPI pour désactiver SPI OLED.

Paramètre d'affichage SPI:

//U8GLIB_SSD1306_128X64 u8g(12, 11, 10, 9, 13); // SW SPI Com: SCK = 12, MOSI = 11, CS = 10, A0 = 9, Reset = 13

Paramètre d'affichage I2C:

//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NO_ACK); // Affichage qui n'envoie pas d'AC

Pour activer un paramètre, supprimez simplement le signe // au début pour le dé-commenter. Assurez-vous qu'un seul affichage est sélectionné/non commenté.

Conseils:

1. Les capteurs BMP sont sensibles au vent, à la chaleur et à la lumière. Assurez-vous de le couvrir, les meilleurs résultats sont obtenus en fixant une mousse avec une ventilation appropriée dessus. Des choses comme le ruban de canard fonctionneront aussi mais ne seront pas précises.

2. BMP utilise généralement 3,3 V, sauf indication contraire de votre fabricant. OLED peut fonctionner de 3.3v-5.5V (4-5V recommandé)

3. Tout régler d'abord sur la planche à pain est fortement recommandé.

4. Si vous êtes nouveau sur OLED, essayez d'abord des choses simples comme du texte et des tampons factices pour vous assurer que votre affichage fonctionne ainsi que vos connexions sont précises.

Conseillé: