Obsah:

Výškomer Arduino pomocou OLP BMP a SPI alebo I2C: 5 krokov
Výškomer Arduino pomocou OLP BMP a SPI alebo I2C: 5 krokov

Video: Výškomer Arduino pomocou OLP BMP a SPI alebo I2C: 5 krokov

Video: Výškomer Arduino pomocou OLP BMP a SPI alebo I2C: 5 krokov
Video: Arduino Altimeter 2024, November
Anonim
Výškomer Arduino pomocou OLED BMP a SPI alebo I2C
Výškomer Arduino pomocou OLED BMP a SPI alebo I2C

Dlho som hľadal výškomer a teplotu pomocou jediného senzora a zobrazoval som ho na OLED na báze SPI. Keďže som nič presné nenašiel, napadlo ma, že by som si postavil vlastné pomocou knižnice U8glib. Na youtube je jeden návod, ale veľmi neznášam videonávody, uprednostňujem texty s jednoduchými pokynmi a žiadne komerčné odkazy.

Krok 1: Najskôr najskôr

Pred vykonaním tohto projektu vám dôrazne odporúčam vyplniť návod SSD1306/OLED pre I2C alebo SPI (podľa toho, čo chcete použiť). Zaistíte tým, že budete vedieť, ako pripojiť/zapojiť displej, ako aj váš displej funguje. Vykonajte tutoriál adafruit a/alebo u8glib príklady. Tu budeme používať u8glib, takže je odporúčaný pre pokročilých používateľov.

Krok 2: Potrebné hardvéry

Potrebné hardvérové vybavenie
Potrebné hardvérové vybavenie

1. Arduino UNO alebo Nano alebo podobné.

2. Senzor barometrického tlaku BMP085 alebo BMP180.

3. Zbernica SSD1306 I2C alebo SPI (konfigurovateľné v náčrte).

4. Prepojovacie vodiče a prepojovacia doska alebo doska vero pre pripojenia.

Krok 3: Knižnice IDE Arduino na kompiláciu

1. Wire.h

2. Adafruit_BMP085.h (bude fungovať aj pre BMP180)

3. U8glib.h

Krok 4: Pripojenia

Pripojenia sú rovnaké pre displej I2C aj SPI OLED. Iba pripojenie k displeju sa bude líšiť.

1. BMP na Arduino:

VCC> 3,3V

GND> Zem

SCL> A5/SCL

SDA> A4/SDA

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

2. SPI OLED na Arduino

VDD> 5V

GND> Zem

SCK/D0> D12 (digitálny 12)

SDA/D1/Mosi> D11

Vyberte CS/Chip> D10

A0/DC> D9

RES/Reset> D13

(Ak váš SPI OLED nemá resetovací kolík, odstráňte resetovací a resetovací pin z parametrov výberu náčrtu)

3. I2C OLED

Rovnaké ako zapojenie BMP, používajú rovnaké porty a typ zbernice.

Krok 5: Nahranie náčrtu

Celkom priamočiare. Stačí stiahnuť súbor zip a otvoriť v Arduino IDE. Všetko je nakonfigurované v náčrte. Používatelia SPI OLED môžu jednoducho nahrať skicu bez akýchkoľvek úprav a bude fungovať. V prípade používateľov I2C OLED stačí odkomentovať zobrazované meno/možnosť z možnosti Zobraziť výber náčrtu, komentovať a zatvoriť model/parameter SPI Display, čím vypnete SPI OLED.

Parameter zobrazenia SPI:

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

Parameter zobrazenia I2C:

// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // Displej, ktorý neposiela AC

Ak chcete povoliť parameter, stačí zrušiť označenie // na začiatku, aby ste ho mohli zrušiť. Zaistite, aby bol vybratý/bez komentárov iba jeden displej.

Rady:

1. Senzory BMP sú citlivé na vietor, teplo a svetlo. Uistite sa, že ste ho zakryli, najlepšie výsledky dosiahnete pripevnením peny s riadnym vetraním. Veci ako kačacia páska budú tiež fungovať, ale nebudú presné.

2. BMP obvykle používa 3,3 V, pokiaľ váš výrobca neuvádza inak. OLED môže fungovať od 3,3 V do 5,5 V (odporúča sa 4 až 5 V)

3. Dôrazne sa odporúča najskôr nastaviť všetko na dosku.

4. Ak ste s OLED noví, vyskúšajte najskôr jednoduché položky, ako sú textové a atrapy vyrovnávacej pamäte, aby ste sa uistili, že váš displej funguje a vaše pripojenia sú presné.

Odporúča: