port_test.c
来自「this program is ubicontent example sourc」· C语言 代码 · 共 1,847 行 · 第 1/4 页
C
1,847 行
_D("OnKey 6");
if(pMe->nCurMenu > 0 && pMe->nCurMenu < 20){
key_select(pMe,nValue-1);
return(FALSE);
}
if(pMe->nCurMenu == 20)
alarm_key_select(pMe,nValue);
return(FALSE);
}
static boolean port_test_OnKey7(port_test * pMe)
{
int nValue = 7;
_D("OnKey 7");
if(pMe->nCurMenu == 20)
alarm_key_select(pMe,nValue);
return(FALSE);
}
static boolean port_test_OnKey8(port_test * pMe)
{
int nValue = 8;
_D("OnKey 8");
if(pMe->nCurMenu == 20)
alarm_key_select(pMe,nValue);
return(FALSE);
}
static boolean port_test_OnKey9(port_test * pMe)
{
int nValue = 9;
_D("OnKey 9");
if(pMe->nCurMenu == 20)
alarm_key_select(pMe,nValue);
return(FALSE);
}
static boolean port_test_OnKeyStar(port_test * pMe)
{
_D("OnKey Star");
return(FALSE);
}
static boolean port_test_OnKeyPound(port_test * pMe)
{
_D("OnKey Pound");
return(FALSE);
}
static boolean port_test_OnKeyUP(port_test * pMe)
{
_D("OnKey Up");
if(pMe->nCurMenu == 0) //皋牢 皋春老 版快俊父 累悼登档废.
{
if(pMe->nCurItem <= 2) //酒捞袍 牢郸胶啊 贸澜老版快 付瘤阜 酒捞袍 牢郸胶肺.
{
pMe->nCurItem = pMe->nCurItem + 6;
}else
{
pMe->nCurItem = pMe->nCurItem - 3;
}
DisplayMenu(pMe);
}
if(pMe->nCurMenu == 20)
{
pMe->nAlarmSetIndex--;
if(pMe->nAlarmSetIndex < 0)
pMe->nAlarmSetIndex = 4;
DisplayMenu(pMe);
}
return(FALSE);
}
static boolean port_test_OnKeyDown(port_test * pMe)
{
_D("OnKey Down");
if(pMe->nCurMenu == 0) ////皋牢 皋春老 版快俊父 累悼登档废.
{
if(pMe->nCurItem >= 6) //酒捞袍 牢郸胶啊 付瘤阜老版快 贸澜 酒捞袍 牢郸胶肺.
{
pMe->nCurItem = pMe->nCurItem - 6;
}else
{
pMe->nCurItem = pMe->nCurItem + 3;
}
DisplayMenu(pMe);
}
if(pMe->nCurMenu == 20)
{
pMe->nAlarmSetIndex++;
if(pMe->nAlarmSetIndex > 4)
pMe->nAlarmSetIndex = 0;
DisplayMenu(pMe);
}
return(FALSE);
}
static boolean port_test_OnKeyLeft(port_test * pMe)
{
//int index;
_D("OnKey Left");
if(pMe->nCurMenu == 0) //皋牢 皋春老 版快俊父 累悼登档废.
{
if(pMe->nCurItem == 0) //酒捞袍 牢郸胶啊 贸澜老版快 付瘤阜 酒捞袍 牢郸胶肺.
{
pMe->nCurItem = 8;
}else
{
pMe->nCurItem = pMe->nCurItem - 1;
}
DisplayMenu(pMe);
}
if(pMe->nCurMenu == 20)
{
pMe->nAlarmSetIndex--;
if(pMe->nAlarmSetIndex < 0)
pMe->nAlarmSetIndex = 4;
DisplayMenu(pMe);
}
return(FALSE);
}
static boolean port_test_OnKeyRight(port_test * pMe)
{
//int index;
_D("OnKey Right");
if(pMe->nCurMenu == 0) ////皋牢 皋春老 版快俊父 累悼登档废.
{
if(pMe->nCurItem == 8) //酒捞袍 牢郸胶啊 付瘤阜老版快 贸澜 酒捞袍 牢郸胶肺.
{
pMe->nCurItem = 0;
}else
{
pMe->nCurItem = pMe->nCurItem + 1;
}
DisplayMenu(pMe);
}
if(pMe->nCurMenu == 20)
{
pMe->nAlarmSetIndex++;
if(pMe->nAlarmSetIndex > 4)
pMe->nAlarmSetIndex = 0;
DisplayMenu(pMe);
}
return(FALSE);
}
static boolean port_test_OnKeySelect(port_test * pMe)
{
//int i;
_D("OnKey Select");
if(pMe->nCurMenu == 0) pMe->nCurMenu = pMe->nCurItem + 1;
if(pMe->nCurMenu == 20)
{
if( pMe->nAlarmSetIndex == 3)
{
pMe->nAlarmOnOff = (pMe->nAlarmOnOff==TRUE?FALSE:TRUE);
}
if( pMe->nAlarmSetIndex == 4)
{
pMe->nAlarmOKCancel = (pMe->nAlarmOKCancel==TRUE?FALSE:TRUE);
}
}
if(pMe->nCurMenu != 50) DisplayMenu(pMe);
return(FALSE);
}
static boolean img_print_OnKeyClr(port_test * pMe) //CLR 滚瓢阑 喘范阑锭
{
char flag;
char cmd;
_D("OnKey Clr");
if(pMe->nCurMenu == 0) //皋牢皋春俊辑 CLR滚瓢阑 喘范阑版快
{
}else if(pMe->nCurMenu > 0 && pMe->nCurMenu < 20) //技何皋春俊辑 CLR滚瓢阑 喘范阑版快 皋牢皋春肺 登倒酒皑.
{
pMe->nCurMenu = 0;
DisplayMenu(pMe);
}
if(pMe->nCurMenu == 20){ // 舅恩辑宏皋春俊辑 clr滚瓢 喘范阑版快
if(pMe->nAlarmSetIndex == 0) //
{
if(pMe->nAlarmSetHour < 10)
{
pMe->nAlarmSetHour = 0;
}else{
pMe->nAlarmSetHour = pMe->nAlarmSetHour/10;
}
}
if(pMe->nAlarmSetIndex == 1)
{
if(pMe->nAlarmSetMin < 10)
{
pMe->nAlarmSetMin = 0;
}else{
pMe->nAlarmSetMin = pMe->nAlarmSetMin/10;
}
}
if(pMe->nAlarmSetIndex == 2)
{
if(pMe->nAlarmSetObj < 10)
{
pMe->nAlarmSetObj = 0;
}else{
pMe->nAlarmSetObj = pMe->nAlarmSetObj/10;
}
}
if(pMe->nAlarmSetIndex >=3)
{
if(pMe->nAlarmOKCancel == FALSE)
{
ISHELL_CancelAlarm(GetActiveShell(pMe),0x1111000f, pMe->nAlarmKeyIndex);
pMe->Buf[pMe->nAlarmKeyIndex*4+0] = 0x00;
pMe->Buf[pMe->nAlarmKeyIndex*4+1] = 0x00;
pMe->Buf[pMe->nAlarmKeyIndex*4+2] = 0x00;
pMe->Buf[pMe->nAlarmKeyIndex*4+3] = 0x00;
File_Access_Close(pMe);
pMe->nCurMenu = 8;
}else{
if (pMe->nAlarmSetHour < 0 || pMe->nAlarmSetHour > 23)
{
_D("error");
return(TRUE);
}
if (pMe->nAlarmSetMin < 0 || pMe->nAlarmSetMin > 59)
{
_D("error");
return(TRUE);
}
if (pMe->nAlarmSetObj < 1 || pMe->nAlarmSetObj > 14)
{
_D("error");
return(TRUE);
}
if(pMe->nAlarmSetObj >= 2 && pMe->nAlarmSetObj <= 12)
{
flag = RELAY;
if(pMe->nAlarmOnOff == TRUE)
{
cmd = ON1;
}else{
cmd = OFF1;
}
}else{
if(pMe->nAlarmOnOff == TRUE)
{
cmd = flag = OPEN;
}else{
cmd = flag = CLOSE;
}
}
if(pMe->nAlarmSetObj == 1)
{
flag = RELAY;
if(pMe->nAlarmOnOff == TRUE)
{
cmd = OPEN;
}else{
cmd = CLOSE;
}
}
if(pMe->nAlarmSetObj == 13)
{
if(pMe->nAlarmOnOff == TRUE)
{
cmd = flag = ON1;
}else{
cmd = flag = OFF1;
}
}
_D("pMe->nAlarmKeyIndex .. %d", pMe->nAlarmKeyIndex);
AlarmSetAction(pMe, pMe->nAlarmSetHour, pMe->nAlarmSetMin, getSettingContent(pMe->nAlarmSetObj), flag, cmd, pMe->nAlarmKeyIndex);
pMe->nCurMenu = 8;
}
}
DisplayMenu(pMe);
}
return(TRUE);
}
//虐 菩靛 捞亥飘 勤甸矾甫 角青窍扁 傈俊 鞘夸茄 傈贸府 荐青
int port_test_PreTranslateKey(uint16 * pVkey, uint32 * pBitFlags)
{
_D("OnKey PreTranslate");
return(-1); //-1阑 馆券窍搁 秦寸 虐 勤甸矾档 眠啊 角青(-1, FALSE TRUE)
}
//檬扁拳 棺 秦力
boolean port_test_Init(port_test *pMe)
{
int i,j,k,l;
_D("Call: port_test_Init");
pMe->DeviceInfo.wStructSize = sizeof(pMe->DeviceInfo);
ISHELL_GetDeviceInfo(GetActiveShell(pMe),&pMe->DeviceInfo);
//览侩橇肺弊伐 捞亥飘 勤甸矾 殿废
BEGIN_EVENT(6)
SET_EVENT(EVT_APP_START, port_test_OnStart)
SET_EVENT(EVT_APP_STOP, port_test_OnStop)
SET_EVENT(EVT_APP_SUSPEND, port_test_OnSuspend)
SET_EVENT(EVT_APP_RESUME, port_test_OnResume)
SET_EVENT(EVT_APP_MESSAGE, port_test_OnMessage)
SET_EVENT(EVT_ALARM, port_test_OnAlarm)
END_EVENT()
//虐 菩靛 捞亥飘 勤甸矾 殿废
BEGIN_KEY_EVENT(18)
SET_KEY_EVENT(AVK_0, port_test_OnKey0)
SET_KEY_EVENT(AVK_1, port_test_OnKey1)
SET_KEY_EVENT(AVK_2, port_test_OnKey2)
SET_KEY_EVENT(AVK_3, port_test_OnKey3)
SET_KEY_EVENT(AVK_4, port_test_OnKey4)
SET_KEY_EVENT(AVK_5, port_test_OnKey5)
SET_KEY_EVENT(AVK_6, port_test_OnKey6)
SET_KEY_EVENT(AVK_7, port_test_OnKey7)
SET_KEY_EVENT(AVK_8, port_test_OnKey8)
SET_KEY_EVENT(AVK_9, port_test_OnKey9)
SET_KEY_EVENT(AVK_STAR, port_test_OnKeyStar)
SET_KEY_EVENT(AVK_POUND, port_test_OnKeyPound)
SET_KEY_EVENT(AVK_UP, port_test_OnKeyUP)
SET_KEY_EVENT(AVK_DOWN, port_test_OnKeyDown)
SET_KEY_EVENT(AVK_LEFT, port_test_OnKeyLeft)
SET_KEY_EVENT(AVK_RIGHT, port_test_OnKeyRight)
SET_KEY_EVENT(AVK_SELECT, port_test_OnKeySelect)
SET_KEY_EVENT(AVK_CLR, img_print_OnKeyClr)
END_KEY_EVENT()
//捞 镑俊 檬扁拳 棺 磊盔且寸 内靛甫 火涝茄促.
pMe->pPort = NULL;
pMe->errorImage1 = NULL;
pMe->errorImage2 = NULL;
pMe->errorImage3 = NULL;
pMe->loadingImage = NULL;
pMe->doorlockImage = NULL;
pMe->doorlockIconImage = NULL;
pMe->ledImage = NULL;
pMe->powerImage = NULL;
pMe->cutainImage = NULL;
pMe->cutainIconImage = NULL;
pMe->gasImage = NULL;
pMe->safeImage = NULL;
pMe->modeImage = NULL;
pMe->setImage = NULL;
pMe->setIconImage = NULL;
pMe->gasIconImage = NULL;
pMe->mainImage = NULL;
pMe->alarmBackImage = NULL;
pMe->alarmSubImage = NULL;
for(i=0; i<6; i++)
{
pMe->ICon[i] = NULL;
for(j=0; j<2; j++)
{
pMe->nDoorLockItem[i][j] = 0;
pMe->nLedItem[i][j] = 0;
pMe->nPowerItem[i][j] = 0;
pMe->nCurtainItem[i][j] = 0;
pMe->nGasItem[i][j] = 0;
pMe->nSafeItem[i][j] = 0;
pMe->nModeItem[i][j] = 0;
pMe->nAlarmItem[i][j] = 0;
}
//pMe->nSelect[i] = 0;
}
for(k=0; k<3; k++)
{
pMe->safeIconImage[k] = NULL;
}
for(l=0; l<4; l++)
{
pMe->modeIconImage[l] = NULL;
}
pMe->pSP = NULL;
for(i=0; i<8; i++)
{
pMe->Menu[i]=NULL;
}
pMe->nDoorLockItem[0][1] = DOORLOCK;
pMe->nLedItem[1][1] = TOILET_LIGHT;
pMe->nLedItem[2][1] = LIVING_ROOM_FIRST_LIGHT;
pMe->nLedItem[3][1] = LIVING_ROOM_SECOND_LIGHT;
pMe->nLedItem[4][1] = ROOM_FIRST_LIGHT;
pMe->nLedItem[5][1] = ROOM_SECOND_LIGHT;
pMe->nPowerItem[0][1] = TV_POWER;
pMe->nPowerItem[1][1] = REFRIGERATOR_POWER;
pMe->nPowerItem[2][1] = VENTILATION_FAN_POWER;
pMe->nPowerItem[3][1] = AIR_CONDITIONER_POWER;
pMe->nPowerItem[4][1] = ROOM_FIRST_POWER;
pMe->nPowerItem[5][1] = ROOM_SECOND_POWER;
pMe->nCurtainItem[0][1] = CURTAIN;
pMe->nGasItem[0][1] = GASS_BREAKER;
pMe->nCurItem = 0;
pMe->nCurItemSub = 0;
pMe->nLedCount = 0;
pMe->nLedState = 0;
pMe->nCurMenu = 0;
pMe->nAlarmKeyIndex = 0;
pMe->pFile = NULL;
pMe->nAlarmGetPosition[0][0] = 20;
pMe->nAlarmGetPosition[0][1] = 45;
pMe->nAlarmGetPosition[1][0] = 85;
pMe->nAlarmGetPosition[1][1] = 45;
pMe->nAlarmGetPosition[2][0] = 20;
pMe->nAlarmGetPosition[2][1] = 73;
pMe->nAlarmGetPosition[3][0] = 60;
pMe->nAlarmGetPosition[3][1] = 136;
pMe->nAlarmGetPosition[4][0] = 56;
pMe->nAlarmGetPosition[4][1] = 170;
//磊盔且寸 场
return TRUE;
}
void port_test_Free(port_test *pMe)
{
_D("Call: port_test_Free");
EVENT_FREE();
KEY_EVENT_FREE();
//捞 镑俊 且寸等 磊盔阑 秦力窍绰 内靛甫 火涝茄促.
ObjectDestroy(pMe);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?