Kazalo:

Grafika na zaslonu SSD1306 I2C OLED 128x64 s CircuitPythonom z uporabo Itybitsy M4 Express: 13 korakov (s slikami)
Grafika na zaslonu SSD1306 I2C OLED 128x64 s CircuitPythonom z uporabo Itybitsy M4 Express: 13 korakov (s slikami)

Video: Grafika na zaslonu SSD1306 I2C OLED 128x64 s CircuitPythonom z uporabo Itybitsy M4 Express: 13 korakov (s slikami)

Video: Grafika na zaslonu SSD1306 I2C OLED 128x64 s CircuitPythonom z uporabo Itybitsy M4 Express: 13 korakov (s slikami)
Video: Skoda Kamiq, MY2022 – RS graphics activation on Virtual Cockpit – RS grafika na VC zaslonu 2024, Julij
Anonim
Grafika na SSD1306 I2C OLED zaslonu 128x64 s CircuitPythonom z uporabo Itybitsy M4 Express
Grafika na SSD1306 I2C OLED zaslonu 128x64 s CircuitPythonom z uporabo Itybitsy M4 Express

Zaslon OLED SSD1306 je majhen (0,96 ), poceni, široko dostopen, enobarvni grafični zaslon I2C s 128 x 64 slikovnimi pikami, ki je enostavno povezan (samo 4 žice) z mikroprocesorskimi razvojnimi ploščami, kot so Raspberry Pi, Arduino ali Adafruit Itsybitsy M4 Express, CircuitPlayground Express ali druge naprave CircuitPython. Gonilnike lahko prenesete iz interneta.

Grafične rutine za Arduinos so bile na voljo že nekaj časa, za druge razvojne sisteme pa ne.

Osnovni gonilniki naprav uporabnikom omogočajo:

  • Počistite zaslon na črno ali belo. oled.fill (c)
  • Napišite besedilni niz na zaslon na določenem (x, y) mestu oled.text ("Besedilo", x, y, c)
  • Nariši piko na določenem (x, y) mestu oled.pixel (x, y, c)
  • Naložite slikovno datoteko na zaslon. (V tem projektu se ne uporablja)
  • Posodobite zaslon oled.show ()

Ta Instructable bo z enostavnimi postopki prikazal interaktivno risanje:

  • vrstice
  • krogih
  • votle škatle
  • trdni bloki
  • vnaprej določeni znaki

Za prikaz metod bom uporabil Adafruit Itsybitsy M4 Express, vendar je kodo v Pythonu mogoče enostavno prenesti v druge razvojne sisteme.

Za to predstavitev sem se odločil za Itybitsy M4, ker je poceni, zmogljiv, enostaven za programiranje, vključuje analogni in digitalni vhod/izhod, ima veliko pomnilnika, ima enostavno lokacijo dokumentacije in forume za pomoč v internetu, na začetku je zelo enostaven za nastavitev in podpira CircuitPython, različico Pythona, ki je idealna za tiste, ki se šele ukvarjajo s kodiranjem.

Ko nastavite Itsybitsy in SSD1306, je to zelo preprosta zasnova. Ni tipkanja, vse datoteke je mogoče prenesti.

To je poceni in enostaven projekt za gradnjo, vendar uvaja nekaj vmesnih/naprednih idej. Upam, da boste poskusili. Bil sem navdušen nad tem majhnim zaslonom.

1. korak: Kaj potrebujemo za ta projekt

Kaj potrebujemo za ta projekt
Kaj potrebujemo za ta projekt

Strojna oprema:

  • SSD1306 I2C mono zaslon 128 x 64 slikovnih pik
  • Itybitsy M4 Express
  • kabel microUSB v USB - za programiranje plošče
  • Ogledna plošča
  • 1 10K ohmski potenciometer
  • 1 gumbno stikalo
  • povezovalna žica - lahko pomagajo različne barve
  • Računalnik (da napišete kodo in jo naložite) - zelo star prenosnik.

Programska oprema:

Mu editor - za pisanje kode in nalaganje skripta v datoteko Itsybitsy

Nastavitev programa Itsybitsy je razložena tukaj:

Najnovejša različica programa CircuitPython:

Knjižnice CircuitPython:

Urejevalnik Mu:

2. korak: vezje

Vezje
Vezje

To je zelo preprosto vezje za nastavitev. Naslednja stran ponazarja končno ploščo z barvnimi žicami, ki olajšajo stvari.

3. korak: Različica vezja na krovu

Breadboard Različica vezja
Breadboard Različica vezja

Na vrhu in na dnu plošče sta električni vodili. Z rdečo žico povežite tirnice +ve skupaj. S črno žico spojite -ve tirnice skupaj.

3V priključek Itsybitsyja priključite na spodnjo +ve železniško - rdečo žico. (Stolpec 12)

Priključite zatič G (GND) Itsybitsyja na zgornjo tirnico - črno žico. (Stolpec 12)

V stolpcih 33 in 34 priključite nožice SSD1306 VCC in GND na zgornje tirnice.

Z rožnato žico spojite nožice SCL skupaj.

S sivo žico spojite zatiče SDA skupaj.

Z rdečimi in črnimi žicami povežite zunanje zatiče potenciometra z zgornjimi tirnicami, z zeleno žico pa sredinski (brisalniški) zatič povežite z A5 na Itsybitsyju.

Priključite eno stran stikalnega stikala z vijolično žico na pin 2, s črno žico pa drugo stran na GND tirnico.

4. korak: Nalaganje pisave

Nalaganje pisave
Nalaganje pisave

Prenesite datoteko pisave in jo povlecite na pogon CIRCUITPY. (To je Itsybitsy.)

Dvokliknite mapo lib in si oglejte seznam gonilnikov, ki ste jih že naložili.

5. korak: Dodajanje dodatnih gonilnikov

Dodajanje dodatnih gonilnikov
Dodajanje dodatnih gonilnikov

V mapi lib boste potrebovali naslednje:

  • simpleio.mpy
  • adafruit_bus_device
  • adafruit_framebuf.mpy
  • adafruit_ssd1306.mpy

Če manjkajo, jih povlecite v mapo iz najnovejše razpoložljive različice.

Zdaj ste pripravljeni na prenos skripta.

Ko ga naložite v urejevalnik Mu, ga lahko shranite v datoteko Itsybitsy z imenom main.py.

Program poteka skozi vrsto predstavitev vrstic, krogov, dinamičnega stolpčnega grafikona in prikazovanja določenih znakov. Samo počasi obrnite lonec in pritisnite in držite gumb za nadzor prikaza.

Na naslednjih straneh je več informacij o delovanju programa.

6. korak: Nastavite naprave

Nastavite naprave
Nastavite naprave

Ta prvi razdelek naloži vse knjižnice in nastavi pravilne zatiče SSD1306, potenciometer in stikalo na gumbih.

7. korak: Določite znake in narišite vodoravne in navpične črte

Določite znake in narišite vodoravne in navpične črte
Določite znake in narišite vodoravne in navpične črte
Določite znake in narišite vodoravne in navpične črte
Določite znake in narišite vodoravne in navpične črte

Ta razdelek nastavi vnaprej določene znake. Njihova širina je 5, višina pa 8 točk. Vsaka pika v definiciji nariše 4 pike na zaslonu, da se bolje prikažejo.

Vodoravne in navpične črte je enostavno narisati z zanko. Ne pozabite le, da na koncu potrebujete dodatno piko. Črta od (0, 7) do (5, 7) bo potrebovala 6 pik: x je enak 0, 1, 2, 3, 4 in 5.

Osnovni ukaz za piko je oled.pixel (x, y, barva) - 0 je črno, 1 pa belo.

Izvor (0, 0) je v zgornjem levem kotu zaslona, 0 - 127 slikovnih pik vodoravno (od leve proti desni) in 0 - 63 navpično (od zgoraj navzdol).

8. korak: Škatle, bloki in poševne črte

Škatle, bloki in poševne črte
Škatle, bloki in poševne črte

Škatle so zgrajene iz vodoravnih in navpičnih črt.

Bloki so zgrajeni iz več vodoravnih črt.

Za nagnjene črte najprej preverimo, da so koordinate najprej najbolj leve. V nasprotnem primeru jih zamenjamo, saj bo črta potegnjena od leve proti desni.

Nato izračunamo naklon in z njim nastavimo vrednost y za vsako vrednost x.

Postopek prikaza (t) naredi posodobljen zaslon vidnim in počaka na kratek zamik, t sekund.

9. korak: Simbol stopinje, poravnava, stolpčni grafikon in krog

Simbol stopinje, nastavitev, stolpčni grafikon in krog
Simbol stopinje, nastavitev, stolpčni grafikon in krog

Simbol stopinje je ustvarjen iz 4 slikovnih pik.

Rutina align () doda dodatne presledke pred številko za poravnavo kratkih vrednosti desno v fiksnem prostoru.

Rutina grafa (v) nariše vodoravni stolpčni grafikon, ki prikazuje izbrani odstotek. Vrednost je napisana na desnem koncu z uporabo 'T' za predstavitev 100 (ton ali vrh).

Krogi zahtevajo nekaj trigonometrije, zato moramo uvoziti matematično knjižnico na začetku skripte. Za izračun odmikov x in y od središča uporabljamo sin, cos in radiane, saj se polmer vrti za 90 stopinj. Točke so narisane v vsakem od štirih kvadrantov za vsak izračun odmikov.

10. korak: Zbiranje smeti, naslovi in krogi

Zbiranje smeti, naslovi in krogi
Zbiranje smeti, naslovi in krogi

Ta navodila prikazujejo črno -belo čiščenje zaslona, pisanje besedila na zaslon in uporabo rutine gc () za zbiranje smeti za sprostitev prostora. Vrednost kaže, da je dovolj prostora za veliko večjo pisavo.

Program nato nariše kroge s skupnim središčem in s premičnimi središči. Precej hitra rutina glede na količino potrebnega izračuna.

Naslov za demo vrstic je napisan naslednji.

11. korak: Predstavitev vrstic

Demo vrstice
Demo vrstice

Ta rutina resnično daje rutini line () vadbo. Radialne črte so potegnjene iz vsakega od štirih vogalov zaslona z različnimi razmiki, ki tvorijo vzorce.

Korak 12: Glavna zanka: stolpčni grafikon in definirani znaki

Glavna zanka: stolpčni grafikon in določeni znaki
Glavna zanka: stolpčni grafikon in določeni znaki

To je glavna zanka programa. Vrednosti iz potenciometra spremenijo prikazane vrednosti in spremenijo dolžino stolpca.

Če tipko držite pritisnjeno, se določeni znaki zamenjajo tako, kot sta 1/0 in True/False. Ta zanka teče precej počasi, ker je risanje vnaprej določenih znakov počasen proces. Stvari lahko pospešite tako, da nekatere od njih komentirate.

Za lažjo predstavitev ni nameščen temperaturni senzor, zato je "?" je prikazana namesto vrednosti v vrstici 190.

Priporočena: