*************由按键传送参数程序*****************
if(!G_Key2)
{
delay_ms(10);
while(!G_Key2)
{
SendMessage(WM_KEYDOWN,KEY_2);
}
if(!G_Key2) // 扫描到的按键能这么传参数吗????
{
SendMessage(WM_KEYPRESS,KEY_2);
}
}
**************处理接收到的参数***********************
if (wMsg==WM_KEYDOWN)
{
if(WParam==KEY_1)
G_Key_Flag++;
if(G_Key_Flag==6)
{
G_Key_Flag=0;
}
{
SwitchMode();
}
if(WParam==KEY_2)
{
AddValue();
}
}
else if (wMsg==WM_KEYPRESS)
{
{
SwitchMode();
}
{
AddValue();
}
}
}
**************这是最终执行按键程序****************************
void AddValue()
{
if(G_Key_Flag==0|G_Key_Flag==1)
G_Counter1++;
if(G_Counter1==512)
{
G_Counter1=1;
}
if(G_Key_Flag==2|G_Key_Flag==3)
G_Counter2++;
if(G_Counter2==100)
{
G_Counter2=1;
}
if(G_Key_Flag==4)
G_Counter3++;
if(G_Counter3==100)
{
G_Counter3=1;
}
}
按键按下加1,一直按着不变着是为什么? |