8. lighting 握手充电功能
8.1. 概述
支持可以使用lighting线给设备充电。当lighting插入后,先和lighting线握手使其输出强电,再开启内置充电功能,实现对设备的充电。Lighting充电支持普通苹果线充电和苹果快充线充电,且支持正反插供电,具体供电多少mA和不同板级有关。
8.2. 工程配置
在板级配置文件board_xxx_demo_cfg.h中打开充电配置使能、是否支持lighting握手协议,另外可自定义协议通信的IO口配置,使能配置如下:
//是否支持芯片内置充电 #define TCFG_CHARGE_ENABLE ENABLE_THIS_MOUDLE //是否支持开机充电 #define TCFG_CHARGE_POWERON_ENABLE DISABLE //是否支持拔出充电自动开机功能 #define TCFG_CHARGE_OFF_POWERON_NE DISABLE //是否支持 lighting 握手协议 #define TCFG_HANDSHAKE_ENABLE ENABLE #define TCFG_HANDSHAKE_IO_DATA1 IO_PORTB_02//握手 IO 靠近 lighting 座子中间的 #define TCFG_HANDSHAKE_IO_DATA2 IO_PORTB_07//握手 IO 在 lighting 座子边上的
主要代码说明:
lighting充电初始化(handshake_app_start)、以及判断是否充电(get_charge_online_flag())设置不同的供电方式均在board_xxx_demo_cfg.c的board_init里面,对应的代码如下:
void board_init() { #if TCFG_CHARGE_ENABLE && TCFG_HANDSHAKE_ENABLE if(get_charge_online_flag()){ handshake_app_start(0, NULL); } #endif if(get_charge_online_flag()) { power_set_mode(PWR_LDO15); } else { power_set_mode(TCFG_LOWPOWER_POWER_SEL); } }