/**************************************************************************** *Descriptions:just like main face,Standby interface.show welcome infomation *Input:void *Output:void *Return:void *Date:20140423 *Author:song *Remark:none ****************************************************************************/ void DemoEnterRfModule(void) { u16 key = 0; s32 timerid = 0; s32 TimerOver = AUTORET_TIME; sdkLcdClear(); sdkLcdFillRow (SDK_LCD_LINE1,0,(u8 *)"RF MODULE", M_UCTR); sdkLcdFillRow (SDK_LCD_LINE2,0,(u8 *)"1.A/B/F", L_UCTR); sdkLcdFillRow (SDK_LCD_LINE3,0,(u8 *)"2.M1", L_UCTR); sdkLcdBrushScreen(); sdkKbGetKey(); timerid = sdkSysGetTimerCount(); while (1) { if (sdkSysGetTimerEnd(timerid, TimerOver)) { DemoShowMainMenu(); return; } key = sdkKbGetKey(); switch (key) { case SDK_KEY_1: DemoABFCardModule(); break; //Test Magnetic Card case SDK_KEY_2: DemoMifareCardModule(); break; //Test Mifare Card case SDK_KEY_CANCEL: DemoEnterCardModule(); break; //back to mainmenu default:break; } } return ; }
/**************************************************************************** *Descriptions:just like main face,Standby interface.show welcome infomation *Input:void *Output:void *Return:void *Date:20140423 *Author:song *Remark:none ****************************************************************************/ void DemoEnterOtherModule(void) { u16 key = 0; s32 timerid = 0; s32 TimerOver = AUTORET_TIME; sdkLcdClear(); sdkLcdFillRow (SDK_LCD_LINE1,0,(u8 *)"OTHER MODULE", M_UCTR); sdkLcdFillRow (SDK_LCD_LINE2,0,(u8 *)"1.UART", L_UCTR); sdkLcdFillRow (SDK_LCD_LINE3,0,(u8 *)"2.GET POSSN", L_UCTR); sdkLcdFillRow (SDK_LCD_LINE4,0,(u8 *)"3.GET VERSION",L_UCTR); sdkLcdBrushScreen(); sdkKbGetKey(); timerid = sdkSysGetTimerCount(); while (1) { if (sdkSysGetTimerEnd(timerid, TimerOver)) { DemoShowMainMenu(); return; } key = sdkKbGetKey(); switch (key) { case SDK_KEY_1: DemoEnterUartModule(); break; //UART case SDK_KEY_2: DemoGetPosSerialNumber(); break; //get pos sn case SDK_KEY_3: DemoGetLibVersion(); break; //lib version case SDK_KEY_CANCEL: DemoShowMainMenu(); break; //back to mainmenu default:break; } } return ; }
void DemoShowMainMenu(void) { s32 key = 0; s32 timerid = 0; //get current timerid timerid = sdkSysGetTimerCount(); while (1) { sdkLcdClear(); sdkLcdFillRow(SDK_LCD_LINE1, 0, (u8 *)"DEMO APP", M_UCTR); sdkLcdFillRow(SDK_LCD_LINE3, 0, (u8 *)"[1]. REGISTRASI", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE4, 0, (u8 *)"[2]. SALDO KARTU", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE5, 0, (u8 *)"[3]. TRANSAKSI", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE8, 0, (u8 *)"PILIH NO",M_UCTR); sdkLcdBrushScreen(); //timeout? if (sdkSysGetTimerEnd(timerid,AUTORET_TIME)) { DemoShowWelCome(); return; } key = sdkKbGetKey(); switch(key) { case SDK_KEY_CANCEL: DemoShowWelCome(); break; case SDK_KEY_1: DemoRegistrasi(); break; case SDK_KEY_2: DemoSaldoCard(); break; case SDK_KEY_3: DemoTransaksi(); break; case SDK_KEY_MENU: SwitchApp(); break; default: break; } } }
void DemoShowWelCome(void) { s32 key = 0; u8 sztemp[8] ,szbuf[32]; s32 timerid = 0; //get current timerid timerid = sdkSysGetTimerCount(); /* if your pos time is not correct,please set time call this function show below*/ //memcpy(sztemp, "\x14\x05\x27\x15\x30\x00",6); //sdkSysSetTime(sztemp); while (1) { if (sdkSysGetTimerEnd(timerid,AUTORET_TIME)) { //if not any operation on POS in welcome interface, POS will enter IDLE module //sdkSysBuzz(u8 ucType) //0x01 - press ENTER key to exit IDLE module //0x40 - if timeout,exit IDLE module //0x10 - if some external devices(USB...) insert, will exit IDLE module //0x06 - if serial port has data buffer ,will exit IDLE module sdkSysPowerIdle(0x01, 0); timerid = sdkSysGetTimerCount(); } memset(sztemp,0,sizeof(sztemp)); memset(szbuf,0,sizeof(szbuf)); sdkSysGetTime(sztemp);//if time you got isn't correct,please call sdkSysSetTime first //printf("ʱ¼ä£º%02x %02x %02x \n", sztemp[0], sztemp[1], sztemp[2]); sprintf((s8 *)szbuf,"20%02X-%02X-%02X %02X:%02X:%02X", sztemp[0], sztemp[1], sztemp[2], sztemp[3], sztemp[4], sztemp[5]); sdkLcdClear(); sdkLcdFillRow(SDK_LCD_LINE2, 0, (u8 *)"WELCOME", M_UCTR); sdkLcdFillRow(SDK_LCD_LINE3, 0, (u8 *)"DEMO APP", M_UCTR); sdkLcdSetFont(FONT_COURIER_NEW, FONT_CHARSET_ASCII, 24); sdkLcdFillRow(SDK_LCD_LINE5, 0, szbuf, M_UCTR); sdkLcdBrushScreen(); sdkLcdSetFont(FONT_COURIER_NEW, FONT_CHARSET_ASCII, 32); key = sdkKbGetKey(); if (key > 0) { if(key == SDK_KEY_MENU) { SwitchApp(); } else { DemoShowMainMenu(); } } } }
/**************************************************************************** *Descriptions:just like main face,Standby interface.show welcome infomation *Input:void *Output:void *Return:void *Date:20140423 *Author:song *Remark:none ****************************************************************************/ void DemoEnterCardModule(void) { u16 key = 0; s32 timerid = 0; s32 TimerOver = AUTORET_TIME; sdkLcdClear(); sdkLcdFillRow (SDK_LCD_LINE1,0,(u8 *)"CARD MODULE", M_UCTR); sdkLcdFillRow (SDK_LCD_LINE2,0,(u8 *)"1.MAGCARD 2.RF", L_UCTR); sdkLcdFillRow (SDK_LCD_LINE3,0,(u8 *)"3.PSAM 4.CARDSLOT", L_UCTR); sdkLcdFillRow (SDK_LCD_LINE4,0,(u8 *)"5.4442 6.4428", L_UCTR); sdkLcdFillRow (SDK_LCD_LINE5,0,(u8 *)"7.NFC", L_UCTR); sdkLcdBrushScreen(); sdkKbGetKey(); timerid = sdkSysGetTimerCount(); while (1) { if (sdkSysGetTimerEnd(timerid, TimerOver)) { DemoShowMainMenu(); return; } key = sdkKbGetKey(); switch (key) { case SDK_KEY_1: DemoMagcardModule(); break; //Test Magnetic Card case SDK_KEY_2: DemoEnterRfModule(); break; //Test Mifare Card case SDK_KEY_3: /*DemoPsamModule(); */ break; //Test Psam Card case SDK_KEY_4: /*DemoCardslotModule(); */break; //Test IC Card Slot case SDK_KEY_5: /*Demo4442CardModule(); */break; //Test 4442 Card case SDK_KEY_6: /*Demo4428CardModule(); */break; //Test 4428 Card case SDK_KEY_7: /*DEMONFCUpCard(); */ break; //Test up Card case SDK_KEY_8: /*DemoSendAPDUToRF(); */ break; //Test up Card case SDK_KEY_CANCEL: DemoShowMainMenu(); break; //back to mainmenu default:break; } } return ; }
/***************************************************************************** ** Descriptions: ** Parameters: SDK_MSG *lpMsg ** Returned value: ** Created By: fusuipu 2013.03.07 ** Remarks: *****************************************************************************/ u8 LoopSanf(SDK_MSG *lpMsg) { s32 key = sdkKbGetKey(); if (key == SDK_KEY_ESC) { return SDK_MSG_OUT; } else if (key != SDK_KEY_ERR) { sdkSysBeep(SDK_SYS_BEEP_OK); Trace("Menu", "key = %d", key); if (SDK_ESC == sdkUIRevKey(key)) { return SDK_MSG_OUT; } } // Trace("ExSdk", "LoopSanf"); return SDK_MSG_KEEP; }
/**************************************************************************** *Descriptions:just like main face,Standby interface.show welcome infomation *Input:void *Output:void *Return:void *Date:20140423 *Author:song *Remark:none ****************************************************************************/ void DemoEnterPinpadModule(void) { s32 key = 0; s32 timerid = 0; s32 timerover = AUTORET_TIME; //get current timerid timerid = sdkSysGetTimerCount(); while (1) { sdkLcdClear(); sdkLcdFillRow(SDK_LCD_LINE1, 0, (u8 *)"PINPAD MODULE", M_UCTR); sdkLcdFillRow(SDK_LCD_LINE2, 0, (u8 *)"1.SET DESTYPE", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE3, 0, (u8 *)"2.TMK LOAD", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE4, 0, (u8 *)"3.TPK LOAD", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE5, 0, (u8 *)"4.DISP AMT", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE6, 0, (u8 *)"5.INPUT PIN", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE7, 0, (u8 *)"6.GET PEDSN", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE8, 0, (u8 *)"7.CALC MAC", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE9, 0, (u8 *)"8.DUKPT", L_UCTR); sdkLcdBrushScreen(); //timeout? if (sdkSysGetTimerEnd(timerid,timerover)) { //DemoShowWelCome(); return; } key = sdkKbGetKey(); switch(key) { case SDK_KEY_CANCEL: DemoShowMainMenu(); break; case SDK_KEY_1: DemosdkSetDesType(); break; case SDK_KEY_2: DemoUpdateTmk(); break; case SDK_KEY_3: DemoUpdateWk(); break; case SDK_KEY_4: DemoDisplayAmount(); break; case SDK_KEY_5: DemoInputPin(); break; case SDK_KEY_6: DemoGetPedSn(); break; case SDK_KEY_7: DemoCalcMac(); break; default: break; } } }
/**************************************************************************** *Descriptions:just like main face,Standby interface.show welcome infomation *Input:void *Output:void *Return:void *Date:20140423 *Author:song *Remark:none ****************************************************************************/ void DemoEnterPrintModule(void) { s32 key = 0; s32 timerid = 0; s32 timerover = AUTORET_TIME; sdkLcdClear(); sdkLcdFillRow(SDK_LCD_LINE1,0, (u8 *)"PRINT MODULE", M_UCTR); sdkLcdFillRow(SDK_LCD_LINE2,0, (u8 *)"1.PRINT TEST", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE3,0, (u8 *)"2.PRINT PHOTO", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE4,0, (u8 *)"3.PRINT QRCODE", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE5,0, (u8 *)"4.PRINT BARCODE", L_UCTR); sdkLcdBrushScreen(); sdkKbFlush(); timerid = sdkSysGetTimerCount(); while (1) { if (sdkSysGetTimerEnd(timerid,timerover)) { DemoShowMainMenu(); return; } key = sdkKbGetKey(); switch (key) { case SDK_KEY_1: DemoPrintTest(); break; //specified line display case SDK_KEY_2: DemoPrintPhotoTest(); break; //terminal screen pixels case SDK_KEY_3: DemoPrintQRcodeTest(); break; //specified photo display case SDK_KEY_4: DemoPrintBarcodeTest(); break; //progressbar display case SDK_KEY_CANCEL: DemoShowMainMenu(); break; //back to mainmenu default:break; } } return ; }
/**************************************************************************** *Descriptions:just like main face,Standby interface.show welcome infomation *Input:void *Output:void *Return:void *Date:20140423 *Author:song *Remark:none ****************************************************************************/ void DemoEnterLcdModule(void) { s32 key = 0; s32 timerid = 0; s32 timerover = AUTORET_TIME; sdkLcdClear(); sdkLcdFillRow(SDK_LCD_LINE1,0, (u8 *)"LCD MODULE", M_UCTR); sdkLcdFillRow(SDK_LCD_LINE2,0, (u8 *)"1.FRAME 2.PIXEL", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE3,0, (u8 *)"3.PHOTO", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE4,0, (u8 *)"4.PROGRESS BAR", L_UCTR); sdkLcdFillRow(SDK_LCD_LINE5,0, (u8 *)"5.ICON", L_UCTR); sdkLcdBrushScreen(); sdkKbFlush(); timerid = sdkSysGetTimerCount(); while (1) { if (sdkSysGetTimerEnd(timerid,timerover)) { //DemoShowWelCome(); return; } key = sdkKbGetKey(); switch (key) { case SDK_KEY_1: DemoDrawFrame(); break; //draw frame case SDK_KEY_2: DemoPixelsInfoDisplay(); break; //terminal screen pixels case SDK_KEY_3: DemoPhotoDisplay(); break; //specified photo display case SDK_KEY_4: DemoProgrssBarDisplay(); break; //progressbar display case SDK_KEY_5: DemoIconDisplay(); break; //devices icon display case SDK_KEY_CANCEL: DemoShowMainMenu(); break; //back to mainmenu default:break; } } return ; }
s32 SwitchApp() { s32 iKey; sdkLcdClear(); sdkLcdFillRow(SDK_LCD_LINE2, 0, (u8*)"Exit App?", SDK_LCD_MIDDLE); sdkLcdFillRow(SDK_LCD_LINE3, 0, (u8*)"Enter or Cancel", SDK_LCD_MIDDLE); sdkLcdBrushScreen(); while(1) { iKey = sdkKbGetKey(); if(iKey == SDK_KEY_ENTER) { exit(0); } else if(iKey == SDK_KEY_CANCEL) { break; } } return SDK_OK; }