gww6025.c
GWW6025_Data gww6025Data;
void GWW6025_Init()
{
gww6025Data.B_JC =0;
gww6025Data.B_Qi =0;
gww6025Data.B_Error =0;
gww6025Data.cnt0 =0;
gww6025Data.cnt1 =0;
gww6025Data.LB1 =0;
gww6025Data.LB2 =0;
gww6025Data.LB3 =0;
gww6025Data.timecnt =0;
}
void GWW6025_Process()
{
if(!gww6025Data.B_JC)
return;
gww6025Data.B_JC=0;
if(gww6025Data.cnt1>7)
{
gww6025Data.LB2=0;
gww6025Data.LB3=0;
if(gww6025Data.LB1<4)
gww6025Data.LB1++;
else
{
gww6025Data.B_Qi=1;
gww6025Data.B_Error=0;
gww6025Data.timecnt=28;
}
}
else if(gww6025Data.cnt0>7)
{
gww6025Data.LB1=0;
gww6025Data.LB3=0;
if(gww6025Data.LB2<4)
gww6025Data.LB2++;
else
{
gww6025Data.B_Qi=0;
gww6025Data.B_Error=0;
}
}
else
{
gww6025Data.LB1=0;
gww6025Data.LB2=0;
if(gww6025Data.LB3<2)
gww6025Data.LB3++;
else
{
gww6025Data.LB3=0;
gww6025Data.B_Qi=0;
gww6025Data.B_Error=1;
gww6025Data.timecnt=1;
}
}
gww6025Data.cnt0=0;
gww6025Data.cnt1=0;
if(gww6025Data.timecnt>1)
{
sw6201sData.B_key_click_OK=0;
gww6025Data.timecnt--;
$ WR_EN out,high;
}
else if(gww6025Data.timecnt)
{
gww6025Data.timecnt--;
$ WR_EN out,low;
}
else
$ WR_EN out,low;
}
gww6025.h
#ifndef GWW6025_H
#define GWW6025_H
struct GWW6025_Data
{
byte B_JC :1;
byte B_Qi :1;//无线充在线标志位
byte B_Error:1;//无线充异常标志位
byte cnt0; //WR_CK低电平计数
byte cnt1; //WR_CK高电平计数
byte LB1;
byte LB2;
byte LB3;
byte timecnt; //无线充供电时间
};
extern GWW6025_Data gww6025Data;
extern void GWW6025_Init();
extern void GWW6025_Process();
#endif
4089

被折叠的 条评论
为什么被折叠?



