Complete data reading

This commit is contained in:
2024-12-20 14:12:48 +08:00
parent 529f1b3628
commit c88a383c29
3 changed files with 92 additions and 57 deletions

View File

@@ -31,14 +31,6 @@
#define SENSOR_RESET_REG 0X1C
#define SET_DRIVER_CURRENT_REG 0X1E
#define RCOUNT_CH0_REG 0x08
#define SETTLECOUNT_CH0_REG 0x10
#define CLOCK_DIVIDERS_CH0_REG 0x14
#define ERROR_CONFIG_REG 0X19
#define MUX_CONFIG_REG 0x1B
#define DRIVE_CURRENT_CH0_REG 0x1E
#define SENSOR_CONFIG_REG 0X1A
#define READ_MANUFACTURER_ID 0X7E
#define READ_DEVICE_ID 0X7F
@@ -59,7 +51,7 @@
/******************************************************************************/
#define COIL_RP_KOM 15.727
#define COIL_L_UH 18.147
#define COIL_L_UH 33
#define COIL_C_PF 150
#define COIL_Q_FACTOR 35.97
@@ -85,29 +77,46 @@ typedef enum {
#define I2C_SDA_PIN GPIO_PIN_0
#define I2C_GPIO_AF GPIO_AF_1
void i2c_gpio_config(void);
void I2C_config(void);
void gpio_config(void);
void i2c_config(void);
void i2c_bus_reset(void);
void i2c_scan(void);
void ldc1612_set_conversion_time(uint8_t channel, uint16_t result);
void ldc1612_set_conversion_offset(uint8_t channel, uint16_t result);
void ldc1612_set_LC_stabilize_time(uint8_t channel, uint16_t result);
void ldc1612_set_freq_divide(uint8_t channel);
void ldc1612_set_error_config(uint16_t value);
void ldc1612_set_mux_config(uint16_t value);
void ldc1612_reset_sensor(void);
void ldc1612_set_drive_current(uint8_t channel, uint16_t value);
void ldc1612_set_sensor_config(uint16_t value);
void ldc1612_single_ch0_config(void);
void ldc1612_iic_get_sensor_infomation(void);
uint16_t ldc1612_get_manufacturer_id(void);
uint16_t ldc1612_get_deveice_id(void);
uint32_t ldc1612_get_raw_channel_result(uint8_t channel);
uint32_t ldc1612_parse_raw_result(uint32_t raw_result);
uint8_t ldc1612_iic_read_16bits(uint8_t reg_addr, uint8_t *data);
int ldc1612_iic_write_16bits(uint8_t reg_addr, uint8_t data[2]);
uint8_t ldc1612_iic_write_16bits(uint8_t reg_addr, uint8_t data[2]);
#endif //LDC1612_H