[Sumber Terbuka] Kontrol Layar DWIN Pencahayaan Sekitar WS2812

--Dari Forum Pengembang DWIN

Masalah ini bagi Anda untuk mendorong kasus sumber terbuka pemenang penghargaan dari Forum Pengembang DWIN - Kontrol layar DWIN pencahayaan sekitar WS2812, para insinyur melalui inti OS layar cerdas COF untuk secara akurat mengontrol sabuk cahaya hantu WS2812 setiap warna manik lampu, untuk mencapai peralihan warna efek dinamis sabuk tersebut.

1.Bahan UI

vcsd (1)

2.Desain UI

vcsd (2)

3. Proyek C51

Kode driver untuk mengontrol warna lampu melalui port IO adalah sebagai berikut:

batalkan WS2812_Write_RGB()

{

u8 saya,j,a;

EA=0;

for(j=0;j<3;j++)//Jumlah transmisi yang diperlukan untuk setiap lampu

{

a=RGB_Satu[j];

untuk(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_();

sebuah<<=1;

WS2812_DI=0;

}

WS2812_DI=0;

}

EA=1;

}

batalkan WS2812_RST()

{

WS2812_DI=0;

sys_delay_ms(1);

}

void WS2812_DIS_1()//Efek 1, peralihan warna, semua warna LED, total 7 warna dasar

{

statis u8 j=1;

u16 saya=0;

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

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

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

j%=7;

j++;

untuk(saya=0;saya

WS2812_Write_RGB();

WS2812_RST();

sys_delay_ms(1000);

}


Waktu posting: 31 Januari 2024