intenzita LED
Miroslav Mraz
mrazik na volny.cz
Sobota Leden 25 10:20:22 CET 2025
Zatím to je jen test, že to jde. S pamětí to není zase tak hrozné - 3
bity SPI na odeslaný bit stačí. Takže na 1 ledku potřebuji 9 bytů, na 10
ledek 90 bytů + 90 bytů prodleva. Ten jednorázový DMA bych použil, ale
až mě napadne k čemu. Spíš zkusím udělat pomocí ADC a FFT "barevnou
hudbu", kterou jsme dělali jako kluci analogově. Ještě mě nenapadá jak
kódovat intenzitu a výšku tónu do intenzity, barvy a polohy ledek, aby
to hezky vypadalo. Odložím to na léto, v přírodě mě snad něco napadne.
Dneska to možná dám na github. Snad se povede i USB, tenhle procesor má
jen device kontrolér, sice funguje, ale jen ta čínská verze a v té se
nevyznám, je to divně napsané, chtělo by to upravit aby to mělo nějaké
rozumnější API. Ale to bude moc práce. Zajímavé je, že tahle řada má v
těch dražších modelech i HD kontrolér a ten se mi podařilo znásilnit
skoro bez problémů.
Mrazík
On 24. 01. 25 21:39, Petr Labaj wrote:
> ...
>
> To generování prodlevy planým odesíláním ale musí vycházet dost náročně
> na kapacitu paměti, ne?
> Ono už i generování toho protokolu přes SPI asi není zrovna moc
> optimální. Na rozsvícení jedné LED zřejmě spotřebujete celkem dost paměti.
> Chce to aspoň 5 vyslaných bitů na 1 reálný významový bit, ne? Nebo jste
> vymyslel nějaký optimalizovaný algoritmus?
>
> U toho DMA by se zřejmě dal použít jednorázový přenos. Ten by se po
> jednom cyklu zastavil, a spustil byste ho zase třeba v přerušení od TIKu.
> Případně ho spustil jen když bude příznak změny dat pro zobrazení.
> Tím by automaticky byl vygenerovaná reset puls.
> A snížila by se spotřeba a rušení, protože by přenos jel jen když je co
> zobrazovat.
>
> PL
>
>
Další informace o konferenci Hw-list