Sisällysluettelo:

Arduino -korkeusmittari BMP: n ja SPI: n tai I2C OLEDin avulla: 5 vaihetta
Arduino -korkeusmittari BMP: n ja SPI: n tai I2C OLEDin avulla: 5 vaihetta

Video: Arduino -korkeusmittari BMP: n ja SPI: n tai I2C OLEDin avulla: 5 vaihetta

Video: Arduino -korkeusmittari BMP: n ja SPI: n tai I2C OLEDin avulla: 5 vaihetta
Video: Как использовать SSD1306 128x32 OLED-дисплей I2C с кодом Arduino 2024, Marraskuu
Anonim
Arduino -korkeusmittari käyttäen BMP: tä ja SPI: tä tai I2C OLEDia
Arduino -korkeusmittari käyttäen BMP: tä ja SPI: tä tai I2C OLEDia

Olen pitkään etsinyt korkeusmittaria ja lämpötilaa yhdellä anturilla ja näyttänyt sen SPI -pohjaiselle OLEDille. Koska en löytänyt mitään tarkkaa, ajattelin rakentaa oman U8glib -kirjaston avulla. Youtubessa on yksi opetusohjelma, mutta vihaan todella video -opetusohjelmia, mieluummin tekstejä, joissa on suorat ohjeet ja ilman kaupallisia linkkejä.

Vaihe 1: Ensimmäiset asiat ensin

Ennen kuin teet tämän projektin, suosittelen sinua suorittamaan SSD1306/OLED -opetusohjelman I2C: lle tai SPI: lle (kumpi tahansa haluat käyttää). Näin varmistat, että osaat kytkeä/kytkeä näytön ja että näyttö toimii. Suorita adafruit -opetusohjelma ja/tai u8glib -esimerkkiopetusohjelma. Käytämme täällä u8glibia, joten sitä suositellaan kokeneelle käyttäjälle.

Vaihe 2: Tarvittavat laitteistot

Tarvittavat laitteistot
Tarvittavat laitteistot

1. Arduino UNO tai Nano tai vastaava.

2. BMP085 tai BMP180 barometrinen paineanturi.

3. SSD1306 I2C- tai SPI -väylä (määritettävissä luonnoksessa).

4. Hyppyjohdot ja leipälauta tai verolevy liitäntöjä varten.

Vaihe 3: Arduino IDE -kirjastot kääntämistä varten

1. Johto. H

2. Adafruit_BMP085.h (toimii myös BMP180: lle)

3. U8glib.h

Vaihe 4: Liitännät

Liitännät ovat samat sekä I2C- että SPI OLED -näytössä. Vain näyttöyhteys on erilainen.

1. BMP Arduinolle:

VCC> 3.3V

GND> Maa

SCL> A5/SCL

SDA> A4/SDA

SCK = 12, MOSI = 11, CS = 10, A0 = 9, nollaus = 13

2. SPI OLED Arduinolle

VDD> 5V

GND> Maa

SCK/D0> D12 (digitaalinen 12)

SDA/D1/Mosi> D11

CS/Chip Valitse> D10

A0/DC> D9

RES/Reset> D13

(Jos SPI OLED -laitteessasi ei ole nollausnasta, poista vain nollaus- ja nollaustappi luonnosnäytön valintaparametreista)

3. I2C OLED

Sama kuin BMP -johdotus, ne käyttävät samoja portteja ja väylätyyppiä.

Vaihe 5: Luonnoksen lataaminen

Melko suoraviivainen. Lataa vain zip -tiedosto ja avaa se Arduino IDE: ssä. Kaikki on määritetty luonnoksessa. SPI OLED -käyttäjät voivat vain ladata luonnoksen ilman muokkausta ja se toimii. Jos käytät I2C OLED -käyttäjiä, poista esille näyttönimesi/-vaihtoehtosi luonnoksen Näytön valinta -vaihtoehdosta ja kommentoi ja sulje SPI -näyttömalli/-parametri SPI OLEDin poistamiseksi käytöstä.

SPI -näyttöparametri:

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

I2C -näytön parametri:

// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // Näyttö, joka ei lähetä vaihtovirtaa

Voit ottaa parametrin käyttöön poistamalla // -merkin alussa, jotta voit poistaa sen kommentin. Varmista, että vain yksi näyttö on valittu/poistettu kommentilta.

Vinkkejä:

1. BMP -anturit ovat herkkiä tuulelle, kuumuudelle ja valolle. Muista peittää se, parhaat tulokset saavutetaan kiinnittämällä vaahto, jossa on asianmukainen ilmanvaihto. Ankkanauhan kaltaiset asiat toimivat myös, mutta eivät ole tarkkoja.

2. BMP käyttää yleensä 3.3V, ellei valmistajasi toisin määrää. OLED voi toimia 3,3–5,5 V: n (suositus 4-5 V)

3. On suositeltavaa asettaa kaikki ensin leipälaudalle.

4. Jos olet uusi OLED -laitteessa, kokeile ensin yksinkertaisia materiaaleja, kuten tekstiä ja nukkepuskureita, varmistaaksesi, että näyttö toimii ja että liitännät ovat oikein.

Suositeltava: