Satura rādītājs:

Arduino altimetrs, izmantojot BMP un SPI vai I2C OLED: 5 soļi
Arduino altimetrs, izmantojot BMP un SPI vai I2C OLED: 5 soļi

Video: Arduino altimetrs, izmantojot BMP un SPI vai I2C OLED: 5 soļi

Video: Arduino altimetrs, izmantojot BMP un SPI vai I2C OLED: 5 soļi
Video: Arduino Nano, BME280 и SSD1306 OLED-метеостанция 2024, Novembris
Anonim
Arduino altimetrs, izmantojot BMP un SPI vai I2C OLED
Arduino altimetrs, izmantojot BMP un SPI vai I2C OLED

Ilgu laiku es meklēju altimetru un temperatūru, izmantojot vienu sensoru, un parādīju to uz SPI balstītu OLED. Tā kā es nevarēju atrast neko precīzu, es domāju izveidot savu, izmantojot U8glib bibliotēku. Youtube ir viena apmācība, bet es ļoti ienīstu video pamācības, es dodu priekšroku tekstiem ar vienkāršiem norādījumiem un bez komerciālām saitēm.

1. darbība. Vispirms pirmās lietas

Pirms šī projekta veikšanas es ļoti iesaku jums pabeigt SSD1306/OLED apmācību I2C vai SPI (neatkarīgi no tā, kuru vēlaties izmantot). Tas nodrošinās, ka jūs zināt, kā savienot/pieslēgt displeju, kā arī displejs darbojas. Veiciet adafruit apmācību un/vai u8glib piemēru apmācību. Mēs šeit izmantosim u8glib, tāpēc tas ir ieteicams pieredzējušiem lietotājiem.

2. darbība. Nepieciešamās aparatūras

Nepieciešamās aparatūras
Nepieciešamās aparatūras

1. Arduino UNO vai Nano vai tamlīdzīgi.

2. BMP085 vai BMP180 barometriskā spiediena sensors.

3. SSD1306 I2C vai SPI kopne (konfigurējams skicē).

4. Jumper vadi un maizes dēlis vai vero dēlis savienojumiem.

3. darbība: Arduino IDE bibliotēkas apkopošanai

1. Vads.h

2. Adafruit_BMP085.h (derēs arī BMP180)

3. U8glib.h

4. darbība. Savienojumi

Savienojumi ir vienādi gan I2C, gan SPI OLED displejam. Tikai savienojums ar displeju būs atšķirīgs.

1. BMP uz Arduino:

VCC> 3.3V

GND> Zeme

SCL> A5/SCL

SDA> A4/SDA

SCK = 12, MOSI = 11, CS = 10, A0 = 9, atiestatīšana = 13

2. SPI OLED uz Arduino

VDD> 5V

GND> Zeme

SCK/D0> D12 (digitālais 12)

SDA/D1/Mosi> D11

CS/mikroshēma Izvēlieties> D10

A0/DC> D9

RES/Reset> D13

(Ja jūsu SPI OLED nav atiestatīšanas tapas, vienkārši noņemiet atiestatīšanas un atiestatīšanas tapu no skices displeja atlases parametriem)

3. I2C OLED

Tāpat kā BMP vadi, tie izmanto tos pašus portus un kopnes tipu.

5. darbība. Skices augšupielāde

Diezgan vienkārši. Vienkārši lejupielādējiet zip failu un atveriet to Arduino IDE. Viss ir konfigurēts skicē. SPI OLED lietotāji var vienkārši augšupielādēt skici bez jebkādas rediģēšanas, un tā darbosies. I2C OLED lietotājiem vienkārši noņemiet komentāru par savu redzamo vārdu/opciju no skices opcijas Displeja atlase un komentējiet un aizveriet SPI displeja modeli/parametru, lai atspējotu SPI OLED.

SPI displeja parametrs:

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

I2C displeja parametrs:

// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // Displejs, kas nesūta maiņstrāvu

Lai iespējotu parametru, vienkārši noņemiet // zīmi sākumā, lai noņemtu tā komentārus. Pārliecinieties, vai ir atlasīts/nav komentēts tikai viens displejs.

Padomi:

1. BMP sensori ir jutīgi pret vēju, karstumu un gaismu. Pārliecinieties, ka tas ir pārklāts, vislabākos rezultātus var sasniegt, piestiprinot putas ar pienācīgu ventilāciju. Darbosies arī tādas lietas kā pīļu lente, taču tās nebūs precīzas.

2. BMP parasti izmanto 3.3V, ja vien jūsu ražotājs nav norādījis citādi. OLED var darboties no 3.3v-5.5V (ieteicams 4-5V)

3. Ļoti ieteicams vispirms iestatīt visu uz maizes dēļa.

4. Ja esat jauns OLED lietotājs, vispirms izmēģiniet vienkāršas lietas, piemēram, tekstu un fiktīvus buferus, lai pārliecinātos, ka ekrāns darbojas un savienojumi ir precīzi.

Ieteicams: