Hirdetés
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
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
-
Teasüti
nagyúr
Próbálom visszakövetni a forráskódot hol lehetnek a pixelek eltárolva.
Ha megnézem a
digitalLeds_updatePixels(strand_t * pStrand)
kódját a .cpp fájlban, akkor ebből apState->buf_data[0 + i * 3] = pStrand->pixels[i].g;
pState->buf_data[1 + i * 3] = pStrand->pixels[i].r;
pState->buf_data[2 + i * 3] = pStrand->pixels[i].b;
rész érdekes nekem. Az itt lévőpixels[]
az lesz, ami a STRANDS[] objektumban van definiálva.Aztán ott van egyszer a szalag definíció a programban:
strand_t STRANDS[] = { // Avoid using any of the strapping pins on the ESP32
{.rmtChannel = 1, .gpioNum = 17, .ledType = LED_WS2812B_V3, .brightLimit = 32, .numPixels = 93,
.pixels = nullptr, ._stateVars = nullptr},Csak tippelek, de a
.pixels
az az ami érdekes lehet nekem.Ez a .h fájlban így néz ki:
typedef struct {
int rmtChannel;
int gpioNum;
int ledType;
int brightLimit;
int numPixels;
pixelColor_t * pixels;
void * _stateVars;
} strand_t;Itt a
pixelColor_t * pixels;
amit keresnem kell.
Felette meg is vannak az egyes komponensei a pixeleknek:inline pixelColor_t pixelFromRGB(uint8_t r, uint8_t g, uint8_t b)
{
pixelColor_t v;
v.r = r;
v.g = g;
v.b = b;
v.w = 0;
return v;
}Már csak a pStrand maradt hátra az egyedüli elemeként a puzzle-nak, amit még nem egészen tudtam lekövetni, mi hogy mikor és hol kerül meghívásra.
Jelenleg úgy sejtem a*pStrand
az lényegében egy&STRANDS[i]
lesz. Na megyek alámerülni megint...szerk: oh ba.meg MEGVAN! Hisz ezzel indul a függvény meghívás a loop()-ban.
for (int i = 0; i < STRANDCNT; i++) {
strand_t * pStrand = &STRANDS[i];
rainbow(pStrand, 0, 2000);
scanner(pStrand, 0, 2000);
digitalLeds_resetPixels(pStrand);
}
Azt hittem ez globális lesz, mert mindenhol előfordul ez a név.
Közben meg ha jól értem, akkor a loop() deklarálja és innen kerül átadásra a függvényeknek, ahol meg újra lesz deklarálva helyi változóként minden egyes függvényben külön-külön.Akkor azt hiszem ezzel a helyére került minden eleme a puzzle-nak.
Elméletben. Jöhet a gyakorlat...
Új hozzászólás Aktív témák
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- One otthoni szolgáltatások (TV, internet, telefon)
- Adatmentés - HDD - SSD - Flash
- HP notebook topic
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Combos kis mini PC-vel jelentkezett a GMKtec
- iPhone-t használók OFF topikja
- Motoros topic
- EAFC 26
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- További aktív témák...
- iPad Pro 11 hüvelykes( 3. Generációs,2021) wi-fi-cellular 128 Gb sérüléssel
- Google Pixel 9a 128gb - Makulátlan, iPon garancia, akár beszámítással
- Samsung PM9F1 1TB (980 PRO) Gen4 NVMe SSD! 7000-5100MB/s
- SK Hynix PC811 2TB NVMe Gen4 SSD! 7000-6500MB/s
- 27% SZÁMLÁVAL! HP Omen 17 QHD 240Hz / RTX 4090 / i7-13700HX / 32GB DDR5 / 1TB SSD! BeszámíTOK
- Villámgyors teljesítmény és 10 év nyugalom!
- Samsung S23 Ultra 8/256GB Állapot: 10/10 6 hó jótállás!
- Azonnali készpénzes Sony Playstation 5 lemezes és digitális felvásárlás személyesen/csomagküldéssel
- Eredeti Lenovo külső akkumulátor eladó: T470 / T480 / T570 / T580 / L470 / L480 / L570 / L580 / P51s
- GYÖNYÖRŰ iPhone 13 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3036
Állásajánlatok
Cég: FOTC
Város: Budapest