SK LABS Malina na velikom ekranu
Do sada ste na ovim stranicama imali prilike da čitate o raznim primerima gde različiti mikrokontroleri ispisuju podatke na, opet, raznim ekranima. To su, uglavnom, bili ekrani manjih dimenzija, sasvim prikladni za ono čemu su namenjeni. Mikrokontroleri nisu u stanju da direktno ispišu podatke na velikom ekranu preko HDMI priključka, je li tako? E, pa, nije; i te kako da su sposobni. Naravno, mogućnosti su ograničene, ali na monitoru ili ekranu televizora može da se ispiše mnogo toga. Mala napomena u samom startu: ovo o čemu pišemo je DVI, a ne HDMI video. Šaljemo DVI na ekran preko HDMI priključka. Dakle, video, ne i audio. Sve je počelo kao nezavisni projekat na GitHubu (Wren6991/PicoDVI), za šta je autor koristio RP2040 MCU. Ovo, naravno, nije promaklo velikim igračima, u prvom redu kompaniji Adafruit, ali i Pimoroni. Adafruit je ceo projekat podigao na još viši nivo, povezao sa svojim bibliotekama i dobili smo vrlo upotrebljivo parče hardvera, sa prilično ispeglanom softverskom podrškom. Adafruit u ponudi ima svoju Adafruit RP2040 Feather with DVI pločicu, koja i nije toliko skupa, koliko je visoka cena poštarine do nas. Ovo je bio dovoljan razlog da, koristeći Adafruit šemu koja je dostupna, napravimo skoro identičnu pločicu, ali u Zero formatu. Pločica koju smo napravili koristi osnovnu šemu jednog RPi Pico, što znači da su tu RP20040, osam megabajta fleša, kao i druge osnovne prateće komponente. Svi digitalni izvodi HDMI priključka ka odgovarajućim izvodima RP2040 idu preko 220R otpornika, jer koristimo signal na 3,3 volta. U suštini, koristeći HDMI pločicu sa izvodima u formi letvica, uz par otpornika, isto može da se postigne i sa klasičnim RPi Pico. Šemu ne objavljujemo, jer je prigodnije da pratite Adafruit. RP2040 je sposoban da preko Adafruit biblioteke stvori unutrašnji „frejmbafer” u rezolucijama 320×240 ili 400×240 16-bitnih tačaka, što se kasnije duplira u rezolucije 640×480 i 800×480. Sve što ispišemo u internu memoriju odmah će se pojaviti i na HDMI ekranu. Prema Adafruitu, DVI video koristi jedno celo jezgro, oba PIO, te čak 150 do 190 kilobajta SRAM-a, u zavisnosti od rezolucije. Da podsetimo, RP2040 ima 264 kilobajta SRAM-a, što znači da nema mnogo prostora za neke kompleksnije projekte, ali i ovo je dovoljno. Kao što vidimo, kapacitet memorije je, pored snage MCU-a, usko grlo. Prema dokumentaciji za Adafruitov projekat PicoDVI, mi, zapravo, softverski „guramo” RP2040 u overclock, što može da dovede i do pregrevanja, te, u krajnjoj liniji, skraćenja radnog veka. Trebalo bi pratiti zagrevanje MCU-a na duže staze, te shodno tome odreagovati i eventualno primeniti neki hladnjak. RP2040 koristi određena usporavanja videa, što mnogi ekrani uspešno sinhronizuju, ali verovatno ne baš svi. Prateći Adafruitovu šemu, izveli smo CEC, Utility i HPD izvode. Oni nisu povezani sa mikrokontrolerom, ali njima može da se upravlja preko logičkih stanja. Da podsetimo, CEC (consumer electronics control) se koristi za daljinsku kontrolu. Uglavnom je zaslužan da prebaci ekran u standby režim kada, recimo, isključimo konzolu, a kada uključimo konzolu, da se ekran probudi. Isto je i kada uključujemo računar, pa i ovde može da se koristi za tu svrhu. Utility je izvod rezervisan za buduće HDMI specifikacije. HPD (hot plug detect) „govori” mikrokontroleru kada je povezan sa ekranom. HDMI priključak je još povezan sa MCU i kroz I2C, što omogućava čitanje EDID EEPROM ekrana. Što se tiče softverske podrške, Circuitpython se, naravno, podrazumeva. Odgovarajući UF2 fajl kopiramo na RPI-RP2 drajv, baš kao i kod standardnog RPi Pico. Postoji nekoliko primera za RP2040 uopšteno, ali i samo jedan za HDMI: DVI Demo. Primer prikazuje razna geometrijska tela, boje, grafikone i slično - dovoljno da ima od čega da se počne. Arduino dolazi sa mnogo boljom podrškom. Što se tiče Arduino sistema, potrebno je da imamo earlephilhower paket podrške za RP2040, odnosno - standardnu podršku. U listi podržanih ploča već postoji Adafruit Feather RP2040 DVI. Sa Adafruitovog GitHuba preuzimamo PicoDVI biblioteku (ne od Wren6991). Adafruit je PicoDVI biblioteku uvezao sa svojom Adafruit_GFX, tako da, ako ste se već nekom prilikom susretali sa Adafruitovim bibliotekama koristeći neke ekrane, ni ovde nećete imati problema da se snađete. Adafruit_GFX biblioteka nudi veliku slobodu, što podrazumeva ispis teksta, osnovnih grafika, pa čak i slika. Trenutno postoji više primera koji se tiču veličine video-bafera, kao i palete boja. Sve ovo direktno utiče i na zauzetost memorije. Preturajući po primerima, naišli smo na opciju prikaza najpribližnijeg formatu 16:9, ovde je to 400×240. Konstruktor dozvoljava odabir različitih rezolucija i broja sličica po sekundi. Postoji čak i odabir napona na kom će RP2040 raditi. Obično radi na 1,1 volt, ali se može „poterati” i do 1,3 volta. Na „max” (rezolucija, overclock, 16-bitna paleta boja), može da se desi i da RP2040 „zabode” u meri da i računar nije najsigurniji sa čime je povezan. Manje zahtevni primeri donose niže palete boja. Tu su i primeri sa duplim baferom koji umanjuju treperenje slike, odnosno povećavaju vrednosti osvežavanj. Ako se prikazuje čist tekst sa grafikonima i osnovnim geometrijskim telima, 1-bitna paleta boja je nešto što RP2040 neće „ni osetiti”, ali tada imamo crno-belu sliku. Ipak, nama su najzanimljiviji „skrinsejveri”, primeri koji mogu da se preuzmu samo kao UF2. Ovi primeri animacije su fantastični i treba ih videti uživo. Nema ni sekunde kašnjenja. Zadivljujuće! U međuvremenu, postoji već dosta primera koji su delo zajednice i drugih velikih igrača. Recimo, NES Emulator for RP2040/RP2350 DVI Boards, RunCPM Emulator, video-sinhronizacija i još mnogo toga. Nema samo Adafruit RP2040 DVI ploču, i drugi su se pridružili projektu, a mi smo, takođe. Na vas je red.
|
||||||||||
Najčitanije
Igre
Telefoni
Hardver
Softver
Nauka
Microsoft Majorana 1 Kvantna topologija Topološki kvantni računar otporan je na uticaj kosmičkog zračenja, ali i dalje mora da se ohladi skoro do apsolutne nule... AMD Ryzen 9 9950X3D Jedan, da svima vlada Ako vam je potreban najbrži procesor, i za igranje, i za ozbiljnije zadatke, Ryzen 9 9950X3D nema konkurenciju... Gigabyte GeForce RTX 5070 Ti Aero OC 16G i GeForce RTX 5070 Ti Gaming OC 16G I za kreativce, i za igrače Sasvim sposoban da se nosi sa 4K rezolucijom u svim igrama i pruži sasvim pristojne performanse, dok u 1440p apsolutno blista... Asus ROG Strix Scar 18 (G835LX) Fantastična zver i kako je kupiti (3) Laptop namenjen onima koji „ne žale pare” da imaju ono što je trenutno najbolje i najbrže... Deset najboljih Microsoft PowerToys alatki Najbolji od najboljih PowerToys Run je alatka kojoj treba da se okrenete ukoliko vam sistemska rutina za pretragu ne odgovara... Apple iPhone 16e Malo muzike za mnogo para Problem nije samo cena i slabiji grafički podsistem, već i trajanje baterije... Cemu 2.6 Wii U emulacija Cemu omogućava pokretanje i privođenje kraju oko 57 procenata igara „napisanih” za Wii U... .rs: nove usluge eUprave - novi propisi - najava 5G Mnogo eNoviteta U novom esDnevniku roditelji će dobijati notifikacije za ocene i izostanke... Trgovinski rat Istoka i Zapada Velika igra, nesagledive posledice Kao u igri „kukavice”, dve supersile kreću se velikom brzinom jedna prema drugoj, izazivajući drugu da prva skrene... South of Midnight Magična igra koja izgleda kao živa bajka, animirana u stilu filmskog serijala „Spiderverse”... |
||||||||||