Բովանդակություն:

Arduino բարձրաչափ ՝ օգտագործելով BMP և SPI կամ I2C OLED ՝ 5 քայլ
Arduino բարձրաչափ ՝ օգտագործելով BMP և SPI կամ I2C OLED ՝ 5 քայլ

Video: Arduino բարձրաչափ ՝ օգտագործելով BMP և SPI կամ I2C OLED ՝ 5 քայլ

Video: Arduino բարձրաչափ ՝ օգտագործելով BMP և SPI կամ I2C OLED ՝ 5 քայլ
Video: Soar To New Heights: Building An Altimeter With BMP180 And Arduino Using ChatGPT Generated Code! 2024, Հուլիսի
Anonim
Arduino բարձրաչափ ՝ օգտագործելով BMP և SPI կամ I2C OLED
Arduino բարձրաչափ ՝ օգտագործելով BMP և SPI կամ I2C OLED

Երկար ժամանակ ես փնտրում էի բարձրաչափ և ջերմաստիճան մեկ սենսորի միջոցով և ցուցադրում այն SPI- ով հիմնված OLED- ով: Քանի որ ճշգրիտ ոչինչ չգտա, մտածեցի, որ ես ինքս կկառուցեմ ՝ օգտագործելով U8glib գրադարանը: YouTube- ում կա մեկ ձեռնարկ, բայց ես իսկապես ատում եմ վիդեո դասընթացները, նախընտրում եմ տեքստեր, որոնք ունեն ուղղակի հրահանգներ և առանց առևտրային հղումների:

Քայլ 1: Առաջին բանը `առաջինը

Նախքան այս նախագիծը կատարելը, ես խստորեն խորհուրդ եմ տալիս լրացնել SSD1306/OLED ձեռնարկը I2C- ի կամ SPI- ի համար (որը ցանկանում եք օգտագործել): Սա կապահովի, որ դուք գիտեք, թե ինչպես միացնել/լարել ձեր էկրանը, ինչպես նաև ձեր էկրանը աշխատում է: Կատարեք adafruit ձեռնարկը և/կամ u8glib օրինակների ձեռնարկը: Մենք այստեղ կօգտագործենք u8glib- ը, այնպես որ խորհուրդ է տրվում առաջադեմ օգտվողներին:

Քայլ 2: Անհրաժեշտ սարքավորումներ

Անհրաժեշտ Hardwares
Անհրաժեշտ Hardwares

1. Arduino UNO կամ Nano կամ նմանատիպ:

2. BMP085 կամ BMP180 Բարոմետրիկ ճնշման ցուցիչ:

3. SSD1306 I2C կամ SPI ավտոբուս (կարգավորելի է ուրվագծում):

4. Jumper լարեր և տախտակ կամ vero տախտակ միացումների համար:

Քայլ 3. Arduino IDE գրադարաններ կազմելու համար

1. Հաղորդալար.հ

2. Adafruit_BMP085.h (կաշխատի նաև BMP180- ի դեպքում)

3. U8glib.h

Քայլ 4: Կապեր

Միացումներն բոլորը նույնն են թե I2C և թե SPI OLED էկրանների համար: Միայն ցուցադրման հետ կապը տարբեր կլինի:

1. BMP դեպի Arduino:

ԵԿԿ> 3.3V

GND> Գրունտ

SCL> A5/SCL

SDA> A4/SDA

SCK = 12, MOSI = 11, CS = 10, A0 = 9, Վերակայել = 13

2. SPI OLED դեպի Arduino

VDD> 5V

GND> Գրունտ

SCK/D0> D12 (թվային 12)

SDA/D1/Mosi> D11

CS/Chip Ընտրել> D10

A0/DC> D9

RES/Reset> D13

(Եթե ձեր SPI OLED- ում չկա Վերակայման քորոց, պարզապես հեռացրեք վերակայման և վերակայման քորիչը էսքիզային ցուցադրումից ընտրեք պարամետրերը)

3. I2C OLED

Նույնը, ինչ BMP էլեկտրագծերը, նրանք օգտագործում են նույն նավահանգիստներն ու ավտոբուսի տեսակը:

Քայլ 5: Էսքիզների վերբեռնում

Բավականին պարզ: Պարզապես ներբեռնեք zip ֆայլը և բացեք Arduino IDE- ում: Էսքիզում ամեն ինչ կազմաձևված է: SPI OLED- ի օգտվողները կարող են պարզապես վերբեռնել էսքիզը ՝ առանց որևէ խմբագրման, և այն կաշխատի: I2C OLED օգտագործողների համար պարզապես նշեք ձեր ցուցադրման անունը/տարբերակը էսքիզի Display Select տարբերակից և մեկնաբանեք և փակեք SPI Display մոդելը/պարամետրը ՝ SPI OLED- ն անջատելու համար:

SPI ցուցադրման պարամետր

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

I2C ցուցադրման պարամետր

// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // Displayուցադրում, որը չի ուղարկում AC

Պարամետրը միացնելու համար պարզապես սկզբից հեռացրեք // նշանը ՝ այն չմեկնաբանելու համար: Համոզվեք, որ միայն մեկ ցուցադրում է ընտրված/չմեկնաբանված:

Հուշումներ.

1. BMP տվիչները զգայուն են քամու, ջերմության և լույսերի նկատմամբ: Համոզվեք, որ այն ծածկեք, լավագույն արդյունքները հասնում են փրփուրը պատշաճ օդափոխությամբ ամրացնելու միջոցով: Բադի ժապավենի նման բաները նույնպես կաշխատեն, բայց ճշգրիտ չեն լինի:

2. BMP- ը սովորաբար օգտագործում է 3.3 Վ, եթե ձեր արտադրողը այլ բան չի ասում: OLED- ը կարող է աշխատել 3.3v-5.5V- ից (առաջարկվում է 4-5V)

3. Խստորեն խորհուրդ է տրվում ամեն ինչ նախքան սեղանի վրա դնելը:

4. Եթե դուք նորեկ եք OLED- ում, խնդրում ենք նախ փորձել պարզ նյութեր, ինչպիսիք են տեքստը և կեղծ բուֆերը, որպեսզի համոզվեք, որ ձեր ցուցադրումն աշխատում է, ինչպես նաև ձեր կապերը ճշգրիտ են:

Խորհուրդ ենք տալիս: