Satura rādītājs:
- 1. darbība: kas mums nepieciešams šim projektam
- 2. solis: ķēde
- 3. darbība: ķēdes maizes versija
- 4. solis: fonta ielāde
- 5. darbība: papildu draiveru pievienošana
- 6. darbība: iestatiet ierīces
- 7. solis: definējiet rakstzīmes un zīmējiet horizontālās un vertikālās līnijas
- 8. darbība: kastes, bloki un slīpas līnijas
- 9. solis: grādu simbols, novirze, joslu diagramma un aplis
- 10. darbība. Atkritumu savākšana, nosaukumi un apļi
- 11. darbība: līniju demonstrācija
- 12. darbība. Galvenā cilpa: joslu diagramma un noteiktas rakstzīmes
Video: Grafika SSD diskā 1306 I2C OLED 128x64 displejā ar CircuitPython, izmantojot Itsybitsy M4 Express: 13 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
SSD1306 OLED displejs ir mazs (0,96 collu), lēts, plaši pieejams, I2C, vienkrāsains grafiskais displejs ar 128x64 pikseļiem, kas ir viegli savienojams (tikai 4 vadi) ar tādiem mikroprocesoru izstrādes paneļiem kā Raspberry Pi, Arduino vai Adafruit Itsybitsy M4 Express, CircuitPlayground Express vai citas CircuitPython ierīces. Draiverus var lejupielādēt no interneta.
Arduinos grafiskās rutīnas ir pieejamas kādu laiku, bet ne citām attīstības sistēmām.
Pamata ierīču draiveri ļauj lietotājiem:
- Notīriet ekrānu līdz melnam vai baltam. oled.fill (c)
- Uzrakstiet teksta virkni uz ekrānu noteiktā (x, y) pozīcijā. Oled (teksts, x, y, c)
- Zīmējiet punktu noteiktā (x, y) pozīcijā, esat. Pikselis (x, y, c)
- Ielādējiet ekrānā attēla failu. (Netiek izmantots šajā projektā)
- Atjauniniet displeju oled.show ()
Šī pamācība ar vienkāršām procedūrām interaktīvi parādīs, kā zīmēt:
- līnijas
- apļi
- dobās kastes
- cietie bloki
- iepriekš noteiktas rakstzīmes
Es izmantošu Adafruit Itsybitsy M4 Express, lai demonstrētu metodes, taču Python kodu var viegli pārnest uz citām attīstības sistēmām.
Šai demonstrācijai es izvēlējos Itsybitsy M4, jo tā ir lēta, jaudīga, viegli programmējama, ietver analogo un digitālo ieeju/izvadi, tai ir daudz atmiņas, ir viegli atrodama dokumentācija un palīdzības forumi internetā, sākotnēji to ir ļoti viegli uzstādīt un atbalsta CircuitPython - Python versiju, kas ir ideāli piemērota tiem, kas vēl nav sākuši kodēšanu.
Kad esat iestatījis Itsybitsy un SSD1306, šī ir ļoti vienkārša maizes dēļa konstrukcija. Nav rakstīšanas, visus failus var lejupielādēt.
Šis ir lēts un viegli uzbūvējams projekts, taču piedāvā dažas starpposma/uzlabotas idejas. Es ceru, ka jūs to izmēģināsit. Mani pārsteidza šis mazais displejs.
1. darbība: kas mums nepieciešams šim projektam
Aparatūra:
- SSD1306 I2C mono displejs 128x64 pikseļi
- Itsybitsy M4 Express
- microUSB - USB kabelis - lai ieprogrammētu plati
- Maizes dēlis
- 1 10K omi potenciometrs
- 1 pogas slēdzis
- savienojošais vads - var palīdzēt dažādas krāsas
- Dators (lai uzrakstītu kodu un augšupielādētu to) - derēs ļoti vecs klēpjdators.
Programmatūra:
Mu redaktors - koda rakstīšanai un skripta augšupielādēšanai Itsybitsy
Itybitsy iestatīšana ir izskaidrota šeit:
Jaunākā CircuitPython versija:
CircuitPython bibliotēkas:
Mu redaktors:
2. solis: ķēde
Šī ir ļoti vienkārša shēma, kas jāiestata. Nākamā lapa ilustrē gatavo maizi ar krāsainiem vadiem, lai padarītu lietas vieglākas.
3. darbība: ķēdes maizes versija
Maizes dēļa augšpusē un apakšā ir barošanas sliedes. Ar sarkano vadu pievienojiet +ve sliedes kopā. Ar melno stiepli savienojiet kopā sliedes -ve.
Pievienojiet Itsybitsy 3V tapu pie apakšējās +ve sliedes - sarkanā stieples. (12. sleja)
Pievienojiet Itsybitsy G (GND) tapu augšējās sliedes - melnajam vadam. (12. sleja)
33. un 34. slejā pievienojiet SSD1306 VCC un GND tapas augšējām jaudas sliedēm.
Ar rozā vadu pievienojiet SCL tapas kopā.
Ar pelēku vadu pievienojiet SDA tapas kopā.
Ar sarkaniem un melniem vadiem savienojiet potenciometra ārējās tapas ar augšējām jaudas sliedēm un ar zaļo vadu savienojiet centrālo (tīrītāja) tapu ar Itsybitsy A5.
Pievienojiet pogas slēdža vienu pusi ar purpursarkanu vadu 2. tapai un ar melno vadu pievienojiet otru pusi GND sliedei.
4. solis: fonta ielāde
Lejupielādējiet fonta failu un velciet to uz CIRCUITPY diskdzini. (Šī ir tā īpatnība.)
Veiciet dubultklikšķi uz mapes lib un apskatiet jau ielādēto draiveru sarakstu.
5. darbība: papildu draiveru pievienošana
Lib mapē jums būs nepieciešams:
- simpleio.mpy
- adafruit_bus_device
- adafruit_framebuf.mpy
- adafruit_ssd1306.mpy
Ja to trūkst, velciet tos mapē no jaunākās pieejamās versijas.
Tagad esat gatavs lejupielādēt skriptu.
Kad esat ielādējis redaktoru Mu, varat to saglabāt vietnē Itsybitsy ar nosaukumu main.py.
Programma darbojas, demonstrējot virkni līniju, apļu, dinamiskas joslu diagrammas un parādot noteiktas rakstzīmes. Vienkārši lēnām pagrieziet katlu un nospiediet un turiet pogu, lai kontrolētu displeju.
Turpmākajās lappusēs ir sniegta plašāka informācija par programmas darbību.
6. darbība: iestatiet ierīces
Šī pirmā sadaļa ielādē visas bibliotēkas un uzstāda SSD1306, potenciometru un pogu slēdzi uz pareizām tapām.
7. solis: definējiet rakstzīmes un zīmējiet horizontālās un vertikālās līnijas
Šajā sadaļā ir iestatītas iepriekš definētās rakstzīmes. Tie ir 5 punkti plati un 8 punkti augsti. Katrs definīcijas punkts ekrānā uzzīmē 4 punktus, lai tie būtu labāk redzami.
Horizontālās un vertikālās līnijas ir viegli izdarīt ar cilpu. Jums vienkārši jāatceras, ka beigās ir nepieciešams papildu punkts. Rindai no (0, 7) līdz (5, 7) būs nepieciešami 6 punkti: ar x pēc kārtas ir 0, 1, 2, 3, 4 un 5.
Punkta pamata komanda ir oled.pixel (x, y, color) - 0 ir melna un 1 ir balta.
Izcelsme (0, 0) atrodas ekrāna augšējā kreisajā stūrī, 0–127 pikseļi horizontāli (no kreisās uz labo) un 0–63 vertikāli (no augšas uz leju).
8. darbība: kastes, bloki un slīpas līnijas
Kastes ir veidotas no horizontālām un vertikālām līnijām.
Bloki ir veidoti no vairākām horizontālām līnijām.
Slīpām līnijām vispirms pārbaudām, vai vispirms ir norādītas kreisās koordinātas. Ja nē, mēs tos apmainām, jo līnija tiks novilkta no kreisās uz labo.
Pēc tam mēs aprēķinām slīpumu un izmantojam to, lai iestatītu y vērtību katrai x vērtībai.
Displeja (t) procedūra padara redzamu atjaunināto ekrānu un gaida īsu aizkavi, t sekundes.
9. solis: grādu simbols, novirze, joslu diagramma un aplis
Grādu simbols ir izveidots no 4 pikseļiem.
Izlīdzināšanas () kārtība pievieno papildu atstarpes skaitļa priekšā, lai izlīdzinātu īsās vērtības pa labi.
Grafika (v) rutīna uzzīmē horizontālu joslu diagrammu, norādot atlasīto procentuālo daļu. Vērtība tiek uzrakstīta labajā pusē, izmantojot “T”, lai apzīmētu 100 (tonna vai augšdaļa).
Lokiem nepieciešama zināma trigonometrija, tāpēc mums ir jāimportē matemātikas bibliotēka skripta sākumā. Mēs izmantojam grēku, cos un radiānus, lai aprēķinātu x un y nobīdes no centra, kad rādiuss tiek pagriezts par 90 grādiem. Katrā no četriem kvadrantiem tiek aprēķināti punkti katram nobīdes aprēķinam.
10. darbība. Atkritumu savākšana, nosaukumi un apļi
Šie norādījumi parāda ekrāna tīrīšanu melnbaltā krāsā, teksta rakstīšanu ekrānā un gc () atkritumu savākšanas rutīnas izmantošanu, lai atbrīvotu vietu. Vērtība parāda, ka ir daudz vietas daudz lielākam skriptam.
Pēc tam programma zīmē apļus ar kopēju centru un kustīgiem centriem. Diezgan ātra rutīna, ņemot vērā nepieciešamo aprēķinu apjomu.
Tālāk tiek uzrakstīts līniju demonstrācijas virsraksts.
11. darbība: līniju demonstrācija
Šī rutīna patiešām dod līnijas () rutīnai treniņu. Radiālās līnijas tiek novilktas no katra no četriem displeja stūriem ar dažādiem atstarpēm veidojošiem rakstiem.
12. darbība. Galvenā cilpa: joslu diagramma un noteiktas rakstzīmes
Šī ir programmas galvenā cilpa. Potenciometra vērtības maina parādītās vērtības un maina joslu diagrammas garumu.
Ja poga tiek turēta nospiesta, noteiktās rakstzīmes tiek apmainītas, tāpat kā 1/0 un True/False. Šī cilpa darbojas diezgan lēni, jo iepriekš definēto rakstzīmju zīmēšana ir lēns process. Jūs varat paātrināt lietas, komentējot dažus no tiem.
Lai demonstrācija būtu vienkārša, nav uzstādīts temperatūras sensors, tāpēc '?' 190. rindā vērtības vietā tiek parādīts.
Ieteicams:
Arduino displeja laiks TM1637 LED displejā, izmantojot RTC DS1307: 8 soļi
Arduino displeja laiks TM1637 LED displejā, izmantojot RTC DS1307: Šajā apmācībā mēs iemācīsimies parādīt laiku, izmantojot RTC DS1307 moduli un LED displeju TM1637 un Visuino. Noskatieties video
CircuitPython ar Itsybitsy M4 Express 1: iestatīšana: 9 soļi
CircuitPython ar Itsybitsy M4 Express 1: Iestatīšana: vai esat jauns kodētājs? Vai izmantojat tikai Scratch un vēlaties pāriet uz teksta valodu, kas nodrošina vieglu piekļuvi fiziskajai skaitļošanai ar gaismas diodēm, slēdžiem, displejiem un sensoriem? Tad tas var būt jums. Esmu ievērojis, ka šajā vietnē ir daudz Instructables ab
Flappy Bird uz ATtiny85 un OLED displeja SSD 1306: 6 soļi (ar attēliem)
Flappy Bird ATtiny85 un OLED displejā SSD1306: Sveiki visi! Šodien es jums parādīšu pamata putnu putnu klonu, ko es izveidoju, un kā jūs varat izveidot līdzīgu spēli. Es būtībā kopā ar jums izskatīšu savu kodu un paskaidrošu, kā tas darbojas. Šī spēle ir veidota, lai sagrautu
Atbrīvojiet vietu diskā operētājsistēmā Windows 10, izmantojot diska tīrīšanu: 7 soļi
Atbrīvojiet vietu diskā operētājsistēmā Windows 10, izmantojot diska tīrīšanu: cietā diska tīrīšanai nav nepieciešams izmantot trešo pušu rīkus. To var izdarīt ātri, izmantojot Windows 10 iebūvēto lietotni ar nosaukumu " Diska tīrīšana ” un bez maksas. Pirms sākat, jums būs nepieciešami šādi priekšmeti: 1) Deskop vai klēpjdators2) Windows 10 i
Displeja temperatūra P10 LED displeja modulī, izmantojot Arduino: 3 soļi (ar attēliem)
Displeja temperatūra P10 LED displeja modulī, izmantojot Arduino: Iepriekšējā apmācībā ir teikts, kā parādīt tekstu Dot Matrix LED displeja P10 modulī, izmantojot Arduino un DMD savienotāju, ko varat pārbaudīt šeit. Šajā apmācībā mēs sniegsim vienkāršu projekta apmācību, izmantojot displeja līdzekli P10 moduli