Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Dlouho jsem hledal výškoměr a teplotu pomocí jediného senzoru a zobrazoval jej na OLED založeném na SPI. Protože jsem nemohl najít nic přesného, napadlo mě, že bych si postavil vlastní pomocí knihovny U8glib. Na youtube je jeden návod, ale video návody opravdu nesnáším, dávám přednost textům s přímočarým návodem a bez komerčních odkazů.
Krok 1: Nejprve první věci
Před provedením tohoto projektu vám důrazně doporučuji dokončit výukový program SSD1306/OLED pro I2C nebo SPI (podle toho, co chcete použít). Tím zajistíte, že budete vědět, jak připojit/zapojit displej, stejně jako displej funguje. Proveďte výukový program adafruit a/nebo u8glib. Budeme zde používat u8glib, takže je to doporučeno pro pokročilé.
Krok 2: Nezbytné hardwares
1. Arduino UNO nebo Nano nebo podobné.
2. Barometrický snímač tlaku BMP085 nebo BMP180.
3. Sběrnice SSD1306 I2C nebo SPI (konfigurovatelné v náčrtu).
4. Propojovací vodiče a prkénko nebo vero deska pro připojení.
Krok 3: Arduino IDE knihovny pro kompilaci
1. Wire.h
2. Adafruit_BMP085.h (bude fungovat i pro BMP180)
3. U8glib.h
Krok 4: Připojení
Připojení jsou stejná pro I2C i SPI OLED displej. Pouze připojení k displeji se bude lišit.
1. BMP na Arduino:
VCC> 3,3 V.
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ální 12)
SDA/D1/Mosi> D11
Vyberte CS/Chip> D10
A0/DC> D9
RES/Reset> D13
(Pokud váš SPI OLED nemá resetovací pin, odstraňte resetovací a resetovací pin z parametrů výběru zobrazení skici)
3. I2C OLED
Stejné jako zapojení BMP, používají stejné porty a typ sběrnice.
Krok 5: Nahrání skici
Docela přímočarý. Stačí stáhnout soubor zip a otevřít v Arduino IDE. Vše je nakonfigurováno v náčrtu. Uživatelé SPI OLED mohou jednoduše načíst skicu bez jakýchkoli úprav a bude fungovat. Pro uživatele I2C OLED stačí odkomentovat zobrazované jméno/možnost z možnosti Zobrazit výběr náčrtu, komentovat a zavřít model/parametr SPI Display, aby se SPI OLED deaktivoval.
Parametr zobrazení SPI:
// U8GLIB_SSD1306_128X64 u8g (12, 11, 10, 9, 13); // SW SPI Com: SCK = 12, MOSI = 11, CS = 10, A0 = 9, Reset = 13
Parametr zobrazení I2C:
// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // Zobrazení, které neodesílá AC
Chcete-li parametr povolit, zrušte označení // na začátku a zrušte jeho komentář. Ujistěte se, že je vybrán/bez komentářů pouze jeden displej.
Tipy:
1. Senzory BMP jsou citlivé na vítr, teplo a světlo. Ujistěte se, že je zakryjte, nejlepších výsledků je dosaženo připevněním pěny s řádným větráním. Věci jako kachní páska budou také fungovat, ale nebudou přesné.
2. BMP obvykle používá 3,3 V, pokud váš výrobce neuvádí jinak. OLED může fungovat od 3,3v-5,5V (doporučeno 4-5V)
3. Důrazně doporučujeme nastavit vše nejprve na prkénko.
4. Pokud jste s OLED noví, vyzkoušejte nejprve jednoduché položky, jako jsou textové a fiktivní vyrovnávací paměti, abyste se ujistili, že váš displej funguje a vaše připojení jsou přesná.