From 4b14d84999ad805f3d037ac4f6c8c315e792a8f5 Mon Sep 17 00:00:00 2001 From: N2614 Date: Thu, 17 Feb 2011 04:35:06 +0000 Subject: [PATCH] =?UTF-8?q?trunk=20r312~r316=E3=82=92=E3=83=9E=E3=83=BC?= =?UTF-8?q?=E3=82=B8?= 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@319 013db118-44a6-b54f-8bf7-843cb86687b1 --- branches/SDK2.0_1NUP/config.h | 2 +- branches/SDK2.0_1NUP/hoge.bin | Bin 16387 -> 16387 bytes branches/SDK2.0_1NUP/jhl_defs.h | 2 - branches/SDK2.0_1NUP/led.c | 7 ++- branches/SDK2.0_1NUP/pedo_alg_thre_det2.c | 44 ++++++++------ branches/SDK2.0_1NUP/pm.c | 69 +++++++++++++--------- branches/SDK2.0_1NUP/pm.h | 2 +- branches/SDK2.0_1NUP/task_misc.c | 6 +- branches/SDK2.0_1NUP/task_sys.c | 2 +- 9 files changed, 79 insertions(+), 55 deletions(-) diff --git a/branches/SDK2.0_1NUP/config.h b/branches/SDK2.0_1NUP/config.h index 4417db6..956ddf0 100644 --- a/branches/SDK2.0_1NUP/config.h +++ b/branches/SDK2.0_1NUP/config.h @@ -15,7 +15,7 @@ #define MCU_VER_MAJOR 0x01 -#define MCU_VER_MINOR 0x1B +#define MCU_VER_MINOR 0x1C #define _firm_format_v3_ diff --git a/branches/SDK2.0_1NUP/hoge.bin b/branches/SDK2.0_1NUP/hoge.bin index 94163ffc190704578aa9d0a82ddfce53ba5b3473..efa2ea8316655c65938cad8c9bc6f298165a079a 100644 GIT binary patch delta 3874 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 Gjpl!avx6f5 diff --git a/branches/SDK2.0_1NUP/jhl_defs.h b/branches/SDK2.0_1NUP/jhl_defs.h index ca5b913..e6cd773 100644 --- a/branches/SDK2.0_1NUP/jhl_defs.h +++ b/branches/SDK2.0_1NUP/jhl_defs.h @@ -97,8 +97,6 @@ unsigned char MIN; unsigned char SEC; - - # endif #endif diff --git a/branches/SDK2.0_1NUP/led.c b/branches/SDK2.0_1NUP/led.c index ec2f820..e1414e9 100644 --- a/branches/SDK2.0_1NUP/led.c +++ b/branches/SDK2.0_1NUP/led.c @@ -70,6 +70,10 @@ u8 frame_sleep; st_LED_dim_status LED_dim_status_sleep; +// 充電中か否か +extern bit BT_IN_CHG_delayed_n; + + // ======================================================== #define led_fade_to( now, goal ) now = fade_to( now, goal ) @@ -382,7 +386,8 @@ static u8 led_pow_batt_low() // おしまい } - if(( vreg_ctr[VREG_C_BT_REMAIN] > BATT_TH_EMPTY ) || !BT_IN_CHG_n ) + if(( vreg_ctr[VREG_C_BT_REMAIN] > BATT_TH_EMPTY ) || !BT_IN_CHG_delayed_n ) + // 電池残量が5%(〜10%) または、それ未満でも充電中 { // 赤点灯 led_fade_to( LED_duty_pow_blu, 0 ); diff --git a/branches/SDK2.0_1NUP/pedo_alg_thre_det2.c b/branches/SDK2.0_1NUP/pedo_alg_thre_det2.c index 7aaa887..a3be680 100644 --- a/branches/SDK2.0_1NUP/pedo_alg_thre_det2.c +++ b/branches/SDK2.0_1NUP/pedo_alg_thre_det2.c @@ -201,7 +201,7 @@ void pedometer() static void hosu_increment_if_necessary() { - u8 year_compd; // hour境界補正済み現在年。comp(ensation) + u8 year_compd; // hour境界補正済み現在年。comp(ensation -ed) // 現在時刻取得 DI(); @@ -225,7 +225,7 @@ static void hosu_increment_if_necessary() // 書き込みポインタの更新 if( ! ( vreg_ctr[ VREG_C_ACC_HOSU_L ] == 0 && // 歩数計on後、最初の一歩までは前回からの経過時間を計算しない vreg_ctr[ VREG_C_ACC_HOSU_M ] == 0 && - vreg_ctr[ VREG_C_ACC_HOSU_H ] == 0 )) //. 全ビットorでゼロ判定するのはデジタル回路屋の方言みたい + vreg_ctr[ VREG_C_ACC_HOSU_H ] == 0 )) //. 全ビットORでゼロ判定するのはデジタル回路屋の方言みたい { // 歩数計が止まっていた時間を考慮して必要なら進める // 補正計算 元旦零時台で昨日扱いになった場合、大晦日の23時台に上書き @@ -249,25 +249,31 @@ static void hosu_increment_if_necessary() last_hour_fny = now_longhour; // 毎時ログ インクリメント - if( pool.vreg_c_ext.pedo_log[ p_record ] == HOSU_NODATA ) // その時間帯最初のカウントの時 + if( pool.vreg_c_ext.pedo_log[ p_record ] == HOSU_MAX ) + { + // 何もしないでおしまい + //. 小計の合計と累計があわなくなるのを避けるためだろうけど、どうなの? + return; + } + else if( pool.vreg_c_ext.pedo_log[ p_record ] == HOSU_NODATA ) // その時間帯最初のカウントの時 { // これしないと1歩足りない pool.vreg_c_ext.pedo_log[ p_record ] = 1; } - else if( pool.vreg_c_ext.pedo_log[ p_record ] != HOSU_MAX ) - { + else + { // 通常パス pool.vreg_c_ext.pedo_log[ p_record ] += 1; + } - // 累積の更新 // - if( ++vreg_ctr[ VREG_C_ACC_HOSU_L ] == 0 ) //. いろいろ失敗した... + // 累積の更新 // + if( ++vreg_ctr[ VREG_C_ACC_HOSU_L ] == 0 ) // カンストチェック + { + if( ++vreg_ctr[ VREG_C_ACC_HOSU_M ] == 0 ) { - if( ++vreg_ctr[ VREG_C_ACC_HOSU_M ] == 0 ) - { - if( ++vreg_ctr[ VREG_C_ACC_HOSU_H ] == 0 ){ - vreg_ctr[ VREG_C_ACC_HOSU_L ] = 255; //. カンスト orz - vreg_ctr[ VREG_C_ACC_HOSU_M ] = 255; - vreg_ctr[ VREG_C_ACC_HOSU_H ] = 255; - } + if( ++vreg_ctr[ VREG_C_ACC_HOSU_H ] == 0 ){ + vreg_ctr[ VREG_C_ACC_HOSU_L ] = 255; //. いろいろ失敗だったね... + vreg_ctr[ VREG_C_ACC_HOSU_M ] = 255; + vreg_ctr[ VREG_C_ACC_HOSU_H ] = 255; } } } @@ -494,8 +500,10 @@ static unsigned long my_sqrt(unsigned long x) ======================================================== */ static u16 calc_hours_spend( u8 year ) { - // 同じ年の内 - if( cal_log_latest.year_bcd == year ) + u8 cal_log_latest_year = bcdtob( cal_log_latest.year_bcd ); + + // 同じ年の内 + if( cal_log_latest_year == year ) { if( now_longhour > last_hour_fny ) { @@ -506,12 +514,12 @@ static u16 calc_hours_spend( u8 year ) return( 0 ); // 同じ時間帯(と、巻き戻り。 どうなっても知らない) } } - else if( cal_log_latest.year_bcd == ( year -1 ) ) + else if( cal_log_latest_year == ( year -1 ) ) { // 年をまたいでいるとき return( ( ( 365 + ( is_firstyear(year) ? 1: 0 )) * 24 ) - last_hour_fny + now_longhour ); } - else if( cal_log_latest.year_bcd < year ) + else if( cal_log_latest_year < year ) { // 数年放置 return( PEDOMETER_LOG_SIZE +1 ); diff --git a/branches/SDK2.0_1NUP/pm.c b/branches/SDK2.0_1NUP/pm.c index b4e96ea..5a6461d 100644 --- a/branches/SDK2.0_1NUP/pm.c +++ b/branches/SDK2.0_1NUP/pm.c @@ -24,14 +24,14 @@ u8 raw_adc_temperature; BT_VENDER battery_manufacturer = BT_VENDER_NOT_CHECKED; st_bt_comp bt_comp; // バッテリパラメータ構造体 u8 reg_shadow; // NTR PMIC レジスタミラー -bit bt_chg_ready; // バッテリパラメータ送信済。充電開始許可 +bit bt_authorized; // バッテリパラメータ送信済。充電開始許可 u8 chg_led_override; // アダプタ差したとき、充電するしないに関わらずしばらく点灯させる u16 bt_volt16; bit ntr_pm_bt_low_old; bit BT_CHG_STAT_Change; - +bit BT_IN_CHG_delayed_n; u8 pmic_version; u8 mgic_version[2]; @@ -128,7 +128,7 @@ void tsk_batt( ) } // WM0ではCHG_ENABLEピンは /WL_RST に配線されており、充電制御しない - if( !temp_zone_charge_disable && bt_chg_ready && !PM_EXTDC_n ) + if( !temp_zone_charge_disable && bt_authorized && !PM_EXTDC_n ) { BT_CHG_ENABLE(); // 温度範囲OKで充電再開 } @@ -139,27 +139,40 @@ void tsk_batt( ) // 充電 // // →割り込み。 + // CCICの不具合回避のため、/CHGのネゲートをちょっと丁寧に遅延させる { - static u8 anti_chatter; + static u8 anti_chatter; - if( BT_IN_CHG_n ) // 充電*してない* (論理がわかりづらいな!) - { - anti_chatter = 0; - LED_CHARGE = 0; - } - else - { + if( !BT_IN_CHG_n ) + { + // さらにチャタリング除去 if( anti_chatter < 2 ) // 電池無しでアダプタさして、電極をさわさわ { // すると充電LEDががさがさするので anti_chatter++; } - else - { - LED_CHARGE = 1; - } - } + else + { + BT_IN_CHG_delayed_n = 0; + } + } + else + { + // "丁寧に遅延" todo:もっといい方法? + if( !BT_CHG_Ena_n && vreg_ctr[ VREG_C_BT_REMAIN ] < 60 ) + { + BT_IN_CHG_delayed_n = 0; // 充電中と扱う。充電が終わっているはずがない + } + else + { + BT_IN_CHG_delayed_n = 1; + anti_chatter = 0; + } + } + + LED_CHARGE = ( ! BT_IN_CHG_delayed_n )? 1: 0; // LEDに反映 } + // アダプタつないだ瞬間、満充電でも数秒わざと点灯させる。給電してることをわからせるため。 if( chg_led_override != 0 ){ // ↑から見ればわかるが、瞬間(数クロック)消える事がある。気がつく人いるかな…? chg_led_override -= 1; LED_CHARGE = 1; @@ -256,7 +269,7 @@ void BT_chk() BT_model_detect(); if( system_status.model != MODEL_JIKKI ) { - bt_chg_ready = false; + bt_authorized = false; return; // おしまい } @@ -274,7 +287,7 @@ void BT_chk() } BT_mgic_init(); // 機種判定も行います } - bt_chg_ready = true; + bt_authorized = true; renge_task_immed_add( tski_BT_temp_update ); // 電池温度監視スタート } @@ -598,14 +611,14 @@ void BT_get_left(){ { // 実機 // u8 temp_v[2]; - u8 temp_force_fule_left; + u8 temp_force_fuel_left; // 残量リード 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; + bt_authorized = false; vreg_ctr[ VREG_C_BT_REMAIN ] = 0; system_status.force_off = true; } @@ -638,27 +651,27 @@ void BT_get_left(){ if( bt_volt16 > V_TH_30 ) { - temp_force_fule_left = 100; + temp_force_fuel_left = 100; hysteresis = 0; } else if( bt_volt16 - hysteresis > V_TH_LO ) { - temp_force_fule_left = 30; + temp_force_fuel_left = 30; hysteresis = 0; } else if( bt_volt16 > V_TH_EMPTY ) { - temp_force_fule_left = BATT_TH_LO; // ここから赤 + temp_force_fuel_left = BATT_TH_LO; // ここから赤 hysteresis = 500; } else if( bt_volt16 > V_TH_ZERO ) { - temp_force_fule_left = BATT_TH_EMPTY; + temp_force_fuel_left = BATT_TH_EMPTY; hysteresis = 500; } else if( bt_volt16 > V_TH_FORCE_OFF ) { - temp_force_fule_left = 0; + temp_force_fuel_left = 0; hysteresis = 500; } else @@ -672,20 +685,20 @@ void BT_get_left(){ // 充電許可(=アダプタも刺さってる)のに充電してない // かつ、(少なくとも)素の電池残量が60%以上(CCICバグ回避) // = 充電完了。電池がへたってくるとMGICが100%を返さない - if( !BT_CHG_Ena_n && BT_IN_CHG_n && vreg_ctr[ VREG_C_BT_REMAIN ] > 60 ){ + if( !BT_CHG_Ena_n && BT_IN_CHG_delayed_n ){ vreg_ctr[ VREG_C_BT_REMAIN ] = 100; vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = 0; } else { // 少ない方にキャップ - if( temp_force_fule_left > temp_fuel[0] ) + if( temp_force_fuel_left > temp_fuel[0] ) { vreg_ctr[ VREG_C_BT_REMAIN ] = temp_fuel[0]; vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = temp_fuel[1]; } else { - vreg_ctr[ VREG_C_BT_REMAIN ] = temp_force_fule_left; + vreg_ctr[ VREG_C_BT_REMAIN ] = temp_force_fuel_left; vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = 0; } } diff --git a/branches/SDK2.0_1NUP/pm.h b/branches/SDK2.0_1NUP/pm.h index fd751e6..7cf1575 100644 --- a/branches/SDK2.0_1NUP/pm.h +++ b/branches/SDK2.0_1NUP/pm.h @@ -161,7 +161,7 @@ task_status_immed tski_PM_LCD_off(); task_status_immed tski_PM_BL_set(); -#define PM_Chg_Stop() { BT_TEMP_P = 0; BT_CHG_DISABLE(); while( !BT_IN_CHG_n ){;}; LED_CHARGE = 0; bt_chg_ready = false; } +#define PM_Chg_Stop() { BT_TEMP_P = 0; BT_CHG_DISABLE(); LED_CHARGE = 0; bt_authorized = false; } //  これを呼ぶ前に、現在温度を教えておく必要があります。 diff --git a/branches/SDK2.0_1NUP/task_misc.c b/branches/SDK2.0_1NUP/task_misc.c index 6f79c04..3c27c04 100644 --- a/branches/SDK2.0_1NUP/task_misc.c +++ b/branches/SDK2.0_1NUP/task_misc.c @@ -251,7 +251,7 @@ extern u8 raw_adc_temperature; extern u8 iic_burst_state; extern bit temp_zone_charge_disable; -extern bit bt_chg_ready; +extern bit bt_authorized; /* ======================================================== @@ -265,7 +265,7 @@ extern bit bt_chg_ready; 5) 〃 6) ( rcomp & 0xFF ) 7) raw_adc_temperature - 8) ( !temp_zone_charge_disable | ( bt_chg_ready << 1 ) ) + 8) ( !temp_zone_charge_disable | ( bt_authorized << 1 ) ) 9) ======================================================== */ u8 extinfo_read() @@ -286,7 +286,7 @@ u8 extinfo_read() infos[4] = mgic_version[1]; infos[5] = (u8)( _dbg_rcomp & 0xFF ); infos[6] = raw_adc_temperature; - infos[7] = ( !temp_zone_charge_disable | ( bt_chg_ready << 1 ) ); + infos[7] = ( !temp_zone_charge_disable | ( bt_authorized << 1 ) ); infos[8] = system_status.info_fullcolor; iic_burst_state++; diff --git a/branches/SDK2.0_1NUP/task_sys.c b/branches/SDK2.0_1NUP/task_sys.c index 8729cea..1b3ce19 100644 --- a/branches/SDK2.0_1NUP/task_sys.c +++ b/branches/SDK2.0_1NUP/task_sys.c @@ -29,7 +29,7 @@ static void send_getup_to_soc(); //========================================================= extern bit info_led_off; extern bit going_to_sleep; -extern bit bt_chg_ready; +extern bit bt_authorized; static u8 timeout_sleep; extern u8 chg_led_override;