cx24143_fun.h

来自「QPSK Tuner details, for conexant chipset」· C头文件 代码 · 共 350 行 · 第 1/2 页

H
350
字号
/*******************************************************************************************************/
// MOVE IT FROW COBRA_PROTO.H
#if 1
/* DRIVER prototypes */
/*******************************************************************************************************/
#include "cx24143_regs.h"  

void   _DRIVER_SetError(NIM *nim,APIERRNO err,CHAR *filename,int lineno);
//CHAR   *DRIVER_GetError(APIERRNO err);
void   DRIVER_preinit(void);
int    DRIVER_ValidateNim(NIM *nim);
int    DRIVER_ValidateNimIq(NIM *nim);
int    DRIVER_ValidNim(NIM *nim);
int    _DRIVER_wait(NIM *nim,int mscount);
ULONG  OS_Time(void);
int    OS_Wait(NIM *nim,int waitms);
LONG   DRIVER_symbolrate_in(ULONG symbolrate,ULONG sampleratehz);
LONG   DRIVER_symbolrate_out(ULONG symbolrate, ULONG sampleratehz);
BOOL   DRIVER_div_zero(NIM *nim,ULONG l);
ULONG  DRIVER_compute_demod_pll_mult(NIM *nim,ULONG Fs, ULONG Fc);
ULONG  DRIVER_compute_fs(ULONG pllmult,ULONG Fc);

BOOL   DRIVER_SetPNSequence(NIM *nim,BOOL pnflag);
BOOL   DRIVER_GetPNSequence(NIM *nim,BOOL *pnflag);
BOOL   DRIVER_error_measurements_off(NIM *nim);
void   DRIVER_BBB_errinfo(NIM *nim,LONG *last_count,CMPLXNO *cpx,ULONG errwindow,ULONG errmult,MSTATUS *mstat);
BOOL   DRIVER_BBB_error_off(NIM *nim);
BOOL   DRIVER_PNBER_error_off(NIM *nim);
BOOL  DRIVER_errcount_disable(NIM *nim);
BOOL   DRIVER_Reset(NIM *nim);
BOOL   DRIVER_HardReset(NIM *nim);
BOOL   DRIVER_Preset(NIM *nim);
BOOL   DRIVER_CxType(NIM *nim,DEMOD *demod,CHAR **demod_str);
BOOL   DRIVER_AcqSetViterbiSearchList(NIM *nim,VITLIST*);
BOOL   DRIVER_AcqGetViterbiSearchList(NIM *nim,VITLIST*);
BOOL   DRIVER_SetViterbiRate(NIM *nim,CODERATE coderate);
BOOL   DRIVER_GetViterbiRate(NIM *nim,CODERATE *coderate);

BOOL   DRIVER_Default(NIM *nim);
LONG   DRIVER_convert_twos(ULONG numeric,int bitslen);
ULONG  DRIVER_convert_twos_saturate(LONG,int);
BOOL   DRIVER_SetSmoothClock(NIM *nim,CLOCKSMOOTHSEL cs,BOOL fromCC);
BOOL   DRIVER_SetSmoothClockEn(NIM *nim,CLOCKSMOOTHSEL cs);
BOOL   DRIVER_SWAssistInit(NIM *nim);
BOOL   DRIVER_SWAssistAcq(NIM *nim);
BOOL   DRIVER_SWAssistAcq_CR1DIV2(NIM *nim,DWORD vrates);
BOOL   DRIVER_SWAssistTuner(NIM *nim);      /* (CR 6243) */
BOOL   _DRIVER_SWAssistTunerPass(NIM *nim,ULONG freq,BOOL *hit);  /* (CR 6243) */
BOOL   DRIVER_SetLNBMode(NIM *nim,LNBMODE *lnbmode);
BOOL   DRIVER_SendDiseqc(NIM *nim,UCHAR*msg,UCHAR msg_len,BOOL msg_long);
BOOL   DRIVER_SetTunerFrequency(NIM *nim,ULONG freq);
BOOL   DRIVER_ValidTunerFreqRange(NIM *nim,ULONG freq);
BOOL   DRIVER_SWAssistNomFrq(NIM *nim);
BOOL   DRIVER_SWAssistExit(NIM *nim);
BOOL   DRIVER_SWAssistAcqBinning(NIM *nim,LONG freq,ULONG *locked);
BOOL   DRIVER_SetSoftDecisionThreshold(NIM *nim);
BOOL   DRIVER_SetTunerFilterBWVoltage(NIM *nim,ULONG mV);
BOOL   DRIVER_SetRSCntlPin(NIM *nim,REGIDX regIdx,RS_CNTLPIN_SEL RSCntlPinSel);
BOOL   DRIVER_SetViterbiLockThresh(NIM *nim,CODERATE coderate);
BOOL   DRIVER_Cobra(NIM *nim);

#ifdef OPTIMAL_FS_CODE
BOOL   DRIVER_Opt_Fs_optimizeFs(NIM *nim,ULONG Fa,DWORD *bestpllmult);
BOOL   DRIVER_Opt_Fs_buildtable(NIM *nim);
BOOL   DRIVER_Opt_Fs_calcPLLMult(NIM *nim);
ULONG  DRIVER_Opt_Fs_Hbelow(NIM *nim,ULONG Fa,ULONG clk);
ULONG  DRIVER_Opt_Fs_Hfastclock(NIM *nim,DWORD harmcnt,LONG *harmtable,ULONG fastclock);
#endif  /* #ifdef OPTIMAL_FS_CODE */

/*******************************************************************************************************/
/* Camaric code */
/*******************************************************************************************************/
#ifdef CAMARIC_FEATURES
BOOL  DRIVER_Camaric(NIM *nim);
BOOL  DRIVER_Default_Camaric(NIM *nim);
BOOL  DRIVER_Cobra_compat(NIM *nim);
TRANSPEC  DRIVER_Tspec_Get_Auto(NIM *nim);
ULONG  DRIVER_Set_Pdmfout(NIM *nim,ULONG symbolrate, ULONG samplerate);
LONG  DRIVER_calc_pdmf_closer(LONG Fsym1,LONG fsym2,ULONG samplerate,LONG pdin);
LONG  DRIVER_calc_closest_pdmfout(ULONG symbolrate, ULONG samplerate, ULONG bondary);
ULONG  DRIVER_log2(ULONG x);
BOOL  DRIVER_SetCTLTrackBW(NIM *nim,ULONG symbolrateksps);
BOOL  DRIVER_DCIISetACQDmdWin(NIM *nim,CODERATE coderate);
#endif  /* #ifdef CAMARIC_FEATURES */


/*******************************************************************************************************/
/* [Cobra_iq.c] IQ constellation prototypes */
/*******************************************************************************************************/
#ifdef INCLUDE_CONSTELLATION
BOOL  IQ_Sample(NIM *nim);
BOOL  IQ_SampleGetIq(NIM *nim,UCHAR*,UCHAR*);
int   IQ_ConstCount(NIM *nim);
#endif /* #ifdef INCLUDE_CONSTELLATION */

/*******************************************************************************************************/
/* [Cobra_Regs.c] low-level register i/o functions */
/*******************************************************************************************************/
BOOL  RegisterRead(NIM *nim,REGIDX,ULONG*);
BOOL  RegisterWrite(NIM *nim,REGIDX,ULONG);
BOOL  RegisterReadFromHDWR(NIM *nim,REGIDX,UCHAR*);
BOOL  RegisterWriteToHDWR(NIM *nim,REGIDX,UCHAR*);
BOOL  RegisterTranslate(REGIDX,LONG*,UCHAR*);
BOOL  RegisterDeTranslate(REGIDX,UCHAR*,ULONG);
ULONG RegisterHDWRMask(REGIDX);
void  RegisterFilter(REGF filter,UCHAR*ch);
int   Register_bitlength(REGIDX regidx);
BOOL  RegisterWritePLLMult(NIM *nim, ULONG ulRegVal);
#ifdef CAMARIC_FEATURES
BOOL  RegisterReadCentralFreq(NIM *nim, ULONG *pFreq);
BOOL  RegisterWriteCentralFreq(NIM *nim, ULONG ulFreq);
#endif  /* #ifdef CAMARIC_FEATURES */
BOOL  RegisterWriteClkSmoothDiv(NIM *nim, ULONG ulClkSmoothDiv);

/*******************************************************************************************************/
/* [Cobra_Regs.c] Register map verify functions.  exec'd with InitEnv() to verify backbone of system */
/*******************************************************************************************************/
BOOL  RegisterVerifyMap(NIM *nim);
BOOL  RegisterVerifyRegRW(NIM *nim,int);
BOOL  RegisterVerifyRegFilter(NIM *nim,int);
BOOL  RegisterVerifyRegDataType(NIM *nim,int);
BOOL  RegisterVerifyRegDefault(NIM *nim,int);
BOOL  RegisterVerifyRegBitCount(NIM *nim,int);
BOOL  RegisterOneOf(CHAR,CHAR*,int);
LONG  RegisterTranslateMint(UCHAR*,const CHAR*);
LONG  RegisterTranslateFromMint(UCHAR*,ULONG,REGIDX regidx);
void  RegisterTranslateReverse(UCHAR*,int);

/*******************************************************************************************************/
/* BCD Prototypes */
/*******************************************************************************************************/
void   BCD_set(BCDNO *bcdno, ULONG newval);
void   BCD_add(BCDNO *bcd, ULONG add);
void   BCD_add_bcd(BCDNO *bcd, BCDNO *bcdtoadd);
void   BCD_mult(BCDNO *bcdtodiv, ULONG multby);
void   BCD_mult_bcd(BCDNO *bcd, BCDNO *bcdmultby);
void   BCD_div_bcd(BCDNO *bcdtodiv, BCDNO *bcd);
void   BCD_div(BCDNO *bcd, ULONG divby);
ULONG  BCD_out(BCDNO *bcd);
BOOL   BCD_zero(BCDNO *bcd);
void   _BCD_adjust_improved(BCDNO *bcd,int ledge);
void   BCD_move_bcd(BCDNO *bcd, BCDNO *bcdsource);
void   _BCD_div_ten(BCDNO *bcd);
void   _BCD_mult_ten(BCDNO *bcd);
void   _BCD_mult_bcd_ones(BCDNO *bcd, CHAR digit);
void   _BCD_div_bcd_ones(BCDNO *bcd, CHAR digit);
int    BCD_compare(BCDNO *bcd, BCDNO *bcd2);
void   BCD_subt_bcd(BCDNO *bcd, BCDNO *subt);
void   BCD_subt(BCDNO *bcd, ULONG subt);
BCDNO  *BCD_abs(BCDNO *bcd);
BOOL   BCD_highdigit(BCDNO *bcd, int idx);
void   _BCD_neg(BCDNO *bcd, int idx);
BOOL   BCD_leading_low(BCDNO *bcdno);
void   BCD_test(void);
void   BCD_print(BCDNO *bcd);

#endif
/*******************************************************************************************************/
/*******************************************************************************************************/

#endif //end if 1 sfg


#ifdef __cplusplus
}
#endif

/*******************************************************************************************************/
/*******************************************************************************************************/
/*******************************************************************************************************/

#endif  /* #ifndef COBRA_API_H_DEFINED */ 
/* CR 9509 : Add an extra newline */

⌨️ 快捷键说明

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