📄 ad7799.h
字号:
#ifndef __AD7799_H__
#define __AD7799_H__
#define PARA_250KG 763L//953L
#define PARA_200KG 610L//763L
#define PARA_60KG 458L//572L
//寄存器地址
#define ADREG_COMM 0x00
#define ADREG_STATUS 0x00
#define ADREG_MODE 0x08
#define ADREG_CONFIG 0x10
#define ADREG_DATA 0x18
#define ADREG_ID 0x20
#define ADREG_IO 0x28
#define ADREG_OFFSET 0x30
#define ADREG_FULLSCALE 0x38
//操作码
#define COMM_MASK 0x7C
#define COMM_SINGLEWR 0x00
#define COMM_SINGLERD 0x40
#define COMM_CONTRD 0x04
#define COMM_STOPCONT 0x00
//寄存器位掩码
//状态寄存器位定义
#define BIT_STATUS_RDY 0x80
#define BIT_STATUS_STDY 0x40
#define BIT_STATUS_STBY 0x20
#define BIT_STATUS_NOREF 0x10
//模式寄存器位定义
#define BIT_MODE_CONTCONV 0x0000
#define BIT_MODE_SINGCONV 0x2000
#define BIT_MODE_IDLE 0x4000
#define BIT_MODE_POWERDOWN 0x6000
#define BIT_MODE_INTZERO 0x8000
#define BIT_MODE_INTFULL 0xA000
#define BIT_MODE_SYSZERO 0xC000
#define BIT_MODE_SYSFULL 0xE000
#define BIT_MODE_PSW 0x1000
void AD7799_Reset(unsigned char bDev);
void AD7799_WrBytes(unsigned char bDev,unsigned char bBytes,unsigned char *pData);
void AD7799_RdBytes(unsigned char bDev,unsigned char bBytes,unsigned char *pData);
unsigned char SingleRead8BitsReg(unsigned char bDev,unsigned char bAdr);
unsigned int SingleRead16BitsReg(unsigned char bDev,unsigned char bAdr);
unsigned char AD_ReadIdReg(unsigned char bDev);
unsigned long AD_ReadOffsetReg(unsigned char bDev);
void AD_WriteOffsetReg(unsigned char bDev,unsigned long lData);
unsigned long AD_ReadFullScaleReg(unsigned char bDev);
void AD_WriteFullScaleReg(unsigned char bDev,unsigned long lData);
unsigned long InternalZeroCalibration(unsigned char bDev,unsigned char bTimes);
unsigned long InternalFullCalibration(unsigned char bDev,unsigned char bTimes);
//=====================
void Init_AD(unsigned char bDev);
unsigned char AD_ReadStatusReg(unsigned char bDev);
void AD_WriteModeReg(unsigned char bDev,unsigned int uData);
unsigned int AD_ReadModeReg(unsigned char bDev);
void AD_WriteConfigReg(unsigned char bDev,unsigned int uData);
unsigned int AD_ReadConfigReg(unsigned char bDev);
void AD_WriteIoReg(unsigned char bDev,unsigned char bData);
unsigned char AD_ReadIoReg(unsigned char bDev);
unsigned long AD_ReadDataReg(unsigned char bDev);
unsigned long ExeZeroCalibration(unsigned char bCh);
unsigned long ExeFullScaleCalibration(unsigned char bCh,unsigned long ulWeight);
unsigned char SetFullScale(unsigned char bCh,unsigned long ulDat);
unsigned char GetBalanceStatus(unsigned char bCh);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -