⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uinew.c

📁 这个是单片机4200的ui程序
💻 C
📖 第 1 页 / 共 5 页
字号:
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM1);
				}
			break;
		case PANEL_NUM2:
			if(gUIMain.UIstate != SERVICE_MODE)
				{
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM2);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM2);
				}
			break;
		case PANEL_NUM3:
			if(gUIMain.UIstate != SERVICE_MODE)
				{
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM3);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM3);
				}
			break;
		case PANEL_NUM4:
			if(gUIMain.UIstate != SERVICE_MODE)
				{
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM4);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM4);
				}
			break;			
		case PANEL_NUM5:
			if(gUIMain.UIstate != SERVICE_MODE)
				{
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM5);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM5);
				}
			break;
		case PANEL_NUM6:
			if(gUIMain.UIstate != SERVICE_MODE)
				{
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM6);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM6);
				}			
			break;
		case PANEL_NUM7:
			if(gUIMain.UIstate != SERVICE_MODE)
				{			
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM7);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM7);
				}
			break;
		case PANEL_NUM8:
			if(gUIMain.UIstate != SERVICE_MODE)
				{				
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM8);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM8);
				}			
			break;
		case PANEL_NUM9:
			if(gUIMain.UIstate != SERVICE_MODE)
				{
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM9);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM9);
				}			
			break;
		case PANEL_NUM0:
			if(gUIMain.UIstate != SERVICE_MODE)
				{			
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_NUM0);
				}
			else if(gpMenudata->ml != mlDIAGNOSIS)
				{
				InputPassword(PANEL_NUM0);
				}			
			break;
		case PANEL_STAR:
			pml = gpMenudata->ml + gpMenudata ->mlIndex;
			pml ->fun(PANEL_STAR);
			break;
		case PANEL_SHARP:
			pml = gpMenudata->ml + gpMenudata ->mlIndex;
			pml ->fun(PANEL_SHARP);
			break;
		case PANEL_PHONEBOOK://for KIMO only
			if(gUIMain.UIstate == STANDBY)
				{
				gpMenudata->ml = mlFAX;
				gpMenudata->mlIndex = 2;
				gpMenudata->mlCount = MENUITEMCOUNT(mlFAX);
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				gpMenudata ->currentMenu = pml;
				gUIMain.UIstate = FAX_IDLE;
				pml ->fun(PANEL_PHONEBOOK);
				}
			break;
		case PANEL_PAUSE://for KIMO only

			if(DiagnosticMode)
				{
				gUIMain.UIstate = SERVICE_MODE;
				inputindex = 0;
				factorycount = 0;
				sprintf(firstlinebuf,"Enter Password");
				sprintf(secondlinebuf,"");
				}
			else if(defaultset)
				{
				UIAllReset();
				defaultset = FALSE;
				factorycount = 0;
				}			
			else
				{
				pml = gpMenudata->ml + gpMenudata ->mlIndex;
				pml ->fun(PANEL_PAUSE);
				}
			break;

#if	0			
		case PANEL_ONETOUCH01://for KILO only
		case PANEL_ONETOUCH02://for KILO only
		case PANEL_ONETOUCH03://for KILO only
		case PANEL_ONETOUCH04://for KILO only
		case PANEL_ONETOUCH05://for KILO only
		case PANEL_ONETOUCH06://for KILO only
		case PANEL_ONETOUCH07://for KILO only
		case PANEL_ONETOUCH08://for KILO only
		case PANEL_ONETOUCH09://for KILO only
		case PANEL_ONETOUCH10://for KILO only
#endif
			break;

		default:
			break;
		}
		}
	else
		{
		switch(button)
			{
			case PANEL_COMBO_MENU_STOP:
				gUIMain.UIstate = FACTORY_MODE;
				sprintf(firstlinebuf,"Factory Mode");
				sprintf(secondlinebuf,"Press Start to Reset");
				break;
			case PANEL_COMBO_STAR_STOP:
				gUIMain.UIstate = SERVICE_MODE;
				sprintf(firstlinebuf,"Enter Password");
				sprintf(secondlinebuf,"                  ");
				break;
			}
		}
			
}

Uint16 UIGetKey()
{
	Uint16   data;

//	UIGetNextKey(&data);
	UsbPanelKeyDetect(&data);
//	UsbPanelLCDRetHome();
	return UIButtonMap(data);
}

Uint16 UIButtonMap(Uint16 button)
{
    static UI_Panel_Button lastbutton = PANEL_NONE;

    switch (button) {
    case UI_BUTTON_NUMERIC_1			:	button = PANEL_NUM1;		break;
    case UI_BUTTON_NUMERIC_2			:	button = PANEL_NUM2;		break;
    case UI_BUTTON_NUMERIC_3			:	button = PANEL_NUM3;		break;
    case UI_BUTTON_NUMERIC_4			:	button = PANEL_NUM4;		break;
    case UI_BUTTON_NUMERIC_5			:	button = PANEL_NUM5;		break;
    case UI_BUTTON_NUMERIC_6			:	button = PANEL_NUM6;		break;
    case UI_BUTTON_NUMERIC_7			:	button = PANEL_NUM7;		break;
    case UI_BUTTON_NUMERIC_8			:	button = PANEL_NUM8;		break;
    case UI_BUTTON_NUMERIC_9			:	button = PANEL_NUM9;		break;
    case UI_BUTTON_NUMERIC_STAR		:	button = PANEL_STAR;		break;
    case UI_BUTTON_NUMERIC_0			:	button = PANEL_NUM0;		break;
    case UI_BUTTON_NUMERIC_SHARP	:	button = PANEL_SHARP;	break;

//    case UI_BUTTON_COPY				:	button = PANEL_COPY;				break;
//    case UI_BUTTON_FAX				:	button = PANEL_FAX;				break;
//    case UI_BUTTON_SCAN				:	button = PANEL_SCAN;				break;
    case UI_BUTTON_BACK				:	button = PANEL_BACK;			break;
    case UI_BUTTON_MINUS				:	button = PANEL_ARROWLEFT;		break;
    case UI_BUTTON_SET				:	button = PANEL_SELECT;			break;
    case UI_BUTTON_PLUS				:	button = PANEL_ARROWRIGHT;		break;
    case UI_BUTTON_STOP				:	button = PANEL_CANCEL;			break;

//    case UI_BUTTON_ENLARGE_REDUCE	:	button = PANEL_ENLARGE_REDUCE;	break;
//    case UI_BUTTON_IMAGEQUALITY		:	button = PANEL_IMAGEQUALITY;		break;
//    case UI_BUTTON_EXPOSURE		:	button = PANEL_EXPOSURE;			break;
//    case UI_BUTTON_COLLATE_2ON1	:	button = PANEL_COLLATE_2ON1;		break;

    case UI_BUTTON_PHONEBOOK		:	button = PANEL_PHONEBOOK;		break;
    case UI_BUTTON_PAUSE				:	button = PANEL_PAUSE;			break;

//    case UI_BUTTON_REDIAL			:	button = PANEL_REDIAL;			break;
//    case UI_BUTTON_REDIAL_PAUSE		:	button = PANEL_REDIAL_PAUSE;		break;
//    case UI_BUTTON_CODED_DIAL		:	button = PANEL_CODED_DIAL;		break;

    case UI_BUTTON_MONO_START		:	button = PANEL_START;			break;
 //   case UI_BUTTON_COLOR_START		:	button = PANEL_COLOR_COPY;		break;
/*
    case UI_BUTTON_1TOUCH_01			:	button = PANEL_ONETOUCH01;		break;
    case UI_BUTTON_1TOUCH_02			:	button = PANEL_ONETOUCH02;		break;
    case UI_BUTTON_1TOUCH_03			:	button = PANEL_ONETOUCH03;		break;
    case UI_BUTTON_1TOUCH_04			:	button = PANEL_ONETOUCH04;		break;
    case UI_BUTTON_1TOUCH_05			:	button = PANEL_ONETOUCH05;		break;
    case UI_BUTTON_1TOUCH_06			:	button = PANEL_ONETOUCH06;		break;
    case UI_BUTTON_1TOUCH_07			:	button = PANEL_ONETOUCH07;		break;
    case UI_BUTTON_1TOUCH_08			:	button = PANEL_ONETOUCH08;		break;
    case UI_BUTTON_1TOUCH_09			:	button = PANEL_ONETOUCH09;		break;
    case UI_BUTTON_1TOUCH_10			:	button = PANEL_ONETOUCH10;		break;

    case UI_COMBO_MENU_STOP			:	button = PANEL_COMBO_MENU_STOP;break;
    case UI_COMBO_STAR_STOP			:	button = PANEL_COMBO_STAR_STOP;break;
*/
    default							:	button = PANEL_NONE;				break;
    }

    if ( (lastbutton == button) && (button != PANEL_NONE)) {
        tKbNow = NU_Retrieve_Clock();
        if ((tKbNow-tKbStart) > tKbTimeout)
    		press_and_hold = 1;
        else
    		button = PANEL_NONE;
    } else {
        lastbutton = button;
        press_and_hold = 0;
        tKbStart = NU_Retrieve_Clock();
    }
	
    return button;
}

API_RET InitRTC()
{
	Uint32 datetimedata;

	EnableRTCAccess();
	if(IsRTCValid())
		return API_OK;
	else
		{
		datetime.Year = 3;
		datetime.Month = 1;
		datetime.Date = 1;
		datetime.Hour = 12;
		datetime.Minute = 0;
		datetime.Second = 0;
		gUIMain.bFirstPowerUP = TRUE;
		datetimedata = CalDateTimeData(&datetime);
		SetRTC_C(datetimedata);
		SetRTCValid();
//		DisableRTCAccess();
		}
	return API_OK;
}

void	UIStateDisplay()
{
	UI_State	uistate;

	uistate = gUIMain.UIstate;
	if(uistate != laststate)
		{
		laststate = uistate;
		updateLCD = TRUE;//PSPRINTF("\ncall8\n");
		}

	if(updateLCD)
		{
		switch(uistate)
			{
			case SYSTEMINITIAL:
				strcpy(firstlinebuf,GetMsgData(DISP_INITIAL));
				strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
				break;	
			case STANDBY:
				DisplayStandbyMode();
				break;
			case COPY_PROCESSING:
				if(copypage == 0)
					{
					sprintf(firstlinebuf,"%s 1",GetMsgData(DISP_COPY_PG));
					strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
					}
				else
					{
					sprintf(firstlinebuf,"%s %d",GetMsgData(DISP_COPY_PG),copypage);
					strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
					}					
				break;
			case SCAN_PROCESSING:
				strcpy(firstlinebuf,GetMsgData(DISP_SCANNING));
				strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
				break;
			case PRINT_PROCESSING:
				strcpy(firstlinebuf,GetMsgData(DISP_PRINTING));
				strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
				break;
			case WAITINGKEYIN:
				updateLCD = FALSE;
				break;
			case CANCEL:
				strcpy(firstlinebuf,GetMsgData(DISP_CANCELING));
				strcpy(secondlinebuf,GetMsgData(DISP_COPY));
/*			case DIALING:
				strcpy(firstlinebuf,GetMsgData(DISP_DIALNUM));
				strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
				break;
			case CONNECTING:
				strcpy(firstlinebuf,GetMsgData(DISP_CONNECTING));
				strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
				break;
			case RECEIVING:
				strcpy(firstlinebuf,GetMsgData(DISP_RECEIVING));
				strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
				break;
			case FAX_PROCESSING:*/
	/*			if(faxpageinterupt)
					{
					strcpy(firstlinebuf,GetMsgData(DISP_ANOTHERPAGE));
					strcpy(secondlinebuf,GetMsgData(Ms_YesNo[1]));
					if(firsttimedisplay)
						{
						updateLCD = TRUE;
						firsttimedisplay = FALSE;
						tt = 1;
						}
					}
				else
					{*/
	//				strcpy(firstlinebuf,GetMsgData(DISP_SCANNING));
	//				strcpy(secondlinebuf, GetMsgData(gpMenudata->currentMenu->dispID));
	//				}
	//			break;
			default:
				break;
			}
		}
}

void  UpdateData(Uint8 num)
{
	UpdateMFPSetting(num);
	NVFlashDataWrite(MFPSETTINGS);
}

void  UpdateRam()
{

	gUIMain.copysetting = gMFPSettingNvram.Copy;
	gUIMain.commonsetting = gMFPSettingNvram.Common;
	gUIMain.faxsetting = gMFPSettingNvram.Fax;
	gUIMain.papersetting = gMFPSettingNvram.Paper;
	gUIMain.scansetting = gMFPSettingNvram.Scan;
/*
	memcpy(&gUIMain.copysetting,&gMFPSettingNvram.Copy,sizeof(PAPERSETTING));
	memcpy(&gUIMain.commonsetting,&gMFPSettingNvram.Common,sizeof(COMMONSETTING));
	memcpy(&gUIMain.faxsetting,&gMFPSettingNvram.Fax,sizeof(FAXSETTING));
	memcpy(&gUIMain.papersetting,&gMFPSettingNvram.Paper,sizeof(PAPERSETTING));
	memcpy(&gUIMain.scansetting,&gMFPSettingNvram.Scan,sizeof(SCANSETTING));
*/
}

void UpdateMFPSetting(Uint8 settingnum)
{
	switch(settingnum)
		{
		case Val_NV_copynum: gUIMain.copysetting.Copynumber = gMFPSettingNvram.Copy.Copynumber;break;
		case Val_NV_contrast: gUIMain.copysetting.Contrast = gMFPSettingNvram.Copy.Contrast;break;
		case Val_NV_imagequality: gUIMain.copysetting.Imagequality = gMFPSettingNvram.Copy.Imagequality;break;
		case Val_NV_layout: gUIMain.copysetting.Layoutmode = gMFPSettingNvram.Copy.Layoutmode;break;
//		case 51: gUIMain.copysetting.COriginalsize = gMFPSettingNvram.Copy.COriginalsize;break;
//		case 52: gUIMain.copysetting.Reduenlarge = gMFPSettingNvram.Copy.Reduenlarge;break;
		case Val_NV_presetratio: gUIMain.copysetting.Presetratio = gMFPSettingNvram.Copy.Presetratio;break;
		case Val_NV_zoomratio: gUIMain.copysetting.Zoomratio = gMFPSettingNvram.Copy.Zoomratio;break;
		case Val_NV_scandes: gUIMain.scansetting.Scandes = gMFPSettingNvram.Scan.Scandes;break;
		case Val_NV_scancolor: gUIMain.scansetting.Scancolor = gMFPSettingNvram.Scan.Scancolor;break;
		case Val_NV_scanquality: gUIMain.scansetting.Scanquality = gMFPSettingNvram.Scan.Scanquality;break;
		case Val_NV_ioriginalsize: gUIMain.scansetting.IOriginalsize = gMFPSettingNvram.Scan.IOriginalsize;break;
		case Val_NV_papersize: gUIMain.papersetting.Papersize = gMFPSettingNvram.Paper.Papersize;break;
		case Val_NV_papertype: gUIMain.papersetting.Papertype = gMFPSettingNvram.Paper.Papertype;break;
//		case 60: gUIMain.papersetting.PaperTray = gMFPSettingNvram.Paper.PaperTray;break;
		case Val_NV_language: gUIMain.commonsetting.Language = gMFPSettingNvram.Common.Language;break;
		case Val_NV_alarmvolume: gUIMain.commonsetting.Alarmvolume = gMFPSettingNvram.Common.Alarmvolume;break;
		case Val_NV_autocleantime: gUIMain.commonsetting.Autocleantime = gMFPSettingNvram.Common.Autocleantime;break;
		case Val_NV_clockmode: gUIMain.commonsetting.ClockMode = gMFPSettingNvram.Common.ClockMode;break;
		case Val_NV_powersavetime: gUIMain.commonsetting.Powersavertime = gMFPSettingNvram.Common.Powersavertime;break;
		case Val_NV_pressvolume: gUIMain.commonsetting.Pressvolume = gMFPSettingNvram.Common.Pressvolume;break;
		case Val_NV_ringer: gUIMain.commonsetting.Ringer = gMFPSettingNvram.Common.Ringer;break;
		case Val_NV_country: gUIMain.commonsetting.country = gMFPSettingNvram.Common.country;break;
		case Val_NV_speaker: gUIMain.commonsetting.Speaker = gMFPSettingNvram.Common.Speaker;break;
		case Val_NV_tonersavemode: gUIMain.commonsetting.Tonersavermode = gMFPSettingNvram.Common.Tonersavermode;break;
//		case 71: gUIMain.commonsetting.zIDName= gMFPSettingNvram.Common.zIDName;break;
//		case 72: gUIMain.commonsetting.zIDTelNumber = gMFPSettingNvram.Common.zIDTelNumber;break;
		case Val_NV_txresolution: gUIMain.faxsetting.Txresolution = gMFPSettingNvram.Fax.Txresolution;break;
		case Val_NV_txcontrast: gUIMain.faxsetting.Txcontrast = gMFPSettingNvram.Fax.Txcontrast;break;
		case Val_NV_onhookdial: gUIMain.faxsetting.Onhookdial = gMFPSettingNvram.Fax.Onhookdial;break;
		case Val_NV_ringtoasw: gUIMain.faxsetting.Ringtoasw = gMFPSettingNvram.Fax.Ringtoasw;break;
		case Val_NV_receivemode: gUIMain.faxsetting.Receivemode = gMFPSettingNvram.Fax.Receivemode;break;
		case Val_NV_redialdly: gUIMain.faxsetting.RedialDly = gMFPSettingNvram.Fax.RedialDly;break;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -