41 lines
1.3 KiB
C
41 lines
1.3 KiB
C
/*
|
||
* @Author: wujunchao wujunchao@wuxismart.com
|
||
* @Date: 2025-03-17 13:35:30
|
||
* @LastEditors: wujunchao wujunchao@wuxismart.com
|
||
* @LastEditTime: 2025-03-24 17:35:57
|
||
* @FilePath: \signal_generator\App\APP_WU\Src\ip5310_i2c.c
|
||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||
*/
|
||
#include "ip5310_i2c.h"
|
||
|
||
uint8_t rx_data = 0;
|
||
uint8_t tx_data = 0;
|
||
|
||
uint8_t bat_cpa;
|
||
uint8_t charge_flag = 0;
|
||
uint8_t charging_flag = 0;
|
||
|
||
//I2C读取电池电量
|
||
void read_battery(void)
|
||
{
|
||
//读取当前电量,5个档位
|
||
tx_data = BATTERY_CAPACITY;
|
||
HAL_I2C_Master_Transmit(&hi2c3, WRITE_CMD, &tx_data, 1, 0xff);
|
||
HAL_I2C_Master_Receive(&hi2c3, READ_CMD, &rx_data, 1, 0xff);
|
||
bat_cpa = (rx_data >> 4);
|
||
|
||
//电池充电是否开始,type-C是否接入电源
|
||
tx_data = CHARGE_FLAG;
|
||
HAL_I2C_Master_Transmit(&hi2c3, WRITE_CMD, &tx_data, 1, 0xff);
|
||
HAL_I2C_Master_Receive(&hi2c3, READ_CMD, &rx_data, 1, 0xff);
|
||
charge_flag = (rx_data & 0x08)>>3;
|
||
|
||
//电池充电是否结束,type-C可能还处于连接状态
|
||
tx_data = CHARGING_FLAG;
|
||
HAL_I2C_Master_Transmit(&hi2c3, WRITE_CMD, &tx_data, 1, 0xff);
|
||
HAL_I2C_Master_Receive(&hi2c3, READ_CMD, &rx_data, 1, 0xff);
|
||
charging_flag = (rx_data & 0x08)>>3;
|
||
}
|
||
|
||
|