From 10240b4540ac499bf4b3a54132f912d32f21a12b Mon Sep 17 00:00:00 2001 From: N2614 Date: Fri, 19 Nov 2010 07:05:01 +0000 Subject: [PATCH] =?UTF-8?q?=E7=99=BD=E7=AE=B1=E3=81=AE=E9=9B=BB=E5=9C=A7?= =?UTF-8?q?=E3=82=92=E5=AE=9F=E6=A9=9F=E3=81=AE=E8=A8=88=E7=AE=97=E3=81=AB?= =?UTF-8?q?=E5=90=88=E3=82=8F=E3=81=9B=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@276 013db118-44a6-b54f-8bf7-843cb86687b1 --- branches/shirobako_voltage_enable/pm.c | 42 +++++++++++--------------- 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/branches/shirobako_voltage_enable/pm.c b/branches/shirobako_voltage_enable/pm.c index 3a6976a..e361c95 100644 --- a/branches/shirobako_voltage_enable/pm.c +++ b/branches/shirobako_voltage_enable/pm.c @@ -570,35 +570,29 @@ void BT_get_left(){ vreg_ctr[ VREG_C_BT_REMAIN ] = 99; vreg_ctr[ VREG_C_BT_VOLTAGE ] = 200; } - else if( system_status.model == MODEL_SHIROBAKO ) - { - // 白箱 // - if( iic_mcu_read( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_SOC, 2, temp_fuel ) != ERR_SUCCESS ) - { - // エミュレーション機能がおかしい - vreg_ctr[ VREG_C_BT_REMAIN ] = 99; - } - else - { - vreg_ctr[ VREG_C_BT_REMAIN ] = temp_fuel[0]; - vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = temp_fuel[1]; - } - vreg_ctr[ VREG_C_BT_VOLTAGE ] = 200; - } else { - // 実機 // + // 白箱 or 実機 // u8 temp_v[2]; u8 temp_force_fule_left; // 残量リード - if( iic_mcu_read( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_SOC, 2, temp_fuel ) != ERR_SUCCESS ) + if (iic_mcu_read(IIC_SLA_BT_GAUGE, BT_GAUGE_REG_SOC, 2, temp_fuel) != ERR_SUCCESS) { - // 残量ICがNACK …バッテリはずれた - vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_GASGAUGE_ERR; - bt_chg_ready = false; - vreg_ctr[ VREG_C_BT_REMAIN ] = 0; - system_status.force_off = 1; // 強制電源断フラグ(カウンタ) + // 白箱の時は残量を設定しておかないと起動しない + if (system_status.model == MODEL_SHIROBAKO) + { + // エミュレーション機能がおかしい + vreg_ctr[VREG_C_BT_REMAIN] = 99; + } + else + { + // 残量ICがNACK …バッテリはずれた + vreg_ctr[VREG_C_STATUS_1] |= REG_BIT_GASGAUGE_ERR; + bt_chg_ready = false; + vreg_ctr[VREG_C_BT_REMAIN] = 0; + system_status.force_off = 1; // 強制電源断フラグ(カウンタ) + } } else { @@ -700,7 +694,7 @@ void BT_get_left(){ } vreg_twl[ REG_TWL_INT_ADRS_POWER_INFO ] = temp_twl_bt_level; } - + // 残量で割り込み。急激に減ると飛ぶことがある // { static u8 bt_remain_old_ctr; @@ -718,7 +712,7 @@ void BT_get_left(){ bt_remain_old_ctr = vreg_ctr[ VREG_C_BT_REMAIN ]; } - + // PMIC-NTRに電池残量を教えてあげる { static bit initialized;