Új hozzászólás Aktív témák

  • válasz tomy_cz #65 üzenetére

    460800 és 500000 között nincs különbség? Mert akkor nem a baud rate-tel lesz probléma, azaz nem a COM kommunikációval.

    UPDATE-hez: na, akkor mégis a baud rate-tel lesz gond, ki kell próbálni mindenfélét. :)

    Ezt a cuccot én nem használtam soha, csak low-level foglalkoztam vele. Az alapján valahogy elcsesződik az időzítés. Olyan demó nincs, ahol szívárvány módjára váltakozik az egész szalag, egyszínűen? Vagy futófény különböző színekkel? Úgy jobban lehetne látni mi a hiba.

    Egy kis tech infó, debughoz:

    A tradicionálistól eltérően itt GRB sorrendben mennek az adatok (8 + 8 + 8 = 24 bit) a ledekbe. Ha késik az adat, akkor az eredeti zöld pl bepirosodik. Ha siet, akkor a zöld kékül. Persze egy 8 bitnél többet is csúszhat, így nagyobb késésnél a zöld már kék lesz.

    Minden egyes WS2812 LED-ben van egy 24 bites buffer. Amikor elküldesz neki 24 bit adatot (24 * ~1.25us = ~30us), azt eltárolja az első led. A következő 24 bit viszont már nem oda kerül, hanem az első led továbbküldi a másodiknak, az az tárolja el. S így megy sorban, feltöltve az összes LED bufferét. Ekkor még nem látszik semmi. Ha minden kész, akkor egy "reset" kódot kell küldeni (50us hosszú nulla), s ez már az összes leden átmegy, egyszerre ürítve az össze puffert, s megjelenítve a tartalmukat a LED-eken. Azaz mindig egyszerre villannak fel, nincs olyan, hogy az utolsón később jelenik meg a szín.

    [ Szerkesztve ]

    A RIOS rendkívül felhasználóbarát, csak megválogatja a barátait.

Új hozzászólás Aktív témák