Mündəricat:

BMP və SPI və ya I2C OLED istifadə edərək Arduino Altimetr: 5 addım
BMP və SPI və ya I2C OLED istifadə edərək Arduino Altimetr: 5 addım

Video: BMP və SPI və ya I2C OLED istifadə edərək Arduino Altimetr: 5 addım

Video: BMP və SPI və ya I2C OLED istifadə edərək Arduino Altimetr: 5 addım
Video: SSD1306 128x32 OLED Ekran I2C Arduino kodu ilə necə istifadə olunur 2024, Noyabr
Anonim
BMP və SPI və ya I2C OLED istifadə edərək Arduino Altimetr
BMP və SPI və ya I2C OLED istifadə edərək Arduino Altimetr

Uzun müddətdir tək bir sensordan istifadə edərək altimetr və temperatur axtarıram və SPI əsaslı OLED -də göstərirəm. Dəqiq bir şey tapa bilmədiyim üçün U8glib kitabxanasından istifadə edərək öz kitabımı quracağımı düşündüm. YouTube -da bir dərs var, amma həqiqətən video dərslərindən nifrət edirəm, sadə təlimatları olan və heç bir kommersiya bağlantısı olmayan mətnlərə üstünlük verirəm.

Addım 1: İlk şeylər əvvəlcə

Bu layihəni etməzdən əvvəl, I2C və ya SPI üçün SSD1306/OLED təlimatını (istifadə etmək istədiyiniz) tamamlamanızı şiddətlə tövsiyə edirəm. Bu, ekranınızı necə bağlayacağınızı/bağlayacağınızı və ekranınızın işlədiyini təmin edəcək. Adafruit dərsliyi və/və ya u8glib nümunələri dərsliyi edin. Burada u8glib istifadə edəcəyik ki, qabaqcıl istifadəçilər üçün tövsiyə olunsun.

Addım 2: Lazımi Hardware

Lazımi Avadanlıqlar
Lazımi Avadanlıqlar

1. Arduino UNO və ya Nano və ya bənzəri.

2. BMP085 və ya BMP180 Barometrik Təzyiq Sensoru.

3. SSD1306 I2C və ya SPI Avtobusu (Eskizlə konfiqurasiya edilə bilər).

4. Bağlantılar üçün tullanan tellər və çörək taxtası və ya vero taxtası.

Addım 3: Tərtib etmək üçün Arduino IDE Kitabxanaları

1. Tel.h

2. Adafruit_BMP085.h (BMP180 üçün də işləyəcək)

3. U8glib.h

Addım 4: Bağlantılar

Bağlantılar həm I2C, həm də SPI OLED ekran üçün eynidır. Yalnız göstərmək üçün əlaqə fərqli olacaq.

1. Arduinoya BMP:

VCC> 3.3V

GND> Torpaq

SCL> A5/SCL

SDA> A4/SDA

SCK = 12, MOSI = 11, CS = 10, A0 = 9, Sıfırla = 13

2. Arduino üçün SPI OLED

VDD> 5V

GND> Torpaq

SCK/D0> D12 (Rəqəmsal 12)

SDA/D1/Mosi> D11

CS/Chip seçin> D10

A0/DC> D9

RES/Sıfırla> D13

(SPI OLED -də sıfırlama pimi yoxdursa, sıfırlama və sıfırlama pinini sketch displeyindən seçin.

3. I2C OLED

BMP naqilləri ilə eyni, eyni limanlardan və avtobus tipindən istifadə edirlər.

Addım 5: Sketch Yükləmə

Olduqca sadə. Yalnız zip faylını yükləyin və Arduino IDE -də açın. Hər şey eskizdə qurulmuşdur. SPI OLED istifadəçiləri heç bir düzəliş etmədən eskizi yükləyə bilər və işləyəcək. I2C OLED istifadəçiləri üçün, eskizin Display Select seçimindən görüntü adınızı/seçiminizi qeyd edin və SPI OLED -ni söndürmək üçün SPI Display modelini/parametrini şərh edin və bağlayın.

SPI Ekran Parametrləri:

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

I2C Ekran Parametrləri:

// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // AC göndərməyən ekran

Bir parametri aktiv etmək üçün şərh yazmamaq üçün əvvəlində // işarəsini silin. Yalnız bir ekranın seçildiyinə/şərh edilmədiyinə əmin olun.

Göstərişlər:

1. BMP sensorlar küləyə, istiyə və işığa həssasdır. Üstünü örtdüyünüzdən əmin olun, ən yaxşı nəticələr üzərinə düzgün havalandırma olan bir Köpük bağlayaraq əldə edilir. Ördək lenti kimi şeylər də işləyəcək, amma dəqiq olmayacaq.

2. İstehsalçınız başqa cür demədikdə BMP ümumiyyətlə 3.3V istifadə edir. OLED 3.3v-5.5V arasında işləyə bilər (4-5V tövsiyə olunur)

3. Hər şeyi əvvəlcə çörək taxtasına yerləşdirmək şiddətlə tövsiyə olunur.

4. OLED -də yenisinizsə, zəhmət olmasa ur ekranınızın yaxşı işlədiyinə əmin olmaq üçün mətn və kukla tamponları kimi sadə məhsulları sınayın.

Tövsiyə: