[Åpen kildekode]DWIN-skjermkontroll WS2812 Ambient Lighting

--Fra DWIN Developer Forum

Dette problemet gir deg mulighet til å presse den prisbelønte åpen kildekode-dekselet til DWIN Developer Forum - DWIN skjermkontroll WS2812 omgivelseslys, ingeniører gjennom COF intelligent skjerm OS-kjernen for å nøyaktig kontrollere WS2812 fantomlysbeltet hver lampeperlefarge, for å oppnå fargebytte av beltets dynamiske effekter.

1.UI Materiale

vcsd (1)

2.UI Design

vcsd (2)

3. C51-prosjekt

Driverkoden for å kontrollere fargen på lyset gjennom IO-porten er som følger:

ugyldig WS2812_Write_RGB()

{

u8 i,j,a;

EA=0;

for(j=0;j<3;j++)//Antall sendinger som kreves for hvert lys

{

a=RGB_One[j];

for(i=0;i<8;i++)

{

WS2812_DI=1;

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); );_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); );_nop_();_nop_();_nop_();

WS2812_DI=(a&0x80);

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();

a<<=1;

WS2812_DI=0;

}

WS2812_DI=0;

}

EA=1;

}

ugyldig WS2812_RST()

{

WS2812_DI=0;

sys_delay_ms(1);

}

void WS2812_DIS_1()//Effekt 1, fargebytte, alle LED-farger, totalt 7 grunnfarger

{

statisk u8 j=1;

u16 i=0;

if(j&0X01) RGB_One[1]=10;else RGB_One[1]=0;

if(j&0X02) RGB_One[0]=10;else RGB_One[0]=0;

if(j&0X04) RGB_One[2]=10;else RGB_One[2]=0;

j%=7;

j++;

for(i=0;i

WS2812_Skriv_RGB();

WS2812_RST();

sys_delay_ms(1000);

}


Innleggstid: 31-jan-2024