Pilnīga rokasgrāmata: 0.96 collu OLED displeji ar Arduino

OLED

OLED displejs ir kļuvis par populāru izvēli integrēšanai Arduino projektos, galvenokārt tāpēc, ka tas ir kompakts, tam ir zems enerģijas patēriņš un tas nodrošina izcilu redzamību pat gaišā vidē. Turklāt, pateicoties vienkāršajam savienojumam, tā lietošana ir pieejama ikvienam elektronikas entuziastam neatkarīgi no viņu pieredzes. Šajā rakstā mēs padziļināti aplūkosim, kā savienot un programmēt 0.96 collu OLED displeju ar Arduino, detalizēti aprakstot gan tehniskos aspektus, gan piedāvājot praktiskus kodu piemērus.

Ja jūs nekad neesat strādājis ar OLED displeju, ir daži galvenie punkti, kas jums jāzina pirms projekta uzsākšanas. OLED (Organic Light Emitting Diode) būtiski atšķiras no cita veida ekrāniem, piemēram, LCD. Piemēram, OLED nav nepieciešams fona apgaismojums, kas ievērojami samazina enerģijas patēriņu. Tik mazos ekrānos kā 0.96 collas tas var būt svarīgi, ja projekts tiek darbināts ar akumulatoru. Tagad iedziļināsimies tās funkcijās.

Kas ir OLED ekrāns?

OLED ekrāns ir displeja veids, kurā tiek izmantots organisks savienojums, kas izstaro gaismu, kad tiek pielietota elektriskā strāva. Tas padara tos ideāli piemērotus daudziem elektronikas projektiem, jo ​​to tehnoloģija ļauj katram pikselim izgaismoties atsevišķi, kas arī uzlabo redzamību ārpus telpām. Lielākajai daļai Arduino paredzēto OLED ekrānu ir SSD1306 kontrolleris, kas ļauj pārvaldīt signālu nosūtīšanu uz ekrānu. Faktiski SSD1306 ir viens no visizplatītākajiem Arduino projektos, un mēs to redzēsim piemēros vēlāk.

Viena no galvenajām OLED ekrānu priekšrocībām ir to zemais patēriņš. Vidēji neliels 0.96 collu ekrāns var patērēt aptuveni 20 mA. Kāpēc tas ir svarīgi? Ja Arduino projekta darbināšanai izmantojat akumulatoru, enerģijas patēriņa samazināšana vienmēr ir ievērojams pluss. Turklāt tā 128x64 pikseļu izšķirtspēja var attēlot attēlus ar diezgan labu asumu, ņemot vērā tā izmēru.

No otras puses, viena no problēmām, kas varētu rasties ar šāda veida ekrānu, ir tā, ka tā izmērs ir patiešām mazs. Lai gan tie nodrošina labu redzamību, dažos projektos, kur ir jāparāda daudz informācijas, šis izmērs var būt nepietiekams.

OLED displeja pievienošana Arduino

OLED displejs ir viegli savienojams ar Arduino plati, izmantojot I2C vai SPI kopni atkarībā no modeļa. Šajā apmācībā mēs koncentrēsimies uz savienojumu, izmantojot I2C, jo tas ir viens no visizplatītākajiem un vienkāršākajiem.

Jums ir jāsavieno OLED displeja tapas ar atbilstošajām jūsu Arduino tapām šādi:

  • GND (zeme) ar Arduino GND tapu
  • VCC ar Arduino 5V vai 3.3V tapu
  • SDA uz Arduino tapu A4
  • SCL pie Arduino tapas A5

Kā redzat, savienojums ir pavisam vienkāršs: nepieciešami tikai četri kabeļi. Pēc tam neatkarīgi no tā, vai izmantojat SPI vai I2C kopni, savienojuma process ir līdzīgs, lai gan tapas atšķiras atkarībā no izvēlētā saziņas veida.

Koda piemērs OLED displejam

Lai OLED ekrāns darbotos ar Arduino, viena no labākajām iespējām ir izmantot Adafruit izstrādātās bibliotēkas. SSD1306 kontrolieris, kā jau minējām iepriekš, ir saderīgs ar bibliotēku Adafruit SSD1306, kas atvieglo mūsu dzīvi, veidojot ekrānā grafiku un tekstu.

Zemāk es atstāju jums pamata kodu, kas ļaus jums parādīt tekstu OLED ekrānā ar I2C savienojumu:

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void setup() {
Serial.begin(9600);
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F("SSD1306 allocation failed"));
for(;;);
}
display.display();
delay(2000);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0, 10);
display.println(F("Hola, Mundo!"));
display.display();
}
void loop() {}

Šis kods inicializē ekrānu, notīra displeju un pēc tam raksta "Sveika, pasaule!" OLED ekrānā. Varat izmantot dažādas Adafruit GFX bibliotēkas funkcijas, lai izveidotu grafikus, zīmētu līnijas, apļus vai pat attēlotu attēlus ekrānā.

Citi noderīgi piemēri OLED ekrānam

Iepriekš minētais piemērs ir tikai pamata ievads, taču ar OLED displejiem varat paveikt daudz vairāk. Piemēram, jūs varat zīmēt dažādas ģeometriskas formas, veidot animācijas vai pat izveidot nelielu grafiku.

Viena no interesantākajām funkcijām, ko piedāvā Adafruit bibliotēkas, ir iespēja zīmēt vairākus pikseļus, kas nozīmē, ka varat izveidot ritināšanas animācijas. Papildu piemērs varētu būt teksta ritināšana, kas ir ļoti noderīgi, ja plānojat parādīt ziņojumus, kas mainās dinamiski.

Vēl viens šo ekrānu izmantošanas veids ir reāllaika datu rādīšana interaktīvos projektos, piemēram, temperatūras vai mitruma sensorā. Ekrānu var atjaunināt, kad tiek iegūti jauni sensora rādījumi, padarot jebkuru projektu daudz vizuālāku.

Bieži sastopamas problēmas, lietojot OLED ekrānus

Viena no visbiežāk sastopamajām problēmām, lietojot OLED displejus ar Arduino, ir atmiņas trūkums. Lai gan Adafruit bibliotēkas ir ļoti pilnīgas, tās var patērēt ievērojamu daudzumu atmiņas Arduino procesorā, īpaši tādās versijās kā Arduino Uno. Ja jums ir problēmas ar vietu, varat mēģināt optimizēt savu kodu, noņemt nevajadzīgās funkcijas vai pat izmantot plati ar lielāku ietilpību, piemēram, Arduino Mega.

Vēl viena izplatīta problēma ir I2C savienojuma sākotnējā iestatīšana. Ja neizmantojat pareizos SDA un SCL tapas, displejs var nedarboties vai parādīt savienojuma kļūdas. Pārliecinieties, ka izmantojat pareizās tapas, pamatojoties uz jūsu Arduino modeli.

Visbeidzot, daži lietotāji ziņo arī par tukšu ekrānu vai tādu, kas nereaģē uz komandām. To var atrisināt, pārliecinoties, ka barošanas spriegums ir pareizs (3.3 V vai 5 V atkarībā no displeja modeļa) un kabeļi ir pareizi pievienoti.


Esi pirmais, kas komentārus

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.