| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978 |
- /*****************************************************************************
- SetSystemPara.c
- *****************************************************************************/
- #include "includes.h"
- SUT_MENU sutMenuSysSetup;
- unsigned char Net_temp_flag;
- unsigned char IP_Temp_Flag;
- SUT_LCDGPS_SEND_DATA sutLcdGpsSendData;
- char ReadApnData(unsigned char *source,unsigned char witchone,char *apnapn,char *apnname,char *apnpass);
- const static unsigned short g_ausTimeOut[5]={10,30,60,300,0};
- unsigned short g_ausIPTimeOut[4]={2 ,5 ,10,30};
- static const char*g_ausNetOut[]={"Auto"," 2G "," 3G "," 4G "};
- static const char*g_ausIpOut[]={" IP1 "," IP2 "};
- static const char*g_ausPassOut[]={"禁用","开启"};
- static char Private_password[7];
- int ApnFileIndex;
- /*************************************************************************/
- unsigned int g_uiGpsStat = 1;
- unsigned int g_iLCDFlag=0;
- SUT_LCD_PARAM sutLcdParam;
- unsigned short g_UpdatePocCount;
- char showApnTable[2*APN_NUM][31];
- char *APNNAME[APN_NUM+1]=
- {
- "APN1",
- "APN2",
- ""
- };
- void SetAPNShow(int update)
- {
- #if 1
- int i;
- static const char *accIconFileName[]={
- "APN.bmp",
- "APN1.bmp",
- ""
- };
- static char GroupsFeatures[APN_NUM];
- if(update){
- if(showApn!=1)
- {
- ShowMessageBox("禁止修改");
- os_dly_wait(200);
- UISetNextStatus(UIS_MENU_SYS_SET);
- return;
- }
- if(validApnNum==1)
- {
- ShowMessageBox("配置文件无APN");
- os_dly_wait(200);
- UISetNextStatus(UIS_MENU_SYS_SET);
- return;
- }
- GuiClearAll();
- ShowCaption("设置APN",2);//
- GuiDrawHLine(0,159,20,1);
- //设置Features 将决定选择图标
- GroupsFeatures[sutProductPara.APNIndex]=1;
- ListBoxInit(&sutListBox,APNNAME,0,accIconFileName,GroupsFeatures);
- //----------------------------
- GuiDrawHLine(0,159,104,1);
- GuiShowStr(0,110,"[OK]切换 [P1]详情",0x01);
- }
- #else
- int i;
- static unsigned short susCt=0;
- static const char *accIconFileName[]={"APN.bmp","APN1.bmp",""};
- unsigned char buf[300];
- static char NullGroup=0;
- static char GroupsFeatures[APN_NUM];
- static char *APNAPN[APN_NUM];
- char NullPtr[]="";
- if(update){
- susCt=0;
- GuiClearAll();
- ShowCaption("设置APN",1);//
- GuiDrawHLine(0,159,20,1);
- ReadFileData(ApnFileIndex,0,sizeof(buf),buf);
- for(i=0;i<3;i++)
- {//读取三组接入点名称
- if(ReadApnData(buf, i, &showApn[i][0], 0,0))
- {
- return;
- }
- }
- //付给用于显示的指针
- APNAPN[0]=&showApn[0][0];
- APNAPN[1]=&showApn[1][0];
- APNAPN[2]=&showApn[2][0];
- APNAPN[3]=NullPtr;
- APNAPN[4]=NullPtr;
- //----------------------------
- for(i=0;i<APN_NUM;i++){
- GroupsFeatures[i]=0;
- }
-
- //设置Features 将决定选择图标
- if(0==strcmp(sutProductPara.APNApn, APNAPN[0])) GroupsFeatures[0]=1;
- else if(0==strcmp(sutProductPara.APNApn, APNAPN[1])) GroupsFeatures[1]=1;
- else if(0==strcmp(sutProductPara.APNApn, APNAPN[2])) GroupsFeatures[2]=1;
- else{
- //如果以上三种都不是,则认为是用户自定义的了
- APNAPN[3]=sutProductPara.APNApn;
- GroupsFeatures[3]=1;
- }
- ListBoxInit(&sutListBox,APNAPN,0,accIconFileName,GroupsFeatures);
- //----------------------------
- GuiDrawHLine(0,159,104,1);
- GuiShowStr(0,110,"[M]切换 ",0x01);
- }
- #endif
- }
-
- void SetSYSResponse(void)
- {
- unsigned long key;
- key=MenuResponse(&sutMenuSysSetup);
- if(KEY_PANEL_MENU==key){
- switch(sutMenuSysSetup.handle){
- case 0:
- UISetNextStatus(UIS_SET_APN);
- break;
- case 1:
- UISetNextStatus(UIS_SET_GPS);
- break;
- case 2:
- UISetNextStatus(UIS_SET_LCD);
- break;
- case 3:
- UISetNextStatus(UIS_SET_NET);
- break;
- case 4:
- UISetNextStatus(UIS_MENU_LOGIN_MODE);
- break;
- case 5:
- UISetNextStatus(UIS_MENU_PASSMAGE);
- break;
- // case 6:
- // UISetNextStatus(UIS_UP_INTERCOM_VER);
- // break;
- }
- }
- // else if(KEY_PANEL_MENU==key){
- // UISetNextStatus(UIS_MENU_MAIN);
- // }
- else if(KEY_PANEL_EXIT==key){
- UISetNextStatus(UIS_MENU_MAIN); //UIS_MENU_SYS_SET
- }
- }
- /***************************************
- 注意:CDMA的APN形式跟WCDMA大不相同
- W机子是不需要改来改去的 "IP","UNIM2M.NJM2MAPN","0.0.0.0"
- ****************************************/
- void SetAPNResponse(void)
- {
- unsigned long key;
- key=ListBoxResponse(&sutListBox);
-
- if(KEY_PANEL_MENU==key)
- {
- ShowMessageBox("即将重启更新...");
- sutProductPara.APNIndex=sutListBox.handle;
- strcpy(sutProductPara.APNName, showApnTable[2*sutProductPara.APNIndex]);
- strcpy(sutProductPara.APNPass, showApnTable[2*sutProductPara.APNIndex+1]);
- SaveProductParaToFlash("MENU_SWAPN");
- os_dly_wait(200);
- modemPwrOffNow=1;
- }else if(KEY_INFO==key) UISetNextStatus(UIS_APN_DETAIL);
- else if(KEY_PANEL_EXIT==key)UISetNextStatus(UIS_MENU_SYS_SET);
- }
- char showIndex;
- void ShowAPNMessage(char index)
- {
- char buf[40];
- char temp[40];
- unsigned char len;
- unsigned char i,y,maxLen;
- i=0;
- y=22;
- maxLen=14;
- GuiClearRect(0, y, LCD_WIDTH-1,LCD_HEIGHT-25);
- snprintf(buf, sizeof(buf), "%s:",APNNAME[showIndex]);
- GuiShowStr(1,y+16*i++,buf,0x01);
- len=strlen(showApnTable[2*showIndex]);
- memcpy(temp, showApnTable[2*showIndex], maxLen);
- temp[maxLen]=0;
- snprintf(buf, sizeof(buf), "Name:%s",temp);
- GuiShowStr(1,y+16*i++,buf,0x01);
- if(len > maxLen)
- {
- strcpy(temp, &showApnTable[2*showIndex][maxLen]);
- snprintf(buf, sizeof(buf), "%s",temp);
- buf[len-maxLen]=0;
- GuiShowStr(1,y+16*i++,buf,0x01);
- }
- len=strlen(showApnTable[2*showIndex+1]);
- memcpy(temp, showApnTable[2*showIndex+1], maxLen);
- temp[maxLen]=0;
- snprintf(buf, sizeof(buf), "Pass:%s",temp);
- GuiShowStr(1,y+16*i++,buf,0x01);
- if(len > maxLen)
- {
- strcpy(temp, &showApnTable[2*showIndex+1][maxLen]);
- snprintf(buf, sizeof(buf), "%s",temp);
- buf[len-maxLen]=0;
- GuiShowStr(1,y+16*i++,buf,0x01);
- }
- }
- void SetApnDetailShow(int update)
- {
- char buf[40];
- if(update)
- {
- GuiClearAll();
- ShowCaption("APN详情",2);//
- GuiDrawHLine(0,159,20,1);
- showIndex=0;
- ShowAPNMessage(showIndex);
- //----------------------------
- GuiDrawHLine(0,159,104,1);
- GuiShowStr(0,110,"[EXIT]返回 ",0x01);
- }
- }
- void SetApnDetailResponse(void)
- {
- if(KEY_PANEL_DOWN==g_ulKeyValue)
- {
- showIndex++;
- if(showIndex >= validApnNum) showIndex=0;
- ShowAPNMessage(showIndex);
- }else if(KEY_PANEL_UP==g_ulKeyValue)
- {
- if(showIndex==0) showIndex=validApnNum;
- if(showIndex > 0) showIndex--;
- ShowAPNMessage(showIndex);
- }
- else if(KEY_PANEL_EXIT==g_ulKeyValue) UISetNextStatus(UIS_SET_APN);
- }
- void MakeGpsSendData(void)
- {
- unsigned char *data=(unsigned char *)&sutLcdGpsSendData;
- memset(data, 0, sizeof(SUT_LCDGPS_SEND_DATA));
- data[0] = (sutGpsInfo.latitue>>24)&0xFF;
- data[1] = (sutGpsInfo.latitue>>16)&0xFF;
- data[2] = (sutGpsInfo.latitue>>8)&0xFF;
- data[3] = (sutGpsInfo.latitue)&0xFF;
-
- data[4] = (sutGpsInfo.longitue>>24)&0xFF;
- data[5] = (sutGpsInfo.longitue>>16)&0xFF;
- data[6] = (sutGpsInfo.longitue>>8)&0xFF;
- data[7] = (sutGpsInfo.longitue)&0xFF;
- }
- /*****************************************************
- 深圳北纬22.33 东经114.07
- 经过试验数据比较准确,但是东西南北不知道
- ******************************************************/
- void GetCoordinates(unsigned char type)
- {
- //type 0 UI时调用
- // 1 上传时调用
- char buf[30];
- //char buf0[15]={0};
- char buf1[8];
- char buf2[4]={0};
- char temp[3];
- char temp1[3];
- char temp2[5];
- char temp3[5];
- int i,num,num1,w,j;
- double Jnum1,Jnum2,Jnum3;//有小数位 8位有效
- double Wnum1,Wnum2,Wnum3;//有小数位 8位有效
- // char* g_cGetlongitude;
- // char* g_cGetlatitude;
-
- MakeGpsSendData();
- AscStrTurnHexStr((char *)sutLcdGpsSendData.JJJJ,buf1);
- memset(temp, 0, sizeof(temp));
- for(i=0;i<3;i++){
- temp[i]=buf1[i];
- }
- j=atoi(temp);
- memset(temp2, 0, sizeof(temp2));
- for(i=0;i<6;i++){
- temp2[i]=buf1[i+3];
- }
- num=atoi(temp2);
- Jnum1=num/1000;
- Jnum1 /=60;
- Jnum2 = (num%1000)*60;
- Jnum2 /=3600000;
- Jnum3=Jnum1+Jnum2;
- //sutLcdGpsSendData.j=j*1000000+Jnum3*1000000;
- // sutLcdGpsSendData.j = (j+Jnum3)*1000000;
- //Getlongitude;
- //Getlatitude;
- sutGpsInfo.testJD = j*1000000+Jnum3*1000000;//上传时使用
- // if(type == 0){//UI时要显示
- // sprintf(buf,"经度 %s: %d.%05d","W",j,(unsigned int)(Jnum3*100000));
- // GuiShowStr(0,40,buf,0x01);
- // }
- AscStrTurnHexStr((char *)sutLcdGpsSendData.WWWW,buf2);
- for(i=0;i<3;i++){
- temp1[i]=buf2[i];
- }
- w=atoi(temp1);
- for(i=0;i<6;i++){//5
- temp3[i]=buf2[i+3];
- }
- num1=atoi(temp3);
- Wnum1=num1/1000;
- Wnum1 /=60;
- Wnum2 = (num1%1000)*60;
- Wnum2 /=3600000;
- Wnum3=Wnum1+Wnum2;
- sutGpsInfo.testWD = w*1000000+Wnum3*1000000;
- if(type == 0){//UI时要显示
- snprintf(buf, sizeof(buf)," 纬度 %s: %.3d.%05d","S",w,(unsigned int)(Wnum3*100000));
- GuiShowStr(0,24,buf,0x01);
- snprintf(buf, sizeof(buf)," 经度 %s: %d.%05d","W",j,(unsigned int)(Jnum3*100000));
- GuiShowStr(0,40,buf,0x01);
-
-
- }
- }
-
- void SetGPSTimeShowDetail(unsigned char timeIndex)
- {
- unsigned short tempTime;
- char buf[10];
- //tempTime = GPS_TimeTable[timeIndex];
- tempTime=timeIndex;
- if(tempTime==0)
- {
- GuiShowStr(100,56," 关闭 ",0x01);//130
- GuiReverseRect(108,56,16*2,16);
- }else
- {
- snprintf(buf, sizeof(buf)," %02d 秒",tempTime);
- GuiShowStr(100,56,buf,0x01);//130
- GuiReverseRect(108,56,16,16);
- }
- }
-
-
- /*********************************************************/
- void SetGPSShow(int update)
- {
- static const char *apcMenuSysSetup[]={
- "上传时间设置",
- "北斗服务器设置",
- ""
- };
-
- if(update){
- GuiClearAll();
- ShowCaption("北斗设置",1);//
- GuiDrawHLine(0,159,20,1);
- MenuInit(&sutMenuSysSetup,apcMenuSysSetup);
- }
- }
-
- void SetGPSResponse(void)
- {
- unsigned long key;
- key=MenuResponse(&sutMenuSysSetup);
- if(KEY_PANEL_MENU==key){
- switch(sutMenuSysSetup.handle){
- case 0:
- UISetNextStatus(UIS_GPS_TIME);
- break;
- case 1:
- UISetNextStatus(UIS_GPS_SERVER);
- break;
- }
- }
- else if(KEY_PANEL_EXIT==key){
- UISetNextStatus(UIS_MENU_SYS_SET);
- }
- }
- void UIShowGpsTimeSetup(int update)
- {
- static unsigned short susCt=0;
- if(update){
- GuiClearAll();
- ShowCaption("上传时间设置",1);//
- GuiShowStr(0,56,"北斗上传设置: 秒",0x01); //sutGpsInfo.SendTime
- GuiDrawHLine(0,159,20,1);
- GetCoordinates(0);
- sutGpsInfo.GPS_TimeIndexBackup = sutProductPara.m_GPS_TimeIndex;
-
- SetGPSTimeShowDetail(sutGpsInfo.GPS_TimeIndexBackup);
- GuiDrawHLine(0,159,104,1);
- susCt=0;
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
-
- }
- // if(susCt==0){
- // GuiShowStr(0,110,"[上]选择 [下]选择 ",0x01);
- // }else if(susCt==200){
- // GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- // }
- // if(++susCt>=400)susCt=0;
- }
-
-
-
- void SetGPSTimeResponse(void)
- {
- switch(g_ulKeyValue)
- {
- case KEY_PANEL_UP:
- case KEY_PANEL_DOWN:
- // if(g_ulKeyValue==KEY_PANEL_UP)
- // {
- // if(sutGpsInfo.GPS_TimeIndexBackup<(sizeof(GPS_TimeTable)-1))
- // sutGpsInfo.GPS_TimeIndexBackup++;
- // else
- // sutGpsInfo.GPS_TimeIndexBackup=0;
- // }else{
- // if(sutGpsInfo.GPS_TimeIndexBackup==0)
- // sutGpsInfo.GPS_TimeIndexBackup=sizeof(GPS_TimeTable)-1;
- // else
- // sutGpsInfo.GPS_TimeIndexBackup--;
- // }
- // SetGPSTimeShowDetail(sutGpsInfo.GPS_TimeIndexBackup);
- break;
- case KEY_PANEL_MENU:
- // if(sutGpsInfo.GPS_TimeIndexBackup != sutProductPara.m_GPS_TimeIndex)
- // {//changed
- // sutProductPara.m_GPS_TimeIndex = sutGpsInfo.GPS_TimeIndexBackup;
- // GpsTimeUpdate();
- // SaveProductParaToFlash("MENU_SWGPS");
- // }
-
- UISetNextStatus(UIS_SET_GPS);
- break;
- case KEY_PANEL_EXIT: UISetNextStatus(UIS_SET_GPS);break;
- //case KEY_PANEL_MENU: UISetNextStatus(UIS_MENU_MAIN);break;
- }
- }
- char *LOGINNAME[3]=
- {
- "手动模式",
- "自动模式",
- ""
- };
- void UIShowGpsServerSetup(int update)
- {
- int i;
- static const char *accIconFileName[]={
- "APN.bmp",
- "APN1.bmp",
- ""
- };
- static
- char GroupsFeatures[2];
- if(update){
-
- GuiClearAll();
- ShowCaption("北斗服务器设置",2);//
- GuiDrawHLine(0,159,20,1);
- GroupsFeatures[0]=0;
- GroupsFeatures[1]=0;
- //设置Features 将决定选择图标
- GroupsFeatures[sutProductPara.SwitchGIPFlag]=1;
-
- ListBoxInit(&sutListBox,LOGINNAME,0,accIconFileName,GroupsFeatures);
- //----------------------------
- GuiDrawHLine(0,159,104,1);
- GuiShowStr(0,110,"[OK]确认 [EXIT]退出",0x01);
- }
- }
-
- //设置登录模式
- void SetGPSServerResponse(void)
- {
- unsigned long key;
- key=ListBoxResponse(&sutListBox);
- switch(g_ulKeyValue){
-
- case KEY_PANEL_MENU:
- if(sutListBox.handle==0){
- if(sutProductPara.SwitchGIPFlag !=0){
- sutProductPara.SwitchGIPFlag=0;
-
- }
- UISetNextStatus(UIS_MENU_GIP_SELECT);
- }else{
- if(sutProductPara.SwitchGIPFlag!=1){
-
- }
- UISetNextStatus(UIS_MENU_AUTOGIP_TIME);
- }
-
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_MENU_SYS_SET);
- break;
- }
-
- }
- void UIShowGpsManuIPSelect(int update)
- {
- static unsigned short susCt=0;
- char buf[10];
- char buf2[40];
- int x=12;//4
- if(update==1){
- GuiClearAll();
- ShowCaption("手动模式",1);
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," IP线路: ",1);
- memset(buf2,0,sizeof(buf2));
- if(sutProductPara.GIPSelect==0){
- snprintf(buf2,sizeof(buf2),"IP:%s",sutProductPara.GIP);
- }else {
- snprintf(buf2,sizeof(buf2),"IP:%s",sutProductPara.GIP2);
- }
- ShowCaption(buf2,86);
- snprintf(buf, sizeof(buf),"%s",g_ausIpOut[sutProductPara.GIPSelect]);
-
- IP_Temp_Flag=sutProductPara.GIPSelect;
-
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,40,16);//5
- GuiDrawHLine(0,159,104,1);
- susCt=0;
-
- }else if(update == 2){
- memset(buf,0,sizeof(buf));
- snprintf(buf, sizeof(buf),"%s",g_ausIpOut[IP_Temp_Flag]);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,40,16);//5
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[上]选择 [下]选择",0x01);
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- }
- if(++susCt>=400)susCt=0;
- }
-
- void SetGpsManuIPSelectResponse(void)
- {
- char buf[40];
- switch(g_ulKeyValue){
-
- case KEY_PANEL_UP:
- if(++IP_Temp_Flag>=2)IP_Temp_Flag=0;
- UIShowGpsManuIPSelect(2);//0
- break;
- case KEY_PANEL_DOWN:
- if(IP_Temp_Flag>0) IP_Temp_Flag--;
- else IP_Temp_Flag=1;
- UIShowGpsManuIPSelect(2);//0
- break;
- case KEY_PANEL_MENU:
- //设置新IP
- if(sutProductPara.GIPSelect==IP_Temp_Flag){
- UISetNextStatus(UIS_GPS_SERVER);
- break;
- }
- //标志位要去修改GPS
- sutProductPara.GIPSelect=IP_Temp_Flag;
- sutProductPara.SwitchGIPFlag=0;
- snprintf(buf, sizeof(buf), "AT+TCPCLOSE=%d\r\n", GPS_DATA_SOCKET);
- ModemSendAT(buf);
-
- SaveProductParaToFlash("MENU_SELECTGIP");
- UISetNextStatus(UIS_GPS_SERVER);
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_GPS_SERVER);
- break;
- }
- }
-
- void SetLCDShow(int update)
- {
- static unsigned short susCt=0;
- char buf[10];
- char buf1[6];
- int x=4;//4
- int i;
- if(update==1){
- for(i=0;i<5;i++)sutLcdParam.SetTime[i]=g_ausTimeOut[i];
-
- sutLcdParam.SetTimeIndex=sutLcdParam.OnTimeIndex;
- GuiClearAll();
- ShowCaption("LCD设置",1);//0
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," 背光时间: ",1);
- if(sutLcdParam.SetTimeIndex==4) snprintf(buf, sizeof(buf),"常亮 ");
- else snprintf(buf, sizeof(buf),"%3d 秒",sutLcdParam.SetTime[sutLcdParam.SetTimeIndex]);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,32,16);
- snprintf(buf1, sizeof(buf1),"%3d",sutLcdParam.SetTimeIndex);
- SlwTrace(INF,buf1,1);
- GuiDrawHLine(0,159,104,1);
- susCt=0;
- //return;
- }else if(update == 2){
- if(sutLcdParam.SetTimeIndex==4) snprintf(buf, sizeof(buf),"常亮 ");
- else snprintf(buf, sizeof(buf),"%3d 秒",sutLcdParam.SetTime[sutLcdParam.SetTimeIndex]);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,32,16);
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[上]选择 [下]选择 ",0x01);
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- }
- if(++susCt>=400)susCt=0;
- }
-
-
- void SetLCDResponse(void)
- {
- int FileIndex;
- unsigned long key;
- char Buf[10];
- int x=4;//4
- //TimeOut[]
- // key=ListBoxResponse(&sutListBox);
-
- switch(g_ulKeyValue){
-
- case KEY_PANEL_UP:
- if(++sutLcdParam.SetTimeIndex>=5)sutLcdParam.SetTimeIndex=0;
- SetLCDShow(2);//0
- break;
- case KEY_PANEL_DOWN:
- if(sutLcdParam.SetTimeIndex>0)sutLcdParam.SetTimeIndex--;
- else sutLcdParam.SetTimeIndex=4;
- SetLCDShow(2);//0
- break;
- case KEY_PANEL_MENU:
- g_iLCDFlag=1;
- sutLcdParam.OnTime=sutLcdParam.SetTime[sutLcdParam.SetTimeIndex];
- sutLcdParam.OnTimeIndex=sutLcdParam.SetTimeIndex;
- FileIndex=GetFileIndex("LcdParam.ini");
- ModifyFileData(FileIndex,0,sizeof(SUT_LCD_PARAM),(unsigned char *)&sutLcdParam);
- UISetNextStatus(UIS_MENU_SYS_SET);
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_MENU_SYS_SET);
- break;
- // case KEY_PANEL_MENU:
- // UISetNextStatus(UIS_MENU_MAIN);
- // break;
- }
- // //--
- // if(KEY_PANEL_UP==key){
- // Index++;
- // if(Index==5)Index=0;
- // GuiClearArea(32, 56, 170, 24);
- // sprintf(Buf,"LCD定时:%d秒",TimeOut[Index]);
- // GuiShowStr(32,56,Buf,1);
- // }
- // //--
- // if(KEY_PANEL_DOWN==key){
- // if(Index==0)Index=5;
- // Index--;
- // GuiClearArea(32, 56, 170, 24);
- // sprintf(Buf,"LCD定时:%d秒",TimeOut[Index]);
- // GuiShowStr(32,56,Buf,1);
- // }
- // //--
- // if(KEY_PANEL_OK==key){
- // g_LCDFlag=1;
- // g_LCDTimeCt = TimeOut[Index]+5;
- // g_LCDTemp=TimeOut[Index]+5;
- // }
- // if(KEY_PANEL_EXIT==key)UISetNextStatus(UIS_STANDBY);
- // else if(KEY_PANEL_MENU==key)UISetNextStatus(UIS_MENU_MAIN);
- }
- unsigned char modemProcessFlash=0;
- MODEM_UPDATE_DEF m_updStatus;
- unsigned char m_process=0;
- int m_updateTimeout=0;
- char updateStart=0;
- void UpdateStatus(MODEM_UPDATE_DEF status)
- {
- modemProcessFlash=1;
- m_updStatus=status;
- m_updateTimeout=0;
- }
- void SetUpIntercomVerShow(int update)
- {
- char buf[19];
- if(update){
- GuiClearAll();
- ShowCaption("升级对讲版本",1);//
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(16,56,"升级到最新版本? ",1);
- GuiDrawHLine(0,159,104,1);
- GuiShowStr(0,110,"[M]升级 [EXIT]退出",0x01);
- }
- if(updateStart)
- {
- if(++m_updateTimeout>2000)
- {
- m_updateTimeout=0;
- UpdateStatus(MODEM_STATUS_TIMEOUT);
- }
- }
- if(modemProcessFlash==0) return;
- modemProcessFlash=0;
- switch(m_updStatus)
- {
- case MODEM_STATUS_TRIGGER://正在启动更新
- GuiShowStr(16,22,"正在启动更新...",1);
- TriggerHttpOn(MODE_HTTP_MODEM);
- break;
- case MODEM_STATUS_READY://启动成功,获取最新版本
- GuiShowStr(16,42,"正在获取版本...",1);
- break;
- case MODEM_STATUS_CMD_VER_ERR://指令失败
- GuiShowStr(16,62,"获取失败/版本错误.",1);
- UpdateStatus(MODEM_STATUS_REBOOT);
- break;
- case MODEM_STATUS_NO_NEWVER://没有最新版本
- GuiShowStr(16,62,"没有最新版本...",1);
- UpdateStatus(MODEM_STATUS_REBOOT);
- break;
- case MODEM_STATUS_LOADING://正在下载
- GuiShowStr(16,62,"正在下载",1);
- snprintf(buf, sizeof(buf), ">>%d%%", m_process);
- GuiShowStr(16,82,buf,1);
- break;
- case MODEM_STATUS_SER_ERR://服务器应答出问题:如没有目标谁的
- GuiShowStr(16,102,"没有文件/其它错误",1);
- UpdateStatus(MODEM_STATUS_REBOOT);
- break;
- case MODEM_STATUS_DONE://下载完成
- GuiShowStr(16,102,"下载完成,正在安装",1);
- break;
- case MODEM_STATUS_INSTALLED://安装完成
- GuiShowStr(16,102,"安装完成,升级完成",1);
- UpdateStatus(MODEM_STATUS_REBOOT);
- break;
- case MODEM_STATUS_TIMEOUT:
- GuiShowStr(16,22,"超时无响应...",1);
- UpdateStatus(MODEM_STATUS_REBOOT);
- break;
- case MODEM_STATUS_REBOOT:
- LCD_BL_HIGH;
- os_dly_wait(200);
- modemPwrOffNow=1;
- // while(1)
- // {
- // os_dly_wait(100);
- // IWDG_ReloadCounter();
- // }
- break;
- }
- }
- void SetUpIntercomVerResponse(void)
- {
- if(updateStart) return;
- if(KEY_PANEL_MENU==g_ulKeyValue)
- {
- if(sutGpsStatus.PPPStatus != OPEN)
- {
- ShowMessageBox("无网络");
- os_dly_wait(100);
- UISetNextStatus(UIS_MENU_SYS_SET);
- return;
- }
- updateStart++;
- GuiClearArea(0, 22, LCD_WIDTH-1, LCD_HEIGHT-22);
- UpdateStatus(MODEM_STATUS_TRIGGER);
- }
-
- if(KEY_PANEL_EXIT==g_ulKeyValue) UISetNextStatus(UIS_MENU_SYS_SET);
- }
- char GetApnPara(unsigned char *source, unsigned char whitchOne,unsigned short *accessP, unsigned short *account,unsigned short *passw)
- {
- unsigned char *ptr=source;
- unsigned char getFlag=0;
-
- unsigned short i,noteAddress[9];//总共3组,共9个;号
-
- if(whitchOne >=3) return 1;//只有3组值
- i=0;
- while(*ptr != 0)
- {
- if(*ptr == ';')
- {
- if(getFlag < 9)
- {
- noteAddress[getFlag++]=i;
- }else{
- //收够了
- break;
- }
- }
- i++;
- ptr++;
- }
- if(getFlag != 9) return 2;//资源文件内容有错误
- switch(whitchOne)
- {
- case 0:*accessP=0;*account=noteAddress[0]+1;*passw=noteAddress[1]+1;break;
- case 1:*accessP=noteAddress[2]+1;*account=noteAddress[3]+1;*passw=noteAddress[4]+1;break;
- case 2:*accessP=noteAddress[5]+1;*account=noteAddress[6]+1;*passw=noteAddress[7]+1;break;
- }
- return 0;
- }
- char ReadApnData(unsigned char *source,unsigned char witchone,char *apnapn,char *apnname,char *apnpass)
- {//从缓存中获取数据段,一次一组
- unsigned char *accessPV,*accountV,*passwV;
- unsigned short accessP,account,passw;
- unsigned short i;
- char buf[30];
- if(GetApnPara(source, witchone, &accessP, &account, &passw))
- {
- SlwTrace(INF, "HGS.apn dataErr",1);//如果初始化失败,则直接使用内存中的了
- return 1;
- }
- accessPV=source+accessP;
- accountV=source+account;
- passwV=source+passw;
- //accesspoint
- if(apnapn != 0)
- {
- if(*accessPV == ';') apnapn[0] = 0;//空数据段
- else{
- for(i=0;i<APN_LEN;i++)
- {
- if(accessPV[i] != ';') apnapn[i]=accessPV[i];
- else{
- apnapn[i]=0;
- break;
- }
- }
- }
- }
- //account name
- if(apnname != 0)
- {
- if(*accountV == ';') apnname[0] = 0;//空数据段
- else{
- for(i=0;i<APN_LEN;i++)
- {
- if(accountV[i] != ';') apnname[i]=accountV[i];
- else{
- apnname[i]=0;
- break;
- }
- }
- }
- }
- //password
- if(apnpass != 0)
- {
- if(*passwV == ';') apnpass[0] = 0;//空数据段
- else{
- for(i=0;i<APN_LEN;i++)
- {
- if(passwV[i] != ';') apnpass[i]=passwV[i];
- else{
- apnpass[i]=0;
- break;
- }
- }
- }
- }
- return 0;
- }
- //读取Para.ini配置文件获取LCD模式
- char GetApnFromSrc(char *src, char index,char *name, char *pass)
- {
- char target[15];
- char finalData[62];
- unsigned char tempLen,i,j;
- j=0;
- index +=1;
- switch(index)
- {
- case 1:case 2:case 3:case 4:
- snprintf(target, sizeof(target), "APN%d", index);
- break;
- default:return 0;
- }
- tempLen=GetParaFromStr(src, target, finalData);
- if(tempLen == 0) return 0;
- for(i=0;i<tempLen;i++)
- {
- if(finalData[i]==',')
- {
- j=i+1;
- finalData[i]=0;
- i=tempLen;
- }
- }
- tempLen=strlen(finalData);
- if(tempLen>30) tempLen=30;
- memcpy(name, finalData, tempLen);
- name[tempLen]=0;
- tempLen=strlen(finalData+j);
- if(tempLen>30) tempLen=30;
- memcpy(pass, finalData+j, tempLen);
- pass[tempLen]=0;
- return 1;
- }
- int HgsApnLen;
- unsigned char validApnNum;
- void APNFileInit(void)
- {
- char tempData[400];//3组APN,每组中每参数30个
- char name[APN_LEN+1];
- char pass[APN_LEN+1];
- int tempLen,i;
-
- ApnFileIndex=GetFileIndex("HGS.apn");
- if(ApnFileIndex == -1)
- {
- printf("No HGS.apn file\r\n");
- goto READ_EXIT;
- }
-
- HgsApnLen=GetFileLen(ApnFileIndex);
- if(HgsApnLen==0)
- {
- printf("HGS.apn empty\r\n");
- goto READ_EXIT;
- }
- //读出数据
- if(HgsApnLen > sizeof(tempData))
- {
- printf("Hgs.apn len=%d,should <=%d\r\n",HgsApnLen,sizeof(tempData));
- HgsApnLen=sizeof(tempData);
- }
- tempLen=ReadFileData(ApnFileIndex,0,HgsApnLen,(u8*)tempData);
- //检测是否显示APN
- tempLen=GetParaFromStr(tempData, "APNSHOW", name);
- if(tempLen==0)
- {
- showApn=1;//没有字段,则设置为显示菜单
- printf("No 'APNSHOW'\r\n");
- }else{
- showApn=atoi(name);
- }
- printf("APNSHOW:%d\r\n",showApn);
- READ_EXIT:
-
- //读取APN参数到table
- if(ApnFileIndex==-1 || HgsApnLen==0)
- {//资源文件错误,则只有一个默认APN
- goto SET_ONLY_ONE;
- }else{
- //读出数据
- for(i=0;i<APN_NUM;i++)
- {
- if(0==GetApnFromSrc(tempData, i, name,pass))
- {//获取APN失败,恢复默认
- goto SET_ONLY_ONE;
- }else{
- strcpy(&showApnTable[2*i][0], name);
- strcpy(&showApnTable[2*i+1][0],pass);
- }
- }
- validApnNum=APN_NUM;
- goto COPY_DATA;
- }
-
- SET_ONLY_ONE:
- strcpy(showApnTable[0],APN_NAME);
- strcpy(showApnTable[1],APN_PASSWORD);
- validApnNum=1;
-
- sutProductPara.APNIndex=0;
- COPY_DATA:
- //copy data
- strncpy(sutProductPara.APNName,showApnTable[2*sutProductPara.APNIndex],APN_LEN);
- strncpy(sutProductPara.APNPass,showApnTable[2*sutProductPara.APNIndex],APN_LEN);
-
- }
- #if 0
- void SetNetResponse(void)
- {
- char buf[30];
- unsigned long key;
- // static char temp=0;
-
- key=MenuResponse(&sutMenuSysSetup);
- if(KEY_PANEL_MENU==key){
- if(sutProductPara.g_net==sutMenuSysSetup.handle){
- return;
- }
- switch(sutMenuSysSetup.handle){
-
- case 0:
- sutProductPara.g_net=0;
- GetMododexWithCard();
- break;
- case 1: //移动
- sutProductPara.g_net=1;
- GetMododexWithCard();
- break;
- case 2:
- sutProductPara.g_net=2;
- GetMododexWithCard();
- break;
- case 3:
- break;
- }
-
-
- GuiClearArea(0, 1, LCD_WIDTH-1,18);
- ShowNetCaption(sutProductPara.g_net);
- SaveProductParaToFlash("MENU_SWGPS");
- }else if(KEY_PANEL_EXIT==key){
- UISetNextStatus(UIS_MENU_SYS_SET); //UIS_MENU_SYS_SET
- }
-
- }
- # else
- void SetNetResponse(void)
- {
-
- switch(g_ulKeyValue){
-
- case KEY_PANEL_UP:
- if(++Net_temp_flag>=4)Net_temp_flag=0; //3
- SetNetShow(2);//0
- break;
- case KEY_PANEL_DOWN:
- if(Net_temp_flag>0)Net_temp_flag--;
- else Net_temp_flag=3; //2
- SetNetShow(2);//0
- break;
- case KEY_PANEL_MENU:
- sutProductPara.g_net=Net_temp_flag;
- GetMododexWithCard();
- SaveProductParaToFlash("MENU_SWGPS");
- UISetNextStatus(UIS_MENU_SYS_SET);
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_MENU_SYS_SET);
- break;
- }
-
- }
- #endif
- #if 0
- void SetNetShow(int update)
- {
- static const char *apcMenuSysSetup[]={
- "网模自动",
- "2G+3G",
- "4G模式",
- ""
- };
- if(update){
- GuiClearAll();
- ShowNetCaption(sutProductPara.g_net);
- GuiDrawHLine(0,159,20,1);
- MenuInit(&sutMenuSysSetup,apcMenuSysSetup);
- return;
- }
- }
- #else
- void SetNetShow(int update)
- {
- //const char *p=GetCaptionByMododex[Mododrex_Net];
- static unsigned short susCt=0;
- char buf[10];
- unsigned char len=0;
- char buf2[20];
- int x=12;//4
- if(update==1){
- GuiClearAll();
-
- //ShowNetCaption(sutProductPara.g_net); Mododrex_Net
- ShowCaption("网络设置",1);
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," 网络选择: ",1);
- snprintf(buf2,sizeof(buf2),"MODE:%s",GetCaptionByMododex(Mododrex_Net));
- //GuiShowStr(x,86,buf2,1);
- ShowCaption(buf2,86);
- snprintf(buf, sizeof(buf),"%s",g_ausNetOut[sutProductPara.g_net]);
- len=strlen(buf);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,8*len,16);//5
- GuiDrawHLine(0,159,104,1);
- susCt=0;
- }else if(update == 2){
- memset(buf,0,sizeof(buf));
- snprintf(buf, sizeof(buf),"%s",g_ausNetOut[Net_temp_flag]);
- len=strlen(buf);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,8*len,16);//5
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[上]选择 [下]选择 ",0x01);
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- }
- if(++susCt>=400)susCt=0;
- }
- #endif
- void ShowNetCaption(unsigned char g_net)
- {
-
- switch(g_net)
- {
- case 0:
- ShowCaption("当前(Auto)",1); //
- break;
- case 1:
-
- ShowCaption("当前(2G+3G)",1); //
- break;
- case 2:
-
- ShowCaption("当前(4g模式)",1); //
- break;
- default:
- break;
- }
- }
- void GetMododexWithCard(void)
- {
- char buf[30];
- //根据CardType和ModeSetup转换为Mododex值的一个表
- //static const unsigned char MododrxTable[3][3]={{11,24,5},{2,8,5},{17,21,5}};
- static const unsigned char MododrxTable[3][4]={{11,15,10,5},{2,25,7,5},{17,25,1,5}};
- snprintf(buf,sizeof(buf),"AT+MODODREX=%d\r\n",MododrxTable[thisYunYingShang][sutProductPara.g_net]);
- ModemSendAT(buf);
- }
- const char *GetCaptionByMododex(unsigned int mododex)
- {
-
- static const char *CaptionTable[]={
- "",
- "UMTS ONLY",//1
- "AUTO(LTE)",
- "CDMA AND GSM",
- "AUTO(TDS)",
- "LTE ONLY",
- "TDS ONLY",
- "TDS WCDMA",
- "TDS GSM WCDMA",
- "TDS WCDMA LTE",
- "HDR ONLY",
- "AUTO (TELECOM)",
- "AUTO(HDR)",
- "CDMA HDR LTE",
- "CDMA HDR",
- "CDMA ONLY",
- "AUTO(TDS,LTE)",
- "AUTO(LTE,WCDMA)",
- "AUTO(WCDMA,GSM)",
- "AUTO(WCDMA,LTE)",
- "LTE WCDMA ONLY",
- "WCDMA GSM ONLY",
- "LTE AND TDS",
- "LTE GSM ONLY",
- "CDMA HDR WCDMA GSM",
- "GSM ONLY",
- };
-
- return CaptionTable[mododex];
- }
- void SetLoginShow(int update)
- {
- int i;
- static const char *accIconFileName[]={
- "APN.bmp",
- "APN1.bmp",
- ""
- };
- static
- char GroupsFeatures[2];
- if(update){
-
- GuiClearAll();
- ShowCaption("登录模式",2);//
- GuiDrawHLine(0,159,20,1);
- GroupsFeatures[0]=0;
- GroupsFeatures[1]=0;
- //设置Features 将决定选择图标
- GroupsFeatures[sutProductPara.SwitchIpFlag]=1;
-
- ListBoxInit(&sutListBox,LOGINNAME,0,accIconFileName,GroupsFeatures);
- //----------------------------
- GuiDrawHLine(0,159,104,1);
- GuiShowStr(0,110,"[OK]确认 [EXIT]退出",0x01);
- }
- }
- //设置登录模式
- void SetSYSLogin(void)
- {
- static char updownct=1;
- unsigned long key;
- key=ListBoxResponse(&sutListBox);
- switch(g_ulKeyValue){
-
- case KEY_PANEL_UP:
- if(updownct==0){
- updownct=1;
- break;
- }
- updownct--;
- break;
- case KEY_PANEL_DOWN:
- if(updownct==2){
- updownct=1;
- break;
- }
- updownct++;
- break;
- case KEY_PANEL_MENU:
- if(updownct==1){
-
- UISetNextStatus(UIS_MENU_IP_SELECT);
-
- }else{
- //SlwTrace(INF,"hello-----------------------",1);
- UISetNextStatus(UIS_MENU_AUTOIP_TIME);
- updownct=1;
- }
-
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_MENU_SYS_SET);
- updownct=1;
- break;
- }
-
- }
- void SetSelectIpShow(int update)
- {
- static unsigned short susCt=0;
- char buf[10];
- char buf2[40];
- int x=12;//4
- if(update==1){
- GuiClearAll();
-
- //ShowNetCaption(sutProductPara.g_net); Mododrex_Net
- ShowCaption("手动模式",1);
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," IP线路: ",1);
- memset(buf2,0,sizeof(buf2));
- if(sutProductPara.Ipselect==0){
- snprintf(buf2,sizeof(buf2),"IP:%s",sutProductPara.PIP);
- printf("sutProductPara.Ipselect!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n");
- }else {
- printf("sutProductPara.Ipselect############################\r\n");
- snprintf(buf2,sizeof(buf2),"IP:%s",sutProductPara.PIP2);
- }
- ShowCaption(buf2,86);
- snprintf(buf, sizeof(buf),"%s",g_ausIpOut[sutProductPara.Ipselect]);
-
- printf("sutProductPara.Ipselect==============%d\r\n",sutProductPara.Ipselect);
-
- IP_Temp_Flag=sutProductPara.Ipselect;
-
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,40,16);//5
- GuiDrawHLine(0,159,104,1);
- susCt=0;
-
- }else if(update == 2){
- memset(buf,0,sizeof(buf));
- snprintf(buf, sizeof(buf),"%s",g_ausIpOut[IP_Temp_Flag]);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,40,16);//5
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[上]选择 [下]选择 ",0x01);
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- }
- if(++susCt>=400)susCt=0;
- }
- void SetSelectIpResponse(void)
- {
-
- switch(g_ulKeyValue){
-
- case KEY_PANEL_UP:
- if(++IP_Temp_Flag>=2)IP_Temp_Flag=0;
- SetSelectIpShow(2);//0
- break;
- case KEY_PANEL_DOWN:
- if(IP_Temp_Flag>0) IP_Temp_Flag--;
- else IP_Temp_Flag=1;
- SetSelectIpShow(2);//0
- break;
- case KEY_PANEL_MENU:
-
- //设置新IP
- if(sutProductPara.Ipselect==IP_Temp_Flag){
- UISetNextStatus(UIS_MENU_LOGIN_MODE);
- sutProductPara.SwitchIpFlag=0;
- SaveProductParaToFlash("MENU_SELECTIP");
- break;
- }
- sutProductPara.Ipselect=IP_Temp_Flag;
- sutProductPara.SwitchIpFlag=0;
- SaveProductParaToFlash("MENU_SELECTIP");
- if(ModemIpReset()) SlwTrace(INF,"Rst_newIP",1);
- UISetNextStatus(UIS_MENU_LOGIN_MODE);
- //sutPocStatus.modemRstFlag=1;
- ShowMessageBox("即将重启更新...");
- os_dly_wait(200);
- modemPwrOffNow=1;
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_MENU_LOGIN_MODE);
- break;
- }
-
- }
- void SetAutoIptimeshow(int update)
- {
- static unsigned short susCt=0;
- char buf[10];
- char buf1[6];
- int x=4;//4
- int i;
- if(update==1){
-
- GuiClearAll();
- ShowCaption("自动模式",1);//0
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," 超时切换: ",1);
- snprintf(buf, sizeof(buf),"%3d 分",g_ausIPTimeOut[sutProductPara.SwitchIpCt]);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,32,16);
- // snprintf(buf1, sizeof(buf1),"%3d",sutLcdParam.SetTimeIndex);
- // SlwTrace(INF,buf1,1);
- IP_Temp_Flag=sutProductPara.SwitchIpCt;
- GuiDrawHLine(0,159,104,1);
- susCt=0;
-
- }else if(update == 2){
-
- snprintf(buf, sizeof(buf),"%3d 分",g_ausIPTimeOut[IP_Temp_Flag]);
-
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,32,16);
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[上]选择 [下]选择 ",0x01);
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- }
- if(++susCt>=400)susCt=0;
- }
-
- void SetAutoIpResponse(void)
- {
-
- switch(g_ulKeyValue){
- case KEY_PANEL_UP:
- if(++IP_Temp_Flag>=4)IP_Temp_Flag=0;
- SetAutoIptimeshow(2);//0
- break;
- case KEY_PANEL_DOWN:
- if(IP_Temp_Flag>0)IP_Temp_Flag--;
- else IP_Temp_Flag=3;
- SetAutoIptimeshow(2);//0
- break;
- case KEY_PANEL_MENU:
-
- sutProductPara.SwitchIpCt=IP_Temp_Flag;
- sutProductPara.SwitchIpFlag=1;
-
- //printf("222222222222222222222222222222222222222222222222");
- SaveProductParaToFlash("AUTOIPTIME");
- UISetNextStatus(UIS_MENU_LOGIN_MODE);
- break;
- case KEY_PANEL_EXIT:
- //printf("222222222222222222222222222222222222222222222222");
- UISetNextStatus(UIS_MENU_LOGIN_MODE);
- break;
- }
- }
-
- void SetAutoGIptimeshow(int update)
- {
- static unsigned short susCt=0;
- char buf[10];
- char buf1[6];
- int x=4;//4
- int i;
- if(update==1){
-
- GuiClearAll();
- ShowCaption("自动模式",1);//0
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," 超时切换: ",1);
- snprintf(buf, sizeof(buf),"%3d 分",g_ausIPTimeOut[sutProductPara.SwitchGipct]);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,32,16);
- IP_Temp_Flag=sutProductPara.SwitchGipct;
- GuiDrawHLine(0,159,104,1);
- susCt=0;
-
- }else if(update == 2){
-
- snprintf(buf, sizeof(buf),"%3d 分",g_ausIPTimeOut[IP_Temp_Flag]);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,32,16);
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[上]选择 [下]选择 ",0x01);
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- }
- if(++susCt>=400)susCt=0;
- }
-
- void SetAutoGIpResponse(void)
- {
-
- switch(g_ulKeyValue){
- case KEY_PANEL_UP:
- if(++IP_Temp_Flag>=4)IP_Temp_Flag=0;
- SetAutoGIptimeshow(2);//0
- break;
-
- case KEY_PANEL_DOWN:
- if(IP_Temp_Flag>0)IP_Temp_Flag--;
- else IP_Temp_Flag=3;
- SetAutoGIptimeshow(2);//0
- break;
- case KEY_PANEL_MENU:
- sutProductPara.SwitchGipct=IP_Temp_Flag;
-
- sutProductPara.SwitchGIPFlag=1;
- SaveProductParaToFlash("AUTOIPTIME");
- UISetNextStatus(UIS_SET_GPS);
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_SET_GPS);
- break;
- }
- }
- void SetMenuPassMageShow(int update)
- {
- static const char *apcMenuSysSetup[]={
- "修改密码",
- "密码使能",
- ""
- };
- if(update){
- GuiClearAll();
- ShowCaption("密码管理",1); //0
- GuiDrawHLine(0,159,20,1);
- MenuInit(&sutMenuSysSetup,apcMenuSysSetup);
- return;
- }
- }
-
- void SetMenuPassMageResponse(void)
- {
- unsigned long key;
- key=MenuResponse(&sutMenuSysSetup);
- if(KEY_PANEL_MENU==key){
- switch(sutMenuSysSetup.handle){
- case 0:
- UISetNextStatus(UIS_SET_PASSWORD);
- break;
- case 1:
- UISetNextStatus(UIS_SET_PASSWORDINABLE);
- break;
- }
- }
- else if(KEY_PANEL_EXIT==key){
- UISetNextStatus(UIS_MENU_SYS_SET); //UIS_MENU_SYS_SET
- }
- }
- void ResetPasswordShow(int update){
- static unsigned short susCt;
- if(update){
- GuiClearAll();//clear
- // GuiShowStr(4,28,"请输入密码",1);
- ShowCaption("设置密码:",1); //0
- //GuiDrawHLine(0,159,20,1);
- NumEditInit(&sutNumEdit,48,48,"0-----");
- NumEditShow(&sutNumEdit);
- GuiDrawHLine(0,159,104,1);
- //GuiShowStr(0,110," [上]?[下]右移 ",0x01);
- }
-
- // //按键提示
- if(susCt==0){
- GuiShowStr(0,110," [上]上翻 [下]下翻",0x01);//[OK]确定
- }else if(susCt==200){
- GuiShowStr(0,110," [M]确定 [D]删除 ",0x01);
-
- }
- if(++susCt>=400)susCt=0;
-
- }
- void ResetPasswordResponse(){
- unsigned long key;
- //NumEditResponse(&sutNumEdit);
-
- char v;
- SUT_NUM_EDIT*p;
- p=&sutNumEdit;
- v=p->buffer[p->item];
- switch(g_ulKeyValue)
- {
- case KEY_PANEL_UP:
- if(v=='-')v='/';//
- if(v<'9')v++;
- else v='0';
- p->buffer[p->item]=v;
-
- NumEditShow(p);
- break;
- case KEY_PANEL_DOWN:
- //原来下是减值的
- if(v>'0')v--;
- else v='9';
- p->buffer[p->item]=v;
- NumEditShow(p);
- break;
- case KEY_PANEL_EXIT:
- if(p->item>0){
- p->buffer[p->item]='-';
- p->item--;
- NumEditShow(p);
- }else{
- p->item=p->len-1;
- UISetNextStatus(UIS_MENU_PASSMAGE);
-
- }
-
- break;
- case KEY_PANEL_MENU:
-
- if(p->item<(p->len-1)){
- p->item++;
- p->buffer[p->item]='0';
- NumEditShow(p);
- }else{
- p->item=0;
-
- strncpy(Private_password,sutNumEdit.buffer,sizeof(Private_password));
- SlwTrace(INF,Private_password,1);
- UISetNextStatus(UIS_RECONFIRM_PASSWORD);
-
- }
-
- break;
- }
-
-
- //
- // if(KEY_PANEL_MENU==g_ulKeyValue){
- // //sutListBox.item[sutListBox.handle]=sutNumEdit.buffer;
- //
- //
- //
- // }
- // if(KEY_PANEL_EXIT==g_ulKeyValue){
- //
- // }
-
- }
- void ReConfigPasswordShow(int update){
- static unsigned short susCt;
- if(update){
- GuiClearAll();//clear
- ShowCaption("重复密码:",1); //0
- NumEditInit(&sutNumEdit,48,48,"0-----");
- NumEditShow(&sutNumEdit);
- GuiDrawHLine(0,159,104,1);
- }
-
- // //按键提示
- if(susCt==0){
- GuiShowStr(0,110," [上]上翻 [下]下翻",0x01);//[OK]确定
- }else if(susCt==200){
- GuiShowStr(0,110," [M]确定 [D]删除 ",0x01);
-
- }
- if(++susCt>=400)susCt=0;
-
- }
- void ReConfigPasswordResponse(){
- char buf[7];
- //char buf2[40];
- unsigned long key;
- //NumEditResponse(&sutNumEdit);
- char v;
- SUT_NUM_EDIT*p;
- p=&sutNumEdit;
- v=p->buffer[p->item];
- switch(g_ulKeyValue)
- {
- case KEY_PANEL_UP:
- if(v=='-')v='/';//
- if(v<'9')v++;
- else v='0';
- p->buffer[p->item]=v;
- //snprintf(buf2,sizeof(buf2),"V+++==============%d",v);
- //SlwTrace(INF,buf2,1);
-
- NumEditShow(p);
- break;
- case KEY_PANEL_DOWN:
- if(v>'0')v--;
- else v='9';
- //snprintf(buf2,sizeof(buf2),"V----==============%c",v);
- //SlwTrace(INF,buf2,1);
- p->buffer[p->item]=v;
- NumEditShow(p);
- break;
- case KEY_PANEL_EXIT:
- if(p->item>0){
- p->buffer[p->item]='-';
- p->item--;
-
- NumEditShow(p);
- }else{
- p->item=p->len-1;
- UISetNextStatus(UIS_MENU_PASSMAGE);
- }
- break;
- case KEY_PANEL_MENU:
-
- if(p->item<(p->len-1)){
- p->item++;
- p->buffer[p->item]='0';
- NumEditShow(p);
- }else{
- p->item=0;
- strncpy(buf,sutNumEdit.buffer,sizeof(buf));
- SlwTrace(INF,buf,1);
-
- if(sutProductPara.PasswordInable==0){
- //提示密码功能未开启
-
- ShowMessageBox("密码功能未开启");
- os_dly_wait(100);
-
- }else if(strcmp(Private_password,buf)==0){
- strncpy(sutProductPara.Password,buf,sizeof(sutProductPara.Password));
- SaveProductParaToFlash("reset PASS WORD");
- ShowMessageBox("密码设置成功");
- os_dly_wait(100);
- }else{
- //提示错误 密码不一致
- ShowMessageBox("密码不一致");
- os_dly_wait(100);
- //printf("密码不一致。。。。。。。。。。。。。。。。。。。。\r\n");
-
- }
-
- UISetNextStatus(UIS_MENU_PASSMAGE);
-
-
- }
-
- break;
- }
-
-
-
- //
- // if(KEY_PANEL_MENU==g_ulKeyValue){
- //
- //
- // }
- // if(KEY_PANEL_EXIT==g_ulKeyValue){
- // UISetNextStatus(UIS_MENU_PASSMAGE);
- // }
- }
- void PasswordInableShow(int update){
- static unsigned short susCt=0;
- char buf[10];
- unsigned char len=0;
- char buf2[20];
- int x=12;//4
- if(update==1){
- GuiClearAll();
-
- //ShowNetCaption(sutProductPara.g_net); Mododrex_Net
- ShowCaption("密码使能",1);
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," Select: ",1);
- snprintf(buf, sizeof(buf),"%s",g_ausPassOut[sutProductPara.PasswordInable]);
- len=strlen(buf);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,8*len,16);//5
- GuiDrawHLine(0,159,104,1);
- susCt=0;
- }else if(update == 2){
- memset(buf,0,sizeof(buf));
- snprintf(buf, sizeof(buf),"%s",g_ausPassOut[IP_Temp_Flag]);
- len=strlen(buf);
- GuiShowStr(x+(16*5),56,buf,1);
- GuiReverseRect(x+(16*5),56,8*len,16);//5
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[上]选择 [下]选择 ",0x01);
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]保存 [EXIT]退出",0x01);
- }
- if(++susCt>=400)susCt=0;
-
-
- }
- void PasswordInableResponse(){
-
- char buf[40];
- switch(g_ulKeyValue){
-
- case KEY_PANEL_UP:
- if(++IP_Temp_Flag>=2)IP_Temp_Flag=0;
- PasswordInableShow(2);//0
- break;
- case KEY_PANEL_DOWN:
- if(IP_Temp_Flag>0) IP_Temp_Flag--;
- else IP_Temp_Flag=1;
- PasswordInableShow(2);//0
- break;
- case KEY_PANEL_MENU:
- if(sutProductPara.PasswordInable==IP_Temp_Flag){
- UISetNextStatus(UIS_MENU_PASSMAGE);
- break;
- }
- sutProductPara.PasswordInable=IP_Temp_Flag;
- SaveProductParaToFlash("MENU_INABLE");
- UISetNextStatus(UIS_MENU_PASSMAGE);
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_MENU_PASSMAGE);
- break;
-
- }
- }
-
- void SetKeySoundShow(int update)
- {
- static unsigned short susCt=0;
- static char cnt=0;
- char buf[10];
- unsigned char len=0;
- char buf2[20];
- int x=12;//4
- if(update==1){
- GuiClearAll();
- ShowCaption("ìáê?ò?éè??",1);
- GuiDrawHLine(0,159,20,1);
- GuiShowStr(x,56," ?a1?:",1);
- snprintf(buf, sizeof(buf),"%s",sutProductPara.Keysound);
- len=strlen(buf);
- GuiShowStr(x+(16*4),56,buf,1);
- GuiReverseRect(x+(16*4),56,8*len,16);//5
- GuiDrawHLine(0,159,104,1);
- susCt=0;
- }else if(update == 2){
- memset(buf,0,sizeof(buf));
- cnt++;
- if(0==strcmp(sutProductPara.Keysound,"open")){
-
- if(0!=cnt%2){
-
- snprintf(buf, sizeof(buf),"%s","close");
- }else {
-
- snprintf(buf, sizeof(buf),"%s","open");
- }
-
- }else
- {
- if(0!=cnt%2) snprintf(buf, sizeof(buf),"%s","open");
- else snprintf(buf, sizeof(buf),"%s","close");
-
- }
- len=strlen(buf);
- GuiClearArea(x+(16*4),56,160,16); ////////////////////////
- GuiShowStr(x+(16*4),56,buf,1);
- GuiReverseRect(x+(16*4),56,8*len,16);//5
- GuiDrawHLine(0,159,104,1);
- }
-
- if(susCt==0){
- GuiShowStr(0,110,"[é?]???? [??]????",0x01);
-
-
- }else if(susCt==200){
- GuiShowStr(0,110,"[M]±£′? [EXIT]í?3?",0x01);
- }
- if(++susCt>=400)susCt=0;
- }
- void SetKeysoundResponse(void)
- {
- static char cnt=0;
-
- switch(g_ulKeyValue){
-
- case KEY_PANEL_UP:
- cnt++;
- SetKeySoundShow(2);//0
- break;
- case KEY_PANEL_DOWN:
- cnt++;
- SetKeySoundShow(2);//0
- break;
- case KEY_PANEL_MENU:
-
- if(0==cnt%2){
- UISetNextStatus(UIS_MENU_SYS_SET);
- }else{
-
- if(0==strcmp(sutProductPara.Keysound,"open")){
- strcpy(sutProductPara.Keysound,"close");
- }else strcpy(sutProductPara.Keysound,"open");
-
- }
- printf("start set--------------------\r\n");
- SaveProductParaToFlash("MENU_SWGPS");
- UISetNextStatus(UIS_MENU_SYS_SET);
- break;
- case KEY_PANEL_EXIT:
- UISetNextStatus(UIS_MENU_SYS_SET);
- break;
- }
-
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
|