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

📄 mcled.cpp

📁 LED driver example
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	unsigned char command;
	char tmp[10];
	sprintf(tmp,"   ");
	if (!ShowStringLeft(tmp,3))
		return false;
	command=0x01;
	if (!HideIcon(1,0x88,&command))
		return false;
	else
		return true;
}
bool MCLed::HideAp(int ap) {
	unsigned char *tmp;
	tmp=(unsigned char *)malloc(17);
	switch (ap) {
		case AP_DVD:
			tmp[0]=0x06;
			if (!HideIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
//			sprintf((char *)tmp,"        ");
//			if (!ShowStringLeft((char *)tmp,8)) {
//				free(tmp);
//				return false;
//			}
			break;
		case AP_VCD:
			tmp[0]=0x07;
			if (!HideIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
			tmp[0]=0x08;
			if (!HideIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
//			sprintf((char *)tmp,"        ");
//			if (!ShowStringLeft((char *)tmp,8)) {
//				free(tmp);
//				return false;
//			}
			break;
		case AP_CD:
			tmp[0]=0x08;
			if (!HideIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
			sprintf((char *)tmp,"       ");
			if (!ShowStringLeft((char *)tmp,7)) {
				free(tmp);
				return false;
			}
			break;
		case AP_MP3:
			tmp[0]=0x09;
			if (!HideIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
			sprintf((char *)tmp,"       ");
			if (!ShowStringLeft((char *)tmp,7)) {
				free(tmp);
				return false;
			}
			break;
		case AP_TV:
		case AP_FM:
			sprintf((char *)tmp,"  ");
			if (!ShowStringLeft((char *)tmp,2)) {
				free(tmp);
				return false;
			}
			break;
		case AP_PHOTO:
			sprintf((char *)tmp,"     ");
			if (!ShowStringLeft((char *)tmp,5)) {
				free(tmp);
				return false;
			}
			break;
		default:
			return false;
	}
	return true;
}
bool MCLed::ShowAp(int ap) {
	unsigned char *tmp;
	tmp=(unsigned char *)malloc(17);
	switch (ap) {
		case AP_DVD:
			tmp[0]=0x06;
			if (!ShowIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
//			sprintf((char *)tmp," DVD/VCD");
//			if (!ShowStringLeft((char *)tmp,8)) {
//				free(tmp);
//				return false;
//			}
			break;
		case AP_VCD:
			tmp[0]=0x07;
			if (!ShowIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
			tmp[0]=0x08;
			if (!ShowIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
//			sprintf((char *)tmp," DVD/VCD");
//			if (!ShowStringLeft((char *)tmp,8)) {
//				free(tmp);
//				return false;
//			}
			break;
		case AP_CD:
			tmp[0]=0x08;
			if (!ShowIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
//			sprintf((char *)tmp," CD/MP3");
//			if (!ShowStringLeft((char *)tmp,7)) {
//				free(tmp);
//				return false;
//			}
			break;
		case AP_MP3:
			tmp[0]=0x09;
			if (!ShowIcon(1,0x8b,tmp)) {
				free(tmp);
				return false;
			}
//			sprintf((char *)tmp," CD/MP3");
//			if (!ShowStringLeft((char *)tmp,7)) {
//				free(tmp);
//				return false;
//			}
			break;
		case AP_FM:
			sprintf((char *)tmp,"FM");
			if (!ShowStringLeft((char *)tmp,2)) {
				free(tmp);
				return false;
			}
			break;
		case AP_TV:
			sprintf((char *)tmp,"TV");
			if (!ShowStringLeft((char *)tmp,2)) {
				free(tmp);
				return false;
			}
			break;
		case AP_PHOTO:
			sprintf((char *)tmp,"PHOTO");
			if (!ShowStringLeft((char *)tmp,5)) {
				free(tmp);
				return false;
			}
			break;
		default:
			free(tmp);
			return false;
	}
	free(tmp);
	return true;
}
bool MCLed::HideTime(int mode) {
	char tmp[10];
	FirstShowTime=false;
	if (mode==-1) {
		sprintf(tmp,"    ");
		if (!ShowStringRight(tmp,4))
			return false;
		tmp[0]=0x16;
		if (!HideIcon(1,0x84,(unsigned char *)tmp))
			return false;
		else
			return true;
	} else {
		sprintf(tmp,"      ");
		if (!ShowStringRight(tmp,6))
			return false;
		tmp[0]=0x16;
		if (!HideIcon(1,0x84,(unsigned char *)tmp))
			return false;
		if (!HideIcon(1,0x86,(unsigned char *)tmp))
			return false;
		else
			return true;
	}
}
bool MCLed::ShowTime(int hour,int min,int sec) {
	char tmp[10];
	if (hour<-1) return false;
	if ((min<0)||(min>59)) return false;
	if ((sec<0)||(sec>59)) return false;
	if (hour==-1) {
		if (!FirstShowTime) {
			FirstShowTime=true;
			ShowHour=hour;
			ShowMin=min;
			ShowSec=sec;
			sprintf(tmp,"%02d%02d",min,sec);
			if (!ShowStringRight(tmp,4))
				return false;
			tmp[0]=0x16;
			if (!ShowIcon(1,0x84,(unsigned char *)tmp))
				return false;
			else
				return true;
		} else {
			if (ShowMin!=min) {
				ShowMin=min;
				sprintf(tmp,"%02d",min);
				if (!ShowString(tmp,5,2))
						return false;
			}
			if (ShowSec!=sec) {
				ShowSec=sec;
				sprintf(tmp,"%02d",sec);
				if (!ShowString(tmp,7,2))
						return false;
			}
		}	
	} else {
		if ((!FirstShowTime)||(hour>23)) {
			FirstShowTime=true;
			if (hour>23) {
				sprintf(tmp,"------");
				ShowHour=-1;
				ShowMin=-1;
				ShowSec=-1;
			} else {
				sprintf(tmp,"%02d%02d%02d",hour,min,sec);
				ShowHour=hour;
				ShowMin=min;
				ShowSec=sec;
			}
			if (!ShowStringRight(tmp,6))
				return false;
			tmp[0]=0x16;
			if (!ShowIcon(1,0x84,(unsigned char *)tmp))
				return false;
			if (!ShowIcon(1,0x86,(unsigned char *)tmp))
				return false;
			else
				return true;
		} else {
			if (ShowHour!=hour) {
				ShowHour=hour;
				sprintf(tmp,"%02d",hour);
				if (!ShowString(tmp,3,2))
						return false;
			}
			if (ShowMin!=min) {
				ShowMin=min;
				sprintf(tmp,"%02d",min);
				if (!ShowString(tmp,5,2))
						return false;
			}
			if (ShowSec!=sec) {
				ShowSec=sec;
				sprintf(tmp,"%02d",sec);
				if (!ShowString(tmp,7,2))
						return false;
			}
		}
	}
	return true;
}
bool MCLed::ShowTrack(int current) {
	unsigned char command;
	char tmp[10];
	sprintf(tmp,"%03d",current);
	if (!ShowStringLeft(tmp,3))
		return false;
	command=0x01;
	if (!ShowIcon(1,0x89,&command))
		return false;
	else
		return true;
}
bool MCLed::ShowTitle(int current) {
	unsigned char command;
	char tmp[10];
	sprintf(tmp,"%02d",current);
	if (!ShowStringLeft(tmp,2))
		return false;
	command=0x01;
	if (!ShowIcon(1,0x8a,&command))
		return false;
	else
		return true;
}
bool MCLed::ShowChapter(int current) {
	unsigned char command;
	char tmp[10];
	sprintf(tmp,"%02d",current);
	if (!ShowStringLeft(tmp,2))
		return false;
	command=0x01;
	if (!ShowIcon(1,0x88,&command))
		return false;
	else
		return true;
}
bool MCLed::ShowName(char *name) {
	if (!ShowStringLeft(name,9))
		return false;
	else
		return true;
}
bool MCLed::HideRepeatMode(int mode) {
	unsigned char *tmp;
	tmp=(unsigned char *)malloc(17);
	switch (mode) {
		case RE_NORMAL:
			free(tmp);
			return false;
			break;
		case RE_ALL:
			tmp[0]=0x16;
			if (!HideIcon(1,0x82,tmp)) {
				free(tmp);
				return false;
			}
			tmp[0]=0x01;
			if (!HideIcon(1,0x83,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_ONE:
			tmp[0]=0x01;
			if (!HideIcon(1,0x82,tmp)) {
				free(tmp);
				return false;
			}
			tmp[0]=0x01;
			if (!HideIcon(1,0x83,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_A:
			tmp[0]=0x01;
			if (!HideIcon(1,0x81,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_AB:
			tmp[0]=0x01;
			tmp[1]=0x02;
			if (!HideIcon(2,0x81,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_SH:
			tmp[0]=0x03;
			if (!HideIcon(1,0x81,tmp)) {
				free(tmp);
				return false;
			}
			break;
		default:
			free(tmp);
			return false;
	}
	free(tmp);
	return true;
}
bool MCLed::ShowRepeatMode(int mode) {
	unsigned char *tmp;
	tmp=(unsigned char *)malloc(17);
	switch (mode) {
		case RE_NORMAL:
			free(tmp);
			return false;
			break;
		case RE_ALL:
			tmp[0]=0x16;
			if (!ShowIcon(1,0x82,tmp)) {
				free(tmp);
				return false;
			}
			tmp[0]=0x01;
			if (!ShowIcon(1,0x83,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_ONE:
			tmp[0]=0x01;
			if (!ShowIcon(1,0x82,tmp)) {
				free(tmp);
				return false;
			}
			tmp[0]=0x01;
			if (!ShowIcon(1,0x83,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_A:
			tmp[0]=0x01;
			if (!ShowIcon(1,0x81,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_AB:
			tmp[0]=0x01;
			tmp[1]=0x02;
			if (!ShowIcon(2,0x81,tmp)) {
				free(tmp);
				return false;
			}
			break;
		case RE_SH:
			tmp[0]=0x03;
			if (!ShowIcon(1,0x81,tmp)) {
				free(tmp);
				return false;
			}
			break;
		default:
			free(tmp);
			return false;
	}
	free(tmp);
	return true;
}
bool MCLed::ShowTimeOffStatus(bool status) {
/*	unsigned char *tmp;
	tmp=(unsigned char *)malloc(17);
	if (status) {
		tmp[0]=0x01;
		if (!ShowIcon(1,0x84,tmp)) {
			free(tmp);
			return false;
		}
	} else {
		free(tmp);
		return false;
	}
	free(tmp);*/
	return true;
}
bool MCLed::ShowFavoriteNo(int no) {
/*	char tmp[10];
	if ((no<0)||(no>9)) return false;
	sprintf(tmp,"        %01d",no);
	if (!ShowString(tmp))
		return false;
	else*/
		return true;
}
bool MCLed::ShutDownLED() {
	unsigned char command[5];
	command[0]=0xa0;
	command[1]=0x00;
	command[2]=0x30;
	command[3]=0x81;
	command[4]=0x05;
	Usleep(DELAY);
	if (write(fd,command,5)<0)
		return false;
	else {
		Log("ShutDownLED");
		return true;
	}
}
bool MCLed::HideFrequence() {
	char tmp[10];
	sprintf(tmp,"     ");
	if (!ShowStringRight(tmp,5))
		return false;
	tmp[0]=0x17;
	if (!HideIcon(1,0x84,(unsigned char *)tmp)) {
		return false;
	}
	tmp[0]=0x05;
	if (!HideIcon(1,0x81,(unsigned char *)tmp)) {
		return false;
	}
	return true;
}
bool MCLed::ShowFrequence(int fre) {
	char tmp[10];
	int ifre;
	ifre=fre/10;
//	char *tmp1=tmp;
	sprintf(tmp,"%05d",ifre);
	if (!ShowStringRight(tmp,5))
		return false;
	tmp[0]=0x17;
	if (!ShowIcon(1,0x84,(unsigned char *)tmp)) {
		return false;
	}
	tmp[0]=0x05;
	if (!ShowIcon(1,0x81,(unsigned char *)tmp)) {
		return false;
	}
	return true;
}
bool MCLed::CleanSPDIF() {
	char tmp[10];
	tmp[0]=0x06;
	tmp[1]=0x07;
	tmp[2]=0x08;
	tmp[3]=0x09;
	tmp[4]=0x10;
	tmp[5]=0x11;
	tmp[6]=0x12;
	if (!HideIcon(7,0x81,(unsigned char *)tmp)) {
		return false;
	}
	return true;
}
bool MCLed::ShowSPDIF(bool flag) {
	char tmp[10];
	if (flag) {
		tmp[0]=0x06;
		tmp[1]=0x07;
		tmp[2]=0x08;
		tmp[3]=0x09;
		tmp[4]=0x10;
		tmp[5]=0x11;
		tmp[6]=0x12;
		if (!ShowIcon(7,0x81,(unsigned char *)tmp)) {
			return false;
		}
		return true;
	} else {
		tmp[0]=0x06;
		tmp[1]=0x07;
		tmp[2]=0x08;
		tmp[3]=0x09;
		tmp[4]=0x10;
		tmp[5]=0x11;
		tmp[6]=0x12;
		if (!HideIcon(7,0x81,(unsigned char *)tmp)) {
			return false;
		}
		tmp[0]=0x06;
		tmp[1]=0x08;
		if (!ShowIcon(2,0x81,(unsigned char *)tmp)) {
			return false;
		}
		return true;
	}
}

⌨️ 快捷键说明

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