[elektro] C kérdés
VFX
info at vfx.hu
Thu Jan 18 19:14:39 CET 2018
Hali!
Bár én nem C-zek, de vedd fel a bitsorrendet tömbbe és a how_many adja
az indexet.
Valahogy így 8-bitre LEDTomb[0,1,3,7,15,31,63,127,255]
LED = LEDTomb[how_many]
if direction LED= {255 xor LED}
Ez ASM-ből is kb. 4-8 utasítás és a C is biztos szereti így.
ÜDV. VFX.
2018.01.18. 18:20 keltezéssel, Bali Zoltan írta:
> Hali!
>
> Most megtöröm a rádiócsendet, öőő,
> akarom mondani, mailcsendet :)
>
> Ezt ugye, nem úszom meg asm nélkül,
> ha a runtime fontos? STM ARM.
>
> void FillLedBar(uint32_t how_many,uint32_t direction)
> {
> uint32_t i,val;
>
> for(i=0;i<how_many;i++) {
> val |= 1<<i;
> }
> if(direction) {
> LedBarNoReverse(val);
> } else {
> LedBarReverse(val);
> }
> }
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list