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

📄 reg0299.h

📁 stv0299资料
💻 H
字号:
#ifndef  __REG0299_H__
#define  __REG0299_H__

/* reg0299.h */

#include "rmap299.h"

#if   0
   #define  REG_NAME_LENGTH   30
#else
   #define  REG_NAME_LENGTH   1
#endif

/*********** registers and fields structure *************************************/
typedef struct
{
	unsigned char	Addr,					/*	Address	*/
					Reset,					/*	Default value	*/
					Value;					/*	Current value	*/
	char 			Name [ REG_NAME_LENGTH ];				/*	Name	*/
}	REGISTER;

typedef struct
{
	int				Reg;					/*	Register index	*/
	unsigned char 	Pos,					/*	Bit position	*/
					Bits,					/*	Bit width	*/
					Type,					/*	Signed or unsigned	*/
				 	Mask;					/*	Mask compute with width and position	*/
	char 			Name [ REG_NAME_LENGTH ];				/*	Name	*/
}   FIELD;

/* exported functions */
/**************** Basic Registers functions ****************/
int			   RegChipAck(void)								;
void           RegInit(void)                             	;
void		   RegReset(void)								;
void           RegDelete(void)                           	;   
long           RegGetExtClk(void)                        	;
void           RegSetExtClk(long)                        	;
int            RegGetNbI2cAccess(void)                   	;
void           RegSetNbI2cAccess(int)                   	;
void		   RegSetOneRegister(int,unsigned char)			;
int			   RegGetOneRegister(int)						;
void	       RegSetRegisters(int,int)						;
void		   RegGetRegisters(int,int)						;
void           RegSetField(int,int)							;
int            RegGetField(int)								;
void 		   FieldSetVal(int,int)							;   
int			   FieldGetVal(int)								;
int            RegGetIndex(int)          	                ;
int            RegSearchName(char *)        	            ;
long 			PowOf2(int) ;

/**************** chip specific functions ****************/   
long RegCalcAuxClkFrequency(void);
void RegSetAuxClkDivider(long);
long CalcRefFrequency(int);
long CalcVCOFrequency(int,int);
long RegGetVCOFreq(void);
long CalcF22Frequency(int,int,int);
long RegGetF22Freq(void);
long CalcMasterClkFrequency(int,int,int,int,int);
long RegGetMasterFreq(void);
long RegGetDerotatorFreq(void);    
long CalcAuxClkFrequency(int,int,int);
long RegGetAuxFreq(void);
long CalcSymbolRate(int,int,int);
long RegGetSymbolRate(void); 
long CalcAGC2TimeConstant(long,long,long);  
long RegGetAGC2TimeConstant(void);
int  RegGetTimingLocked(void);
long CalcAGC1TimeConstant(int,long,int);  
long RegGetAGC1TimeConstant(void);    
void RegSetRollOff(int); 
int  RegGetRollOff(void); 
long RegSetSymbolRate(long); 
long RegIncrSymbolRate(long); 
void RegSetErrorCount(int);
int  RegGetErrorCount(void);

/**************** F22 facilities     **********************/
void RegF22On(void) ;
void RegF22Off(void);
/**************** Trigger facilities **********************/
void RegTriggerOn(void) ;
void RegTriggerOff(void);
FLAG RegGetTrigger(void);
void RegSetTrigger(FLAG);

/* End of reg0299.h */

#endif   /* __REG0299_H__ */

⌨️ 快捷键说明

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