跳转至

充电IC

一、充电 IC 概述

Air8000 工业引擎的充电 IC 是一款高度集成的电源管理芯片,支持 10mA 至 750mA 可编程充电电流,并具备 Bypass 直充模式以提升效率;同时通过 STACMD 单线通信灵活配置参数及监控状态。芯片集成智能充电路径管理,确保系统供电优先级,并支持 150nA 超低功耗 Shipping 模式,大幅延长仓储寿命。此外,它提供全面的保护机制,包括输入欠压锁定(UVLO 3.4V)、输入过流保护(OCP)、电池过压保护(OVP)、系统短路保护、放电保护及过热保护。

注意充电 ic 的 cmd 命令脚接在内部 wifi 模块的 gpio24,所以代码需要直接在 wifi 的脚本里控制。

二、演示功能概述

本示例将演示如何使用 Air8000 工业引擎的充电 IC,设置充电截止电压,监控充电电流等。

三、准备硬件环境

3.1 Air8000 核心板

使用 Air8000 开发套件,如下图所示:

淘宝购买链接:Air8000 开发套件淘宝购买链接

此开发套件的详细使用说明参考:Air8000 产品手册 中的 Air8000 开发板资料,以及 Air8000 的 LuatOS 第一个入门练习

3.2 PC 电脑

WIN10 以及以上版本的 WINDOWS 系统;

3.3 数据通信线

USB 数据线(其一端为 Type-C 接口,用于连接 Air8000)。

3.4 USB 转串口板

USB 转串口板。

3.5 锂电池

3.7v 锂电池。

3.6 连接方式

充电开关打开

连接电池,如果没有对应的端子,可以直接焊接到对应接口,注意正负极。

Air8000 中 的 wifi 程序下载,需要连接 uart10 接口。

USB 转串口板与测试板连接。

四、准备软件环境

4.1 下载调试工具

使用说明参考:Luatools 下载和详细使用

4.2 选择串口

勾选通用串口,选择 USB 转串口板对应的版本号。

打开串口

如果连接正确,Air8000 中的 wifi 模块会打印相关日志信息。

4.3 测试脚本

测试脚本如下 所示

https://gitee.com/openLuat/LuatOS/tree/master/luat/demo/2712

4.4 程序下载

点击项目管理测试选项。

进入管理界面,如下图所示。

当界面下方显示“已检测到设备,开始烧录”字样时,按一下测试板的复位按键,开始下载, 如下图所示。

五、充电 IC 寄存器说明

5.1 读取芯片 ID

读取芯片 ID,可以测试总线通信是否正常。

5.2 截止电压寄存器说明

默认截止电压为 4.35V

5.3 充电电流寄存器说明

Air8000 工业引擎中 R SNS=1K。

默认充电电流 250mA 000

最大充电电流是 1500mA 111

六、代码示例介绍

6.1 Air8000 工业引擎 充电 IC 通信测试

local gpio_pin = 24
gpio.setup(gpio_pin, 1, gpio.PULLUP)

sys.wait(1000)
local result, data = sensor.yhm27xx(gpio_pin, 0x04, 0x08)
sys.wait(200)
log.info("yhm27xxx", result, data)
if result == true and data ~= nil then
        log.info("yhm27xxx", "yhm27xx存在--")

6.2 Air8000 工业引擎 充电 IC 截止电压设置

设置截止电压为 4.25V,系统默认为 4.35V。

-- 写入V_CTRL寄存器 设置成 4.25v
        result = sensor.yhm27xx(gpio_pin, 0x04, 0x00, 0x20)
        if result == true then
            sys.wait(200)
            result, data = sensor.yhm27xx(gpio_pin, 0x04, 0x00)
            log.info("yhm27xxx 写入V_CTRL成功:" , data, result)
        else
            log.info("yhm27xxx", "写入V_CTRL失败, ", result)
        end

6.3 Air8000 工业引擎 充电 IC 充电电流监控读取

充电 IC 充电电流读取

result, data = sensor.yhm27xx(gpio_pin, 0x04, 0x01)
        log.info("yhm27xxx 0x01 读取数据为:" , data, result)

充电 IC 充电电流设置,如果需要调整充电电流,可以 参考如下代码。

默认充电电流 250mA 0x00 ,下面代码设置充电电流为 500mA 0x40。

-- 写入寄存器 充电电流设置成 500mA
        result = sensor.yhm27xx(gpio_pin, 0x04, 0x01, 0x40)
        if result == true then
            sys.wait(200)
            result, data = sensor.yhm27xx(gpio_pin, 0x04, 0x01)
            log.info("yhm27xxx 写入**I_CTRL**成功:" , data, result)
        else
            log.info("yhm27xxx", "写入**I_CTRL**失败, ", result)
        end

七、结果验证

7.1 下载成功界面

7.2 充电 IC 通信测试成功

7.3 充电 IC 截止电压设置日志

7.4 充电电流监控读取日志

八、总结

Air8000 工业引擎的充电 IC 支持可编程设置充电截止电压和充电电流,并提供实时状态监控,适用于灵活的工业充电管理需求。