[ແຫຼ່ງເປີດ] ການຄວບຄຸມໜ້າຈໍ DWIN WS2812 ແສງແວດລ້ອມອ້ອມຂ້າງ

--ຈາກ DWIN Developer Forum

ບັນຫານີ້ສໍາລັບທ່ານທີ່ຈະຊຸກຍູ້ການໄດ້ຮັບຮາງວັນ open source case ຂອງ DWIN Developer Forum - DWIN screen control WS2812 ambient lighting, engineers through the COF intelligent screen OS core to accurately control the WS2812 phantom light belt each lamp bead color, to achieve color switching ຜົນກະທົບແບບເຄື່ອນໄຫວຂອງສາຍແອວ.

1.UI ວັດສະດຸ

vcsd (1)

2.ການອອກແບບ UI

vcsd (2)

3. ໂຄງການ C51

ລະຫັດໄດເວີສໍາລັບການຄວບຄຸມສີຂອງແສງຜ່ານພອດ IO ມີດັ່ງນີ້:

void WS2812_Write_RGB()

{

u8 i,j,a;

EA=0;

for(j=0;j<3;j++)//ຈໍານວນຂອງການສົ່ງສັນຍານທີ່ຕ້ອງການສໍາລັບແຕ່ລະແສງສະຫວ່າງ

{

a=RGB_One[j];

ສໍາລັບ(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_();_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;

}

void WS2812_RST()

{

WS2812_DI=0;

sys_delay_ms(1);

}

void WS2812_DIS_1()//Effect 1, ປ່ຽນສີ, ສີ LED ທັງໝົດ, ມີທັງໝົດ 7 ສີພື້ນຖານ.

{

static u8 j=1;

u16 i=0;

ຖ້າ(j&0X01) RGB_One[1]=10;lse RGB_One[1]=0;

ຖ້າ(j&0X02) RGB_One[0]=10;lse RGB_One[0]=0;

ຖ້າ(j&0X04) RGB_One[2]=10;lse RGB_One[2]=0;

j%=7;

j++;

ສໍາລັບ(i=0;i

WS2812_Write_RGB();

WS2812_RST();

sys_delay_ms(1000);

}


ເວລາປະກາດ: ມັງກອນ-31-2024