Мазмұны:

BMP және SPI немесе I2C OLED көмегімен Arduino альтиметрі: 5 қадам
BMP және SPI немесе I2C OLED көмегімен Arduino альтиметрі: 5 қадам

Бейне: BMP және SPI немесе I2C OLED көмегімен Arduino альтиметрі: 5 қадам

Бейне: BMP және SPI немесе I2C OLED көмегімен Arduino альтиметрі: 5 қадам
Бейне: Как использовать SSD1306 128x32 OLED-дисплей I2C с кодом Arduino 2024, Шілде
Anonim
BMP және SPI немесе I2C OLED көмегімен Arduino Altimeter
BMP және SPI немесе I2C OLED көмегімен Arduino Altimeter

Мен ұзақ уақыт бойы бір сенсордың көмегімен биіктік өлшегіш пен температураны іздедім және оны SPI негізіндегі OLED -де көрсетемін. Мен дәл ештеңе таба алмадым, U8glib кітапханасын пайдаланып өз үйімді құрамын деп ойладым. Ютубта бір оқу құралы бар, бірақ мен видео сабақтарды жек көремін, мен қарапайым нұсқаулықтары бар және коммерциялық сілтемелері жоқ мәтіндерді ұнатамын.

1 -қадам: Бірінші нәрсе бірінші

Бұл жобаны жасамас бұрын, I2C немесе SPI үшін SSD1306/OLED оқулығын аяқтауды ұсынамын (қайсысын қолданғыңыз келеді). Бұл сіздің дисплейді қалай қосуға/қосуға болатынын, сонымен қатар дисплей жұмыс істейтінін білуге кепілдік береді. Adafruit оқулығын және/немесе u8glib мысалдарын жасаңыз. Біз мұнда u8glib қолданамыз, осылайша озық пайдаланушыларға ұсынылады.

2 -қадам: Қажетті жабдықтар

Қажетті жабдықтар
Қажетті жабдықтар

1. Arduino UNO немесе Nano немесе ұқсас.

2. BMP085 немесе BMP180 барометрлік қысым датчигі.

3. SSD1306 I2C немесе SPI шинасы (эскизде конфигурацияланатын).

4. Өткізгіш сымдар мен қосылуға арналған нан тақтасы немесе веро тақта.

3 -қадам: Arduino IDE кітапханалары компиляцияға арналған

1. Wire.h

2. Adafruit_BMP085.h (BMP180 үшін де жұмыс істейді)

3. U8glib.h

4 -қадам: Қосылымдар

Қосылымдар I2C және SPI OLED дисплейі үшін бірдей. Тек көрсету үшін қосылым басқаша болады.

1. Ардуиноға BMP:

VC> 3.3В

GND> Жер

SCL> A5/SCL

SDA> A4/SDA

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

2. SPU OLED Arduino үшін

ВД> 5В

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 OLED өшіру үшін SPI Display үлгісін/параметрін түсіндіріп, жабыңыз.

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); // Айнымалы ток жібермейтін дисплей

Параметрді қосу үшін түсініктеме бермеу үшін басындағы // белгісін алып тастаңыз. Тек бір дисплей таңдалғанына/түсіндірілмегеніне көз жеткізіңіз.

Кеңестер:

1. BMP сенсорлары желге, ыстыққа және жарыққа сезімтал. Оны жауып қойғаныңызға сенімді болыңыз, ең жақсы нәтижеге оған тиісті желдеткіші бар көбікті бекіту арқылы қол жеткізіледі. Үйрек таспасы сияқты нәрселер де жұмыс істейді, бірақ дәл болмайды.

2. Егер сіздің өндіруші басқаша айтпаса, BMP әдетте 3.3V қолданады. OLED 3.3-5.5 В аралығында жұмыс істей алады (4-5 В ұсынылады)

3. Бәрін алдымен тақтаға орнату ұсынылады.

4. Егер сіз OLED -те жаңадан болсаңыз, дисплейдің жұмыс істеп тұрғанына, сондай -ақ байланыстарыңыздың дәл екеніне көз жеткізу үшін алдымен мәтін мен мультимедиялық буфер сияқты қарапайым заттарды қолданып көріңіз.

Ұсынылған: