#include
#include
#include
void DM413_Sys_delay(unsigned int Key_i) //系統(tǒng)延時
{
unsigned char idata Key_j;
while((Key_i--)!=0)
{
//WDTRST=0x1E;
//WDTRST=0xE1; //喂狗
for(Key_j = 0;Key_j < 1;Key_j ++);
}
}
//傳入的數(shù)據(jù)依次為紅,綠,藍 ,數(shù)據(jù)格式為16進制.256個數(shù)值.
void DM413_Send(unsigned char Red_Data,unsigned char Green_Data,unsigned char Blue_Data)
{
unsigned char i,Date_R,Date_G,Date_B; //R變量,G變量,B變量
Date_R = Red_Data; //賦予R變量值
Date_G = Green_Data; //賦予G變量值
Date_B = Blue_Data; //賦予B變量值
STB = 0;
DAI = 0;
CKI = 0;
STB = 1; //打開使能端
for(i=8;i>0;i--) //發(fā)送紅色數(shù)據(jù)
{
CKI = 0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
if(Date_R & 0x80) DAI = 1;
else DAI = 0;
CKI = 1;
Date_R <<= 1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
DAI = 0;
}
for(i=8;i>0;i--) //發(fā)送綠色數(shù)據(jù)
{
CKI = 0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
if(Date_G & 0x80) DAI = 1;
else DAI = 0;
CKI = 1;
Date_G <<= 1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
DAI = 0;
}
for(i=8;i>0;i--) //發(fā)送綠色數(shù)據(jù)
{
CKI = 0;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
if(Date_B & 0x80) DAI = 1;
else DAI = 0;
CKI = 1;
Date_B <<= 1;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
DAI = 0;
}
STB = 0; //關(guān)閉使能端
CKI = 0;
DM413_Sys_delay(4);
DAI = 0;
}