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

📄 tuner_lg_tapc_h701f.c

📁 TERAWINS T108DL TUNER 调试代码
💻 C
字号:
#include "tuner_LG_TAPC_H701F.h"
#include "reg51.h"
#include "common.h"
#include "TW803Reg.h"
#include "System.h"
//#include "SRC_ctrl.h"
#include "OSDCtrl.h"
#include "TwoWire.h"
#include "OSDDraw.h"
#include "NVRam.h"
#include "Remote.h"
#include "Keypad.h"
#include "Tuner.h"

#ifdef TV
#if (TUNER_AFC_CONTROL==ON)
BYTE Tuner_ReadStatus (void) 
{
    return ( TunerReadByte(TUNER_ADB) & 0x7 );
}
#endif

/* --------------------------------------------------------------------------
    Function  : Tuner_WriteFreq
    Prupose   : Write channel frequency and control command to tuner
    Arguments : Bool  afUpDn              0:Channel Up / 1:Channel Down
    Returns   : --    --                  --
    External  : --    --                  --
    Notes     :
   -------------------------------------------------------------------------- */
void Tuner_WriteFreq(uDWORD ChFreq) 
{
	BYTE  bBandPort;
  	BYTE bTemp[4];

  //------- Check band type
	if( ChFreq >= TUNER_H_BAND_MIN_FREQ ) 		// Check on the High band range
		bBandPort = TUNER_BS_H_BAND ;
  	else if( ChFreq >= TUNER_M_BAND_MIN_FREQ )  // Check on the Mid band range
		bBandPort = TUNER_BS_M_BAND ;
  	else                                        // Check on the Low band range
		bBandPort = TUNER_BS_L_BAND ;

 	bTemp[0] = mHIBYTE(ChFreq);
  	bTemp[1] = mLOBYTE(ChFreq);
  	bTemp[2] = TUNER_CB1;
  	bTemp[3] = bBandPort;


	TunerWriteByte1(TUNER_ADB,(uCHAR)bTemp[0],(uCHAR)bTemp[1],bTemp[2],bTemp[3]);
}

/* --------------------------------------------------------------------------
    Function  : Tuner_AFC_Control
    Prupose   : Tuner AFC control function
    Arguments : --    --                  --
    Returns   : Bool  --                  Is fine tune success
    External  : --    --                  --
    Notes     :
   -------------------------------------------------------------------------- */
uWORD Tuner_AFC_Control(uDWORD ChFreq)
{
#if (TUNER_AFC_CONTROL==ON)
	WORD  OrignChFreq;
  	BYTE  lbAFC_Cnt;

  	// ------------ Save frequency
  	OrignChFreq = ChFreq;

  	// ------------ Fine tune control
  	for (lbAFC_Cnt=0; lbAFC_Cnt < 7; lbAFC_Cnt++) 
	{
		twdDelay(30);
    	switch( Tuner_ReadStatus() ) 
		{
      		// -125.0 K
      		case 4:
        		ChFreq -= TUNER_FINETUNE_HIGH;
        		break;

      		// - 62.5 K
      		case 3:
        		ChFreq -= TUNER_FINETUNE_MID;
        		break;

      		// Center freqency
      		default:
      		case 2:
          		return ChFreq;

      		// + 62.5 K
      		case 1:
        		ChFreq += TUNER_FINETUNE_MID;
        		break;

      		// +125.0 K
      		case 0:
        		ChFreq += TUNER_FINETUNE_HIGH;
        		break;

    	}

    	Tuner_WriteFreq(ChFreq);
  	}
  	// ------------ Revocer frequency if AFC fail
  	Tuner_WriteFreq(OrignChFreq);
  	return FAILURE;

#else
  	return ChFreq;
#endif
}

#endif

⌨️ 快捷键说明

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