72 lines
2.4 KiB
C
72 lines
2.4 KiB
C
//
|
|
// Created by ilya on 20.06.24.
|
|
//
|
|
|
|
#ifndef AMPLIFIER_AW87579_H
|
|
#define AMPLIFIER_AW87579_H
|
|
#include "stdbool.h"
|
|
#include "stdint.h"
|
|
|
|
#include "Amplifier_AW87579_addres.h"
|
|
#include "Amplifier_AW87579_regs.h"
|
|
#include "Amplifier_AW87579_list.h"
|
|
#include "I2cIO.h"
|
|
|
|
#define AW87579_IO_TIMEOUT 0xFFFF
|
|
|
|
#define xAmplifierAW87579_I2cWrite(I2C,I2CPack,I2CPackLen) I2cWrite(I2C,AW87579_Addres_Write,I2CPack,I2CPackLen,AW87579_IO_TIMEOUT)
|
|
#define xAmplifierAW87579_I2cRead(I2C,I2CPack,I2CPackLen) I2cRead(I2C,AW87579_Addres_Read,I2CPack,I2CPackLen,AW87579_IO_TIMEOUT)
|
|
|
|
bool xAmplifierAW87579_SetSistemControl(tI2cIO *i2c, tAW87579_SYSCTR values);
|
|
|
|
bool xAmplifierAW87579_SetBatterySafeguard(tI2cIO *i2c, tAW87579_BATSAFE values);
|
|
|
|
bool xAmplifierAW87579_SetBoostOutputVoltage(tI2cIO *i2c, tAW87579_BSTVOUT values);
|
|
|
|
bool xAmplifierAW87579_SetBoostControl(tI2cIO *i2c, tAW87579_BSTCPR2 values);
|
|
|
|
bool xAmplifierAW87579_SetGainControl(tI2cIO *i2c, tAW87579_PAGR values);
|
|
|
|
bool xAmplifierAW87579_SetAGC3OutputPower(tI2cIO *i2c, tAW87579_PAGC3OPR values);
|
|
|
|
bool xAmplifierAW87579_SetAGC3Parameter(tI2cIO *i2c, tAW87579_PAGC3PR values);
|
|
|
|
bool xAmplifierAW87579_SetAG2OutputPower(tI2cIO *i2c, tAW87579_PAGC2OPR values);
|
|
|
|
bool xAmplifierAW87579_SetAGC2Parameter(tI2cIO *i2c, tAW87579_PAGC2PR values);
|
|
|
|
bool xAmplifierAW87579_SetAGC1Parameter(tI2cIO *i2c, tAW87579_PAGC1PR values);
|
|
|
|
bool xAmplifierAW87579_SetADPMode(tI2cIO *i2c, tAW87579_ADP_MODE values);
|
|
|
|
bool xAmplifierAW87579_SetADPBoost(tI2cIO *i2c, tAW87579_ADPBST_TIME1 values);
|
|
|
|
bool xAmplifierAW87579_SetADPBoostVTH(tI2cIO *i2c, tAW87579_ADPBST_VTH values);
|
|
|
|
|
|
|
|
void xAmplifierAW87579_GetGainControlReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void xAmplifierAW87579_GetBoostOutputVoltageReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void xAmplifierAW87579_GetBoostControlReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void xAmplifierAW87579_GetADPBoostVthReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void xAmplifierAW87579_GetADPBoostModeReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void xAmplifierAW87579_GetADG1ModeReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void xAmplifierAW87579_GetADG3ModeOpReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void xAmplifierAW87579_GetADG3ModeReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void XfcProtMethod_GetAGC2OprParamModeReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void XfcProtMethod_GetAGC2ParamModeReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
void XfcProtMethod_GetEnBoostReg(tI2cIO *i2c, uint8_t *res);
|
|
|
|
bool xAmplifierAW87579_SetAll(tI2cIO *i2c, tAW87579_RegsList list);
|
|
#endif //AMPLIFIER_AW87579_H
|