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

📄 ampkey.~c

📁 关于收音功能代码,并且显示在OSD和VFD上
💻 ~C
📖 第 1 页 / 共 4 页
字号:
***************************************************************************************/
BOOL fgAmpChannelLeftKey(void) large
{
	BYTE bChVol;
	BYTE bMixCfg = bEepromReadByte(SPEAKER_POSITION);

	#ifdef MUTE_NO_VOL_KEY
	if (fgIsMute())
	{
		return (UOP_FAIL);
	}
	#endif

	switch(_bChMode)
	{
		case CH_MODE_SUBW:
			if(!fgIsInTuner() && !fgIsInAuxin() && bMixCfg == EV_DOWN_OFF)
			{
				_bChMode = CH_MODE_SL;
				bChVol = bEepromReadByte(LS_TRIM_POS);
			}
			else
			{				
				_bChMode = CH_MODE_FR;
				bChVol = bEepromReadByte(RIGHT_TRIM_POS);
			}
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SL:
			_bChMode = CH_MODE_SR;
			bChVol = bEepromReadByte(RS_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SR:
			_bChMode = CH_MODE_FR;
			bChVol = bEepromReadByte(RIGHT_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_FR:
			if(!fgIsInTuner() && !fgIsInAuxin() && bMixCfg == EV_DOWN_OFF)
			{
				_bChMode = CH_MODE_CT;
				bChVol = bEepromReadByte(CENTER_TRIM_POS);
			}
			else
			{				
				_bChMode = CH_MODE_FL;
				bChVol = bEepromReadByte(LEFT_TRIM_POS);
			}
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_CT:
			_bChMode = CH_MODE_FL;
			bChVol = bEepromReadByte(LEFT_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);          
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_FL:
		default:
			if(!fgIsInTuner() && !fgIsInAuxin() )
				{
			_bChMode = CH_MODE_SUBW;
			bChVol = bEepromReadByte(SUB_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
				}
			else
				{
			_bChMode = CH_MODE_FR;
			bChVol = bEepromReadByte(RIGHT_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
				}
		//	_bChCount = CH_OSD_COUNT;
		break;
	}
	_bIRKey = IR_NONE;
	return (UOP_OK);
}

/***************************************************************************************
    Function : 
    Description : 
    Parameter : 
    Return    : 
***************************************************************************************/
BOOL fgAmpChannelRightKey(void) large
{
	BYTE bChVol;
	BYTE bMixCfg = bEepromReadByte(SPEAKER_POSITION);

	#ifdef MUTE_NO_VOL_KEY
	if (fgIsMute())
	{
		return (UOP_FAIL);
	}
	#endif
	
	switch(_bChMode)
	{
		case CH_MODE_FL:
			if(!fgIsInTuner() && !fgIsInAuxin() && bMixCfg == EV_DOWN_OFF)
			{
				_bChMode = CH_MODE_CT;
				bChVol = bEepromReadByte(CENTER_TRIM_POS);
			}
			else
			{				
				_bChMode = CH_MODE_FR;
				bChVol = bEepromReadByte(RIGHT_TRIM_POS);
			}
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_CT:
			_bChMode = CH_MODE_FR;
			bChVol = bEepromReadByte(RIGHT_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_FR:
			if(!fgIsInTuner() && !fgIsInAuxin() && bMixCfg == EV_DOWN_OFF)
			{
				_bChMode = CH_MODE_SR;
				bChVol = bEepromReadByte(RS_TRIM_POS);
			}
			else
			{				
			if(!fgIsInTuner() && !fgIsInAuxin() )
				{
				_bChMode = CH_MODE_SUBW;
				bChVol = bEepromReadByte(SUB_TRIM_POS);
				}
			else
				{
			_bChMode = CH_MODE_FR;
			bChVol = bEepromReadByte(RIGHT_TRIM_POS);
				}
			}
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SR:
			_bChMode = CH_MODE_SL;
			bChVol = bEepromReadByte(LS_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SL:
			_bChMode = CH_MODE_SUBW;
			bChVol = bEepromReadByte(SUB_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SUBW:  	
		default:
			_bChMode = CH_MODE_FL;
			bChVol = bEepromReadByte(LEFT_TRIM_POS);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);          
			_bChCount = CH_OSD_COUNT;
		break;
	}
	_bIRKey = IR_NONE;
	return (UOP_OK);
}

/***************************************************************************************
    Function : 
    Description : 
    Parameter : 
    Return    : 
***************************************************************************************/
BOOL fgAmpChannelUpKey(void) large
{
	BYTE bChVol;
	BYTE bDiscType = bSharedInfo(SI_DISC_TYPE);

	#ifdef MUTE_NO_VOL_KEY
	if (fgIsMute())
	{
		return (UOP_FAIL);
	}
	#endif
	
	switch(_bChMode)
	{
		case CH_MODE_FL:
			bChVol = bEepromReadByte(LEFT_TRIM_POS);
			//if (bChVol > 20) bChVol = 20;
			//if (bChVol < 0) bChVol = 0;
			if ((bChVol <20) ||(bChVol >=0xec))	
				{
					bChVol++;
					fgEepromWriteByte(LEFT_TRIM_POS, (char)(bChVol));
				}
 #ifdef BBKTUNER_DEBUG
 DRS232LogB(bChVol, bEepromReadByte(LEFT_TRIM_POS), 0, 6);
#endif
  			 vAdspChTrim((BYTE)(LEFT_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C), (char)bEepromReadByte(LEFT_TRIM_POS)+20);
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_CT:
			bChVol = bEepromReadByte(CENTER_TRIM_POS);
			
			if ((bChVol <20) ||(bChVol >=0xec))	
				{
					bChVol++;
					fgEepromWriteByte(CENTER_TRIM_POS, (char)(bChVol));
				}
			
			fgEepromWriteByte(CENTER_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(CENTER_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(CENTER_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELCT_VOLUME_REGISTER,bChVol,CT_PLUS);   	   
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_FR:
			bChVol = bEepromReadByte(RIGHT_TRIM_POS);
			
			if ((bChVol <20) ||(bChVol >=0xec))	
				{
					bChVol++;
					fgEepromWriteByte(RIGHT_TRIM_POS, (char)(bChVol));
				}
			 #ifdef BBKTUNER_DEBUG
 DRS232LogB(bChVol, bEepromReadByte(RIGHT_TRIM_POS), 0, 10);
#endif

			fgEepromWriteByte(RIGHT_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(RIGHT_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(RIGHT_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELFR_VOLUME_REGISTER,bChVol,FLFR_PLUS);
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;
		
		case CH_MODE_SR:
			bChVol = bEepromReadByte(RS_TRIM_POS);
			
			if ((bChVol <20) ||(bChVol >=0xec))	
				{
					bChVol++;
					fgEepromWriteByte(RS_TRIM_POS, (char)(bChVol));
				}
			
			fgEepromWriteByte(RS_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(RS_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(RS_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELSR_VOLUME_REGISTER,bChVol,SLSR_PLUS); 
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SL:
			bChVol = bEepromReadByte(LS_TRIM_POS);
			
			if ((bChVol <20) ||(bChVol >=0xec))	
				{
					bChVol++;
					fgEepromWriteByte(LS_TRIM_POS, (char)(bChVol));
				}
			
			fgEepromWriteByte(LS_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(LS_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(LS_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELSL_VOLUME_REGISTER,bChVol,SLSR_PLUS);   	   
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SUBW:
			bChVol = bEepromReadByte(SUB_TRIM_POS);
			
			if ((bChVol <20) ||(bChVol >=0xec))	
				{
					bChVol++;
					fgEepromWriteByte(SUB_TRIM_POS, (char)(bChVol));
				}
			
			fgEepromWriteByte(SUB_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(SUB_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(SUB_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELSW_VOLUME_REGISTER,bChVol,SW_PLUS);      
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_NONE:
		case CH_MODE_BASS:
		case CH_MODE_TREBLE:
		case CH_MODE_BASSBOOST:
		case CH_MODE_NM_VOL:
		default:
		//	fgAmpCOMVolumeUpKey();
		break;

	}

	_bIRKey = IR_NONE;
	return (UOP_OK);
}

/***************************************************************************************
    Function : 
    Description : 
    Parameter : 
    Return    : 
***************************************************************************************/
BOOL fgAmpChannelDnKey(void) large
{
	BYTE bChVol;
	BYTE bDiscType = bSharedInfo(SI_DISC_TYPE);

	#ifdef MUTE_NO_VOL_KEY
	if (fgIsMute())
	{
		return (UOP_FAIL);
	}
	#endif
	
	switch(_bChMode)
	{
		case CH_MODE_FL:
			bChVol = bEepromReadByte(LEFT_TRIM_POS);
			
			if ((bChVol > (char)(0-20))||(bChVol <= 20))
			{
			bChVol--;
			fgEepromWriteByte(LEFT_TRIM_POS, (char)bChVol);
			}
			
  			 vAdspChTrim((BYTE)(LEFT_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(LEFT_TRIM_POS)+20);
			 #ifdef BBKTUNER_DEBUG
				 DRS232LogB(bChVol, bEepromReadByte(LEFT_TRIM_POS), 0, 7);
			#endif

	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELFL_VOLUME_REGISTER,bChVol,FLFR_PLUS);
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;
			
		case CH_MODE_CT:
			bChVol = bEepromReadByte(CENTER_TRIM_POS);
			
			if ((bChVol > (char)(0-20))||(bChVol <= 20))
			{
			bChVol--;
			fgEepromWriteByte(CENTER_TRIM_POS, (char)bChVol);
			}
			
			fgEepromWriteByte(CENTER_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(CENTER_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(CENTER_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELCT_VOLUME_REGISTER,bChVol,CT_PLUS);  
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_FR:
			bChVol = bEepromReadByte(RIGHT_TRIM_POS);
			
			if ((bChVol > (char)(0-20))||(bChVol <= 20))
			{
			bChVol--;
			fgEepromWriteByte(RIGHT_TRIM_POS, (char)bChVol);
			}
						 #ifdef BBKTUNER_DEBUG
 DRS232LogB(bChVol, bEepromReadByte(RIGHT_TRIM_POS), 0, 11);
#endif

			fgEepromWriteByte(RIGHT_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(RIGHT_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(RIGHT_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELFR_VOLUME_REGISTER,bChVol,FLFR_PLUS);  
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;
		
		case CH_MODE_SR:
			bChVol = bEepromReadByte(RS_TRIM_POS);
			
			if ((bChVol > (char)(0-20))||(bChVol <= 20))
			{
			bChVol--;
			fgEepromWriteByte(RS_TRIM_POS, (char)bChVol);
			}
			
			fgEepromWriteByte(RS_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(RS_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(RS_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELSR_VOLUME_REGISTER,bChVol,SLSR_PLUS);    
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SL:
			bChVol = bEepromReadByte(LS_TRIM_POS);
			
			if ((bChVol > (char)(0-20))||(bChVol <= 20))
			{
			bChVol--;
			fgEepromWriteByte(LS_TRIM_POS, (char)bChVol);
			}
			
			fgEepromWriteByte(LS_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(LS_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(LS_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELSL_VOLUME_REGISTER,bChVol,SLSR_PLUS);     
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_SUBW:
			bChVol = bEepromReadByte(SUB_TRIM_POS);

			if ((bChVol > (char)(0-20))||(bChVol <= 20))
			{
			bChVol--;
			fgEepromWriteByte(SUB_TRIM_POS, (char)bChVol);
			}
			
			fgEepromWriteByte(SUB_TRIM_POS, bChVol);
  			 vAdspChTrim((BYTE)(SUB_TRIM_POS - CENTER_TRIM_POS + TRIM_CH_C),(char)bEepromReadByte(SUB_TRIM_POS)+20);
	#ifndef  TEMP_CLOSE0426
			vSendChannelVol(CHANNELSW_VOLUME_REGISTER,bChVol,SW_PLUS);    
	#endif
			vAmpOsdShowBan(bChVol, OSD_TIMEOUT);
			_bChCount = CH_OSD_COUNT;
		break;

		case CH_MODE_NONE:
		case CH_MODE_BASS:
		case CH_MODE_TREBLE:
		case CH_MODE_BASSBOOST:
		case CH_MODE_NM_VOL:
		default:
			fgAmpCOMVolumeDownKey();
		break;
	}

	_bIRKey = IR_NONE;
	return (UOP_OK);
}

/***************************************************************************************
    Function : 
    Description : 
    Parameter : 
    Return    : 
***************************************************************************************/
BOOL fgAmpBassUpKey(void) large
{
	BYTE bChVol;

	#ifdef MUTE_NO_VOL_KEY
	if (fgIsMute())
	{
		return (UOP_FAIL);
	}
	#endif
	
	_bChMode = CH_MODE_BASS;

	bChVol = bEepromReadByte(AMP_BASS_VOL_POS);
	
	if (bChVol > BBK_MAX_TONE_VOL_LEVEL) bChVol = BBK_MAX_TONE_VOL_LEVEL;
	if (bChVol < 0) bChVol = 0;
	bChVol++;
	if (bChVol > BBK_MAX_TONE_VOL_LEVEL) bChVol = BBK_MAX_TONE_VOL_LEVEL;   	
	
	fgEepromWriteByte(AMP_BASS_VOL_POS, bChVol);	
	#ifndef  TEMP_CLOSE0426
	vSendToneVol(BASS_FILTER_INDEX_ADDRESS,bChVol);   	 
	#endif
	vAmpOsdShowTone(bChVol, OSD_TIMEOUT);
	_bChCount = CH_OSD_COUNT;
		
	_bIRKey = IR_NONE;
	return (UOP_OK);
}

/***************************************************************************************
    Function : 
    Description : 
    Parameter : 
    Return    : 
***************************************************************************************/
BOOL fgAmpBassDnKey(void) large
{
	BYTE bChVol;

	#ifdef MUTE_NO_VOL_KEY
	if (fgIsMute())
	{
		return (UOP_FAIL);
	}
	#endif
	
	_bChMode = CH_MODE_BASS;
	
	bChVol = bEepromReadByte(AMP_BASS_VOL_POS);
	
	if (bChVol > 0)
	{
		if (bChVol > BBK_MAX_TONE_VOL_LEVEL) bChVol = BBK_MAX_TONE_VOL_LEVEL;
		bChVol--;
	}
	else if (bChVol < 0) bChVol = 0;
	
	fgEepromWriteByte(AMP_BASS_VOL_POS, bChVol);	
	#ifndef  TEMP_CLOSE0426
	vSendToneVol(BASS_FILTER_INDEX_ADDRESS,bChVol);   
	#endif
	vAmpOsdShowTone(bChVol, OSD_TIMEOUT);
	_bChCount = CH_OSD_COUNT;	

	_bIRKey = IR_NONE;
	return (UOP_OK);
}

/***************************************************************************************
    Function : 
    Description : 
    Parameter : 
    Return    : 
***************************************************************************************/
BOOL fgAmpTrebleUpKey(void) large
{
	BYTE bChVol;

	#ifdef MUTE_NO_VOL_KEY

⌨️ 快捷键说明

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