充电IC
一、充电 IC 概述
Air8000 工业引擎的充电 IC 是一款高度集成的电源管理芯片,支持 10mA 至 750mA 可编程充电电流,并具备 Bypass 直充模式以提升效率;同时通过 STACMD 单线通信灵活配置参数及监控状态。芯片集成智能充电路径管理,确保系统供电优先级,并支持 150nA 超低功耗 Shipping 模式,大幅延长仓储寿命。此外,它提供全面的保护机制,包括输入欠压锁定(UVLO 3.4V)、输入过流保护(OCP)、电池过压保护(OVP)、系统短路保护、放电保护及过热保护。
如果是Air8000模块,需要按照 https://docs.openluat.com/air8000/luatos/app/updatwifi/update/ 升级一下wifi,这需要配合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 锂电池
3.7v 锂电池。
3.5 连接方式
充电开关打开
连接电池,如果没有对应的端子,可以直接焊接到对应接口,注意正负极。
四、准备软件环境
4.1 下载调试工具
使用说明参考:Luatools 下载和详细使用
4.2 源码及固件
- Air8000 核心板使用固件参考:https://gitee.com/openLuat/LuatOS/tree/master/module/Air8000/tree/master/core,本教程使用的固件版本是:LuatOS-SoC_V2007_Air8000_LVGL.soc
- Air8000 核心板脚本文件参考:
https://gitee.com/openLuat/LuatOS/tree/master/module/Air8000/demo/yhm27xx。
- 将固件和脚本烧录到模块中:Luatools 下载和使用教程 - 合宙模组资料中心
五、充电 IC 寄存器说明
5.1 读取芯片 ID
读取芯片 ID,可以测试总线通信是否正常。
5.2 截止电压寄存器说明
默认截止电压为 4.35V
5.3 充电电流寄存器说明
Air8000 工业引擎中 R SNS=1K。
默认充电电流 250mA 000
最大充电电流是 1500mA 111
注意:目前充电 IC 只能支持写,不能读。
六、代码示例介绍
6.1 Air8000 工业引擎 充电 IC 通信测试
local gpio_pin = 152
gpio.setup(gpio_pin, 1, gpio.PULLUP)
sys.wait(1000)
local result, data = sensor.yhm27xx(gpio_pin, sensor_addr, id_register)
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, sensor_addr, V_ctrl_register, set_4V25)
if result == true then
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, sensor_addr, I_ctrl_register)
log.info("yhm27xxx 0x01 读取数据为:" , data, result)
充电 IC 充电电流设置,如果需要调整充电电流,可以 参考如下代码。
默认充电电流 250mA 0x00 ,下面代码设置充电电流为 500mA 0x40。
-- 写入寄存器 充电电流设置成 500mA
result = sensor.yhm27xx(gpio_pin, sensor_addr, I_ctrl_register, 0x40)
if result == true then
sys.wait(200)
result, data = sensor.yhm27xx(gpio_pin, sensor_addr, I_ctrl_register)
log.info("yhm27xxx 写入**I_CTRL**成功:" , data, result)
else
log.info("yhm27xxx", "写入**I_CTRL**失败, ", result)
end
七、结果验证
7.1 下载成功界面
7.2 充电 IC 通信测试成功
7.3 充电 IC 截止电压设置日志
八、总结
Air8000 工业引擎的充电 IC 支持可编程设置充电截止电压和充电电流,并提供实时状态监控,适用于灵活的工业充电管理需求。