- Vezeték nélküli fülhallgatók
- Vezetékes FEJhallgatók
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Objektívek topikja
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- OLED monitor topik
- Fujifilm X
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Autós kamerák
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
válasz
razorbenke92 #16225 üzenetére
Na szóval belenéztem újra, átnéztem a vegyes kódot, meg kipróbáltam Tankblock legutóbbi tanácsait (amit ezúton is köszönök)
Íme a tapasztalataim:
- Kivettem a digitalWrite() / digitalRead() / pinMode() függvényeket, helyettesítettem őket regiszter piszkálással. Ez némi helyet felszabadított, nem világmegváltó, de közelebb vitt a célhoz.
- Átírtam FastLED-el a kódot - sajnos több helyet foglal. Hozzátartozik az igazsághoz, hogy a FastLED gyárilag tud néhány színkezelési effektet, amivel helyettesíthetném a saját kódomat, de akkor lennék kb. ugyanott, mint a Neopixel könyvtárral.
- Ezután a ws2812b kezelését könyvtár helyett kiváltottam egy tömbbel ami a LED színeket tárolja, és egy eljárással, ami kibillegteti az outputra a dolgokat szabvány időzítés szerint.
Ezzel a 4000 byte körüli overflowból lett 800 byte, szóval ez nagyot hozott.- Ezután kivettem (kompletten, helyettesítés nélkül) az EEPROM kezelési műveleteket, és így sikerült befordítani a kódot színekkel, effektekkel.
- Ekkor átnéztem decompiled kódot, és kilóra bizony ennyi az annyi. Lehet még összevonni ismétléseket, meg is csináltam a nagyon nyilvánvalóakat, de minimális a csökkenés, és a további reszelés munka/nyereség aránya nem konvergál az elégséges kódcsökkenéshez.
Amivel tovább fogok menni:
- Újraírom az effekteket, az általam írt ws2812b kezelésre optimalizálva. Például dim esetén nem osztok szorzok, hanem meghatározok dim szinteket, amiket bitműveletekkel meg tudok oldani. Pl 50% esetén eltolás egy bittel. Áttűnések esetén bitmaszkokon keresztül összevagyolás, stb.
- Ha marad még hely, akkor visszaépítem a menürendszert
- Ha még mindig marad akkor pedig az EEPROM-ba mentést is visszarakom
- Ha az előző kettőnél valahol kifogyok a helyből, akkor felveszek sok effektet sok színnel, és szimplán csak végig lehet menni rajtok gombnyomással.
(Majd bedobom, ha sikerült megoldanom, hátha érdekel valakit)
Új hozzászólás Aktív témák
- Kerékpárosok, bringások ide!
- Eredeti játékok OFF topik
- Vezeték nélküli fülhallgatók
- Vezetékes FEJhallgatók
- Hosszab bemutatót kapott a Mafia: The Old Country
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Hobby rádiós topik
- E-roller topik
- Napelem
- Mibe tegyem a megtakarításaimat?
- További aktív témák...
- Eladó Hikmicro Habrok 4K HE25LN éjjellátó keresőtávcső
- Eladó DOXA 165.10.015.10 óra
- Hobby gamer asztali gép RGB i5-114600/RTX 2060 12GB/32 GB RAM/500 GB NVMe
- Dell Latitude E6540 Erőmű akár Játékra is.15"6 FHD,I7 4800MQ,HD8790,16GBram,500GB sshd,gyári töltö
- HP ELITEBOOK 855 G8 Ryzen 3 5400U 16gb ram 256ssd FHD IPS Gari
- Telefon felvásárlás!! Apple iPhone 16, Apple iPhone 16e, Apple iPhone 16 Plus, Apple iPhone 16 Pro
- ÚJ Lenovo LOQ 15IRX9 - QHD 165Hz - i7-13650HX - 16GB - 1TB - RTX 4060 - Win11 - 3 év garancia
- BESZÁMÍTÁS! ASUS H81M-PLUS H81 chipset alaplap garanciával hibátlan működéssel
- Apple iPhone 14 128GB, Kártyafüggetlen, 1 Év Garanciával
- Bomba ár! Dell Inspiron 15 3511 - i5-11GEN I 8GB I 256SSD I HDMI I 15,6" FHD I Cam I W11 I Gari
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest