SY8835_For_Demo_Ourself/UsrInc/inc/config.h

332 lines
10 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
******************************************************************************
*
* @file Config.h
* @brief Config module
* @ic sy8835
*
* @version 1.0
* @date 2024/11/01 09:59:40
* @author Alex Xu
*
* Copyright (c) 2013-2099,Tkplusemi Technology Co.,Ltd.
* All Rights Reserved
*
* History:
* Revision Date Author Desc
* 1.0.0 2024/11/01 Alex build this file
******************************************************************************
*/
#ifndef __CONFIG_H__
#define __CONFIG_H__
#include "define.h"
/******************************************************************************\
Macro definitions
\******************************************************************************/
/*Charger Module Config Para Setting*/
#if 0
#if 0
/*20uA 电流源下接 104K NTC(4250K) 电阻并联一个82K电阻后得到的电压值*/
#define T_N20C 1530 //-20℃(76.5KΩ * 20uA) NTC:1151K
#define T_N15C 1495 //-15℃ 迟滞温度
#define T_N10C 1440 //-10℃(72KΩ * 20uA) NTC:629K
#define T_0C 1334 //-0℃(66.7KΩ * 20uA) NTC:357K
#define T_3C 1300
#define T_5C 1260
#define T_8C 1200
#define T_10C 1178 //10℃(58.9KΩ * 20uA) NTC:209.7K
#define T_12C 1100
#define T_15C 1050
#define T_18C 996
#define T_42C 580
#define T_45C 546 //45℃(27.3KΩ * 20uA) NTC:40.9K
#define T_47C 500
#define T_57C 370
#define T_60C 350 //60℃(17.5KΩ * 20uA) NTC:22.2K
#define T_75C 250
#define T_80C 188 //80℃(9.4KΩ * 20uA) NTC:10.6K
#else
/*20uA 电流源下接 104K NTC(4250K) 电阻并联一个100K电阻后得到的电压值*/
#define T_N20C 1840 //-20℃(92KΩ * 20uA) NTC:1151K
#define T_N15C 1788 //-15℃(89.4KΩ * 20uA) NTC:846K
#define T_N10C 1724 //-10℃(86.2KΩ * 20uA) NTC:629K
#define T_0C 1562 //-0℃(78.1KΩ * 20uA) NTC:357K
#define T_3C 1502 //3℃(75.1KΩ * 20uA) NTC:303K
#define T_5C 1462 //5℃(73.1KΩ * 20uA) NTC:272K
#define T_8C 1396 //8℃(69.8KΩ * 20uA) NTC:232K
#define T_10C 1354 //10℃(67.7KΩ * 20uA) NTC:209.7K
#define T_12C 1308 //12℃(65.4KΩ * 20uA) NTC:189K
#define T_15C 1236 //15℃(61.8KΩ * 20uA) NTC:162K
#define T_18C 1166 //15℃(58.3KΩ * 20uA) NTC:140K
#define T_42C 634 //42℃(31.7KΩ * 20uA) NTC:46.5K
#define T_45C 580 //45℃(29 KΩ * 20uA) NTC:40.9K
#define T_47C 546 //47℃(27.3KΩ * 20uA) NTC:37.6K
#define T_48C 530
#define T_57C 400 //57℃(20 KΩ * 20uA) NTC:25K
#define T_60C 362 //60℃(18.1KΩ * 20uA) NTC:22.2K
#define T_75C 222 //75℃(11.1KΩ * 20uA) NTC:12.6K
#define T_80C 192 //80℃(9.6KΩ * 20uA) NTC:10.6K
#endif
#else
/*2.5V上拉LDO下接 104K NTC(3950K) 电阻串联一个100K电阻后得到的电压值,Value=1024 * Rntc/(Rntc + 100k) */
/* 具体公式:( LSB = 2500/1024 )
NTC Pin实际电压Vntc = Rntc/R总 * 2500
码值NTC = Vntc / LSB = (Rntc / R总 * 2500) / (2500 / 1024)
= Rntc / R总 * 1024
使用码值的原因2.5V的上拉LDO有温漂误差使用码值可以规避。
*/
#define NONE_NTC 984 //NTC引脚悬空码值
#define T_N20C 927 //-20℃ NTC:953K
#define T_N17C 911 //-17℃ NTC:804K
#define T_N15C 900 //-15℃ NTC:719K
#define T_N13C 887 //-13℃ NTC:644K
#define T_N10C 866 //-10℃ NTC:547K
#define T_0C 783 //-0℃ NTC:325K
#define T_3C 755 //3℃ NTC:293K
#define T_5C 734 //5℃ NTC:253K
#define T_8C 703 //8℃ NTC:218K
#define T_10C 682 //10℃ NTC:198K
#define T_12C 659 //12℃ NTC:180K
#define T_15C 626 //15℃ NTC:157K
#define T_18C 592 //18℃ NTC:137K
#define T_42C 337 //42℃ NTC:49K
#define T_45C 311 //45℃ NTC:43.6K
#define T_47C 294 //47℃ NTC:40K
#define T_57C 221 //57℃ NTC:27.6K
#define T_60C 203 //60℃ NTC:24.7K
#define T_75C 130 //75℃ NTC:14.6K
#define T_80C 113 //80℃ NTC:12.4K
#endif
/* NTC保护标准选择JEITA or IEC.*/
#define NTC_JEITA 1
#define NTC_IEC 0
/* NTC充电温度范围。 */
#if NTC_IEC
#define IEC_NTC_CHG_PRO_LOW_TMP T_0C //配置充电NTC保护温度下限值。
#define IEC_NTC_CHG_HYST_LOW_TMP T_3C //配置充电NTC保护恢复温度下限迟滞值。
#define IEC_NTC_CHG_PRO_HIGH_TMP T_45C //配置充电NTC保护温度上限值。
#define IEC_NTC_CHG_HYST_HIGH_TMP T_42C //配置充电NTC保护恢复温度上限迟滞值。
#elif NTC_JEITA
/* JEITA模式NTC温度保护上下限阈值和迟滞温度。 */
#define JEITA_NTC_CHG_PRO_LOW_TMP T_0C //配置充电NTC保护温度下限值。
#define JEITA_NTC_CHG_PRO_HYST_LOW_TMP T_3C //配置充电NTC保护恢复温度下限迟滞值。
#define JEITA_NTC_CHG_PRO_HIGH_TMP T_60C //配置充电NTC保护温度上限值。
#define JEITA_NTC_CHG_PRO_HYST_HIGH_TMP T_57C //配置充电NTC保护恢复温度上限迟滞值。
/* JEITA模式NTC温度冷状态上下限阈值和迟滞温度。 */
#define JEITA_NTC_CHG_COLD_HIGH_TMP T_10C //配置充电NT C冷状态温度上限值。
#define JEITA_NTC_CHG_COLD_HYST_HIGH_TMP T_8C //配置充电NTC冷状态恢复温度上限迟滞值。
/* JEITA模式NTC温度暖状态上下限阈值和迟滞温度。 */
#define JEITA_NTC_CHG_WARM_LOW_TMP T_10C //配置充电NTC暖状态温度下限值。
#define JEITA_NTC_CHG_WARM_HYST_LOW_TMP T_12C //配置充电NTC暖状态恢复温度下限迟滞值。
#define JEITA_NTC_CHG_WARM_HIGH_TMP T_45C //配置充电NT C暖状态温度上限值。
#define JEITA_NTC_CHG_WARM_HYST_HIGH_TMP T_42C //配置充电NTC暖状态恢复温度上限迟滞值。
/* JEITA模式NTC温度热状态上下限阈值和迟滞温度。 */
#define JEITA_NTC_CHG_HOT_LOW_TMP T_45C //配置充电NTC热状态温度下限值。
#define JEITA_NTC_CHG_HOT_HYST_LOW_TMP T_47C //配置充电NTC热状态恢复温度下限迟滞值。
#endif
/* NTC放电温度范围。 */
#define NTC_DISCHG_PRO_LOW_TMP T_N20C //配置放电NTC保护温度下限值。
#define NTC_DISCHG_HYST_LOW_TMP T_N15C //配置放电NTC保护恢复温度下限迟滞值。
#define NTC_DISCHG_PRO_HIGH_TMP T_80C //配置放电NTC保护温度上限值。
#define NTC_DISCHG_HYST_HIGH_TMP T_75C //配置放电NTC保护恢复温度上限迟滞值。
/* Bat Level Set. 5% Each Gear */
#define C_batLevel_SetMax 21 //电量计档位数设置
#define Bat_Lev_0 3000 //0%
#define Bat_Lev_5 3050 //5%
#define Bat_Lev_10 3100 //10%
#define Bat_Lev_15 3200 //15%
#define Bat_Lev_20 3250 //20%
#define Bat_Lev_25 3300 //25%
#define Bat_Lev_30 3350 //30%
#define Bat_Lev_35 3400 //35%
#define Bat_Lev_40 3450 //40%
#define Bat_Lev_45 3500 //45%
#define Bat_Lev_50 3600 //50%
#define Bat_Lev_55 3650 //55%
#define Bat_Lev_60 3700 //60%
#define Bat_Lev_65 3750 //65%
#define Bat_Lev_70 3800 //70%
#define Bat_Lev_75 3850 //75%
#define Bat_Lev_80 3900 //80%
#define Bat_Lev_85 3975 //85%
#define Bat_Lev_90 4050 //90%
#define Bat_Lev_95 4125 //95%
#define Bat_Lev_100 4200 //100%
/* Boost Module Config Para Setting. */
#define OPEN_BOOST_VIN 3600 //Boost 发生uvlo保护后在有VIN条件下Boost再次恢复开启的电压3.6V)。
#define OPEN_BOOST_NOVIN 3300 //Boost 发生uvlo保护后在无VIN条件下Boost再次恢复开启的电压3.3V)。
#define BOOST_VOUT_MAX BOOST_VPMID_5_2V //Boost 输出最高电压阈值。
/* LED 驱动输出限流配置。 */
#define LED_DRV_LIMIT_SET P1_DRV_400 //配置P10-P13限流输出2个档位限流电阻400Ω、800Ω。
/* KEY And Hall Module Setting. */
#define HALL_OPEN_LEV_SET 1 //配置是高电平为开盖还是低电平为开盖。1:高电平为开盖0:低电平为开盖。
/* Charger Config Setting. */
#define TRICKLE_CUR_SET CHG_ITC_20MA //配置涓流充电流。
#define ITERM_CUR_SET CHG_ITERM_20MA //配置截止充电流。
#define CONSTANT_CUR_SET CHG_ICC_2_00MA //配置恒流充电流。
#define VFLOAT_SET CHG_VFLOAT_4_200V //配置浮充电压。
#define VFLOAT_JEITA_HOT CHG_VFLOAT_4_050V //配置JEITA标准中NTC过热充电浮充电压。
/* Vox Config Setting. */
#define VOX_PULL_UP_VOLTAGE_SET VOX_CFG_Vox_Rup_2K //配置VOX 上拉电阻。
#define VOX_COM_VOLTAGE_SET VOX_CFG_Vox_Vup_VOXS //配置VOX 通讯电平(1.8v/2.5V/3.0V/5.0)。
#define VOX_COM_PULL_UP_SET VOX_CFG_Comx_Rup_2K //配置VOX 通讯上拉电阻。
#define VOX_CHG_FULL_5V_LEAST_CNT 40 //配置关盖条件下VOX 耳机充满后VOX输出5V持续时间100ms * 40
#define VOX_OPEN_VOUT_5V_DEBOUNCE 5 //配置开盖动作后VOX 输出5V持续时间100ms * 5单位ms。
#define VOX_OPEN_VOUT_0V_DEBOUNCE 5 //配置开盖动作后VOX 输出0V持续时间100ms * 5单位ms。
#define VOX_CLOSE_5V_HOLD_CNT 3 //配置关盖动作后VOX 输出5V持续时间100ms * 3单位ms。
/* 双向通讯协议选择 */
#define JIELI 0 //杰理耳机芯片
#define ZHONGKE 0 //中科蓝讯耳机芯片
#define XUANHENG 1 //玄恒耳机芯片
/* Vox跟随充参数设置。(100ms调用周期) */
#define VOX_CV_TC_CURRENT 20 //耳机充电处于CV/TC阶段的电流值单位mA。
#define VOX_FOLLOW_CHG_INIT_CNT 10 //启动跟随充VOX VOUT输出最高电压持续时间1s单位ms。。
#define VOX_FOLLOW_CHG_PMID_UP_STEPS 2 //VOX VOUT上升调节档位数。
#define VOX_FOLLOW_CHG_PMID_DOWN_STEPS 2 //VOX VOUT下降调节档位数。
#define VOX_FOLLOW_CHG_PMID_UP_CNT 20 //VOX VOUT上升调节周期2s单位ms。。
#define VOUT_MAX_THD BOOST_VPMID_5_2V //VOX VOUT输出最大阈值。
#define VOUT_MIN_THD BOOST_VPMID_3_7V //VOX VOUT输出最小阈值。
/*Sleep Module Setting*/
/*Enter Sleep Time Debounce*/
#define ENTER_STANDBYMODE_CNT 15 //进入Standby Mode 延迟时间,单位:秒
#define ENTER_SHIPMODE_CNT 5 //进入ShipMode 延迟时间,单位:秒
/******************************************************************************\
Variables definitions
\******************************************************************************/
/******************************************************************************\
UserCfg.Functions definitions
\******************************************************************************/
#endif