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

📄 cs5529.h

📁 AD芯片CS5529的驱动程序,包括SPI读写函数,初始化函数,校准函数,转换函数,复位函数等等.
💻 H
字号:

#ifndef __CS5529_H__
#define __CS5529_H__

/**********************************************************************
CS5529的SPI接口定义
**********************************************************************/
sbit	__CS5529_CS				=	P1^5;
sbit	__CS5529_SCLK			=	P1^0;
sbit	__CS5529_SDI			=	P1^4;
sbit	__CS5529_SDO			=	P1^3;

#define CS5529_DELAY			30


/**********************************************************************
CS5529的命令字定义
**********************************************************************/
/***********************************************
perform a single conversion.
***********************************************/
#define CS5529_CMD_SINGLE_CONVERSION		0xC0

/***********************************************
perform continuous conversions.
***********************************************/
#define CS5529_CMD_CONTINUOUS_CONVERSIONS	0xA0

/***********************************************
power save mode is entered.
***********************************************/
#define CS5529_CMD_POWER_SAVE				0x81

/***********************************************
normal run mode is entered
***********************************************/
#define CS5529_CMD_POWER_RUN				0x80

/***********************************************
This command is used to clear the port flag in 
the continuous conversion mode when the port 
flag bit in the configuration register
is set to logic 1.
***********************************************/
#define CS5529_CMD_NULL						0x00

/***********************************************
Part of the serial port re-initialization sequence
***********************************************/
#define CS5529_CMD_SYNC1					0xFF

/***********************************************
End of the serial port re-initialization sequence.
***********************************************/
#define CS5529_CMD_SYNC0					0xFE

/***********************************************
These commands are used to perform a read from
 a specific register.
***********************************************/
#define CS5529_CMD_READ_REG					0x90

/***********************************************
These commands are used to perform a write to
 a specific register.
***********************************************/
#define CS5529_CMD_WRITE_REG				0x80

/**********************************************************************
CS5529的寄存器编址定义
**********************************************************************/
#define CS5529_REG_OFFSET					0x00
#define CS5529_REG_GAIN						0x02
#define CS5529_REG_CONFIGURATION			0x04
#define CS5529_REG_DATA						0x06
/*#define CS5529_REG_OFFSET_GAIN_CONFIG		0x08*/


#define CS5529_OFFSET_SELF_CALIBRATION		0x01
#define CS5529_GAIN_SELF_CALIBRATION		0x02
#define CS5529_OFFSET_SYS_CALIBRATION		0x05
#define CS5529_GAIN_SYS_CALIBRATION			0x06


#define CS5529_WORD_RATE_15					0x00
#define CS5529_WORD_RATE_30					0x20
#define CS5529_WORD_RATE_61					0x40
#define CS5529_WORD_RATE_84					0x60
#define CS5529_WORD_RATE_101				0x80
#define CS5529_WORD_RATE_1					0xA0
#define CS5529_WORD_RATE_3					0xC0
#define CS5529_WORD_RATE_7					0xE0

/***********************************************
操作读写时,读写命令同寄存器编址进行或运算
如:
nCmd=CS5529_CMD_READ_REG;
nCmd|=CS5529_REG_DATA;
那么nCmd是读数据寄存器的命令
***********************************************/




/**********************************************************************
CS5529的读写函数声明
**********************************************************************/
void 	CS5529_WriteCmd(unsigned char nCmd);
void 	CS5529_WriteReg(unsigned char nReg);
void 	CS5529_ReadReg(unsigned char nReg);
void 	CS5529_SyncSeq();
void 	CS5529_StartupDelay();
void 	CS5529_Reset();
void	CS5529_Init();
void	CS5529_SetPortFlag();
void	CS5529_SelfCalibration(unsigned char Type);
void	CS5529_SetWordRate(unsigned char wordrate);
//void	CS5529_LatchOutputs(unsigned char outputs);
//void	CS5529_SetGain(unsigned char GainIndex);
void	CS5529_SingleConversion();

#define CS5529_Selected()	 __CS5529_CS=0
#define CS5529_Unselected()  __CS5529_CS=1 
//void CS5529_SetFlag(unsigned char flag);



#endif

⌨️ 快捷键说明

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