?? 接收命令后動作.txt
字號:
/*********************************
接收到動作命令后,根據(jù)命令動作
***************************/
#include "adl_global.h"
#include "keyboard.h"
#define KEY_NONE 0XFF
#include "wm_stdio.h"
/***************************************************************************/
u32 wm_apmCustomStack [ 512 ];
const u16 wm_apmCustomStackSize = sizeof ( wm_apmCustomStack );
key_Handler_f key_Handler;
bool bFirst=TRUE;
adl_tmr_t *tRepeat;
u32 key_RepeatTickTime;
u32 key_RepeatTickDelay;
bool keyUnsoHandler(adl_atUnsolicited_t *paras);
void keyTimeHandler(u8 ID);
static s8 io;
s8 smsHandler;
u16 keyz;
bool smsRecieve;
ascii simNo[20];//="13785279829";
ascii simText[70];//="jiydgtwho111";
/*******************************************************************************/
void keySubscribe(key_Handler_f keyHdlr,u32 RepeatTickTime,u32 RepeatTickDelay)
{
key_Handler = keyHdlr;
key_RepeatTickTime = RepeatTickTime ? RepeatTickTime : 1;
key_RepeatTickDelay = RepeatTickDelay;
if(bFirst)
{
bFirst = FALSE;
adl_atCmdCreate("AT+CMER=,1",FALSE,(adl_atRspHandler_t)NULL,NULL);
adl_atUnSoSubscribe("+CKEV:",keyUnsoHandler);
}
}
void keyTimerHandler(u8 Id)
{
tRepeat = adl_tmrSubscribe(FALSE,key_RepeatTickTime,ADL_TMR_TYPE_TICK,keyTimerHandler);
keyUnsoHandler((adl_atUnsolicited_t *)NULL);
}
bool keyUnsoHandler(adl_atUnsolicited_t *paras)
{
u8 iKey = KEY_NONE,iPressed = 1;
ascii IBuffer[3];
static u8 iPressedKey = KEY_NONE;
if(paras)
{
iKey = wm_atoi(wm_strGetParameterString(IBuffer,paras->StrData,1));
iPressed = wm_atoi(wm_strGetParameterString(IBuffer,paras->StrData,2));
}
if(iPressed)
{
if(iKey != KEY_NONE)
{
iPressedKey = iKey;
if(key_RepeatTickDelay)
{
tRepeat = adl_tmrSubscribe(FALSE,key_RepeatTickDelay,ADL_TMR_TYPE_TICK,keyTimerHandler);
}
}
if(key_Handler)
{
key_Handler(iPressedKey,iPressed);
}
}
else
{
adl_tmrUnSubscribe(tRepeat,keyTimerHandler,ADL_TMR_TYPE_TICK);
tRepeat = (adl_tmr_t*)NULL;
if(key_Handler)
{
key_Handler(iPressedKey,iPressed);
}
iPressedKey = KEY_NONE;
}
return TRUE;
}
void SmsCtrlHandle(u8 Event, u16 Nb)
{
;
}
/*********************************
消息內(nèi)容處理
*********************************/
void smsTextHandle(ascii *textStr)
{
if(wm_strncmp(textStr,"&111",4)==0)adl_atSendResponse ( ADL_AT_UNS, "\r\nreciv00424\r\n" );
adl_atSendResponse ( ADL_AT_UNS, "\r\nOVER\r\n" );
smsRecieve=FALSE;
}
/*************************************
//接收后發(fā)送消息
*************************************/
bool SmsHandle(ascii *SmsTel, ascii *SmsTimeOrLength, ascii *SmsText)
{
simNo[0]='\0';
simText[0]='\0';
if(SmsText[0]=='&')
{wm_strcat(simNo,SmsTel);
wm_strcat(simText,SmsText);
adl_atSendResponse(ADL_AT_UNS,simText);
smsTextHandle(simText);
}
//adl_smsSend(smsHandler,SmsTel,SmsText,ADL_SMS_MODE_TEXT);
}
/*************************************************
bool smsSendHandle(ascii *SmsTel, ascii *SmsText) //按鍵控制發(fā)送處理函數(shù)
{
SmsTel=simNo;
SmsText=simText;
adl_atSendResponse(ADL_AT_UNS,SmsTel);
adl_atSendResponse(ADL_AT_UNS,"\r\n");
adl_atSendResponse(ADL_AT_UNS,SmsText);
adl_atSendResponse(ADL_AT_UNS,"\r\n");
adl_smsSend(smsHandler,SmsTel,SmsText,ADL_SMS_MODE_TEXT);//發(fā)送消息
}****************************************************/
void dk_KeyboardHandler(u8 Key,u8 Pressed)
{
u8 i;
// adl_tmrSubscribe(FALSE,1,ADL_TMR_TYPE_100MS,TimerHandler);
for(i=245;i>0;i--);
for(i=245;i>0;i--);
for(i=245;i>0;i--);
for(i=245;i>0;i--);
keyz=Key;
if(keyz==0x00)
{
adl_atSendResponse(ADL_AT_UNS,"\r\nAAA\r\n");
//smsSendHandle(simNo,simText);
}
if(keyz==0x01)
{
adl_atSendResponse(ADL_AT_UNS,"\r\nBBB\r\n");
}
keyz=0;
keySubscribe(dk_KeyboardHandler,0,0);
}
/***************************************************************************
/* Function : adl_main
/***************************************************************************/
void adl_main ( adl_InitType_e InitType )
{
TRACE (( 1, "Embedded Application : Main" ));
io=0;
smsRecieve=FALSE;
adl_atSendResponse(ADL_AT_UNS,"\r\nmainbbb\r\n");
keySubscribe(dk_KeyboardHandler,0,0);
io=adl_ioSubscribe(ADL_IO_Q24PLUS_GPO_2,0,0,0,NULL);
smsHandler=adl_smsSubscribe(SmsHandle,SmsCtrlHandle,ADL_SMS_MODE_TEXT);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -