diff --git a/trunk/accero.c b/trunk/accero.c index abba895..637ec53 100644 --- a/trunk/accero.c +++ b/trunk/accero.c @@ -54,6 +54,7 @@ extern u8 pool[]; u16* hyst_pedometer; + // ======================================================== task_interval tsk_soft_int( ); static void hosu_increment(); @@ -61,6 +62,7 @@ u16 get_long_hour(); + /* ========================================================  ・割り込みを確認してデータを吸い上げ、レジスタに書き出します ・本当であればコールバック関数を登録しておけばいいじゃんとなるのですが、 @@ -73,18 +75,27 @@ task_status_immed tsk_cbk_accero( ) if( system_status.pwr_state == ON ) { // 加速度センサデータレジスタへの反映 - iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | 0x80 ), 6, &vreg_ctr[VREG_C_ACC_XL] ); - - if( ( vreg_ctr[VREG_C_ACC_CONFIG] & VREG_BITMASK_ACC_CONF_ACQ ) != 0 ) + if( iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | 0x80 ), 6, &vreg_ctr[VREG_C_ACC_XL] ) + == ERR_SUCCESS ) { - set_irq( VREG_C_IRQ1, REG_BIT_ACC_DAT_RDY ); + if( ( vreg_ctr[VREG_C_ACC_CONFIG] & VREG_BITMASK_ACC_CONF_ACQ ) != 0 ) + { + set_irq( VREG_C_IRQ1, REG_BIT_ACC_DAT_RDY ); + } + + // ゴミデータのカラ読み + if( ACC_VALID == 1 ) + { + u8 temp[6]; + iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | 0x80 ), 6, temp ); + } } - - // ゴミデータのカラ読み - if( ACC_VALID == 1 ) + else { - u8 temp[6]; - iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | 0x80 ), 6, temp ); + // 加速度センサが異常になったので止める + vreg_ctr[VREG_C_ACC_CONFIG] &= ~( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ ); + acc_hosu_set(); + return ( ERR_SUCCESS ); // タスクの削除は必要 } } @@ -105,7 +116,7 @@ task_status_immed tsk_cbk_accero( ) acc_norm[2] = acc_norm[1]; acc_norm[1] = acc_norm[0]; - // そのうちローコストな方法を考える、かも + // そのうちローコストな方法を考える、かも acc_norm[0] = sqrt( (long)sx16 * ( sx16 / 2 ) + (long)sy16 * ( sy16 / 2 ) + (long)sz16 * ( sz16 / 2 ) ); @@ -164,6 +175,7 @@ u8 p_record; static void hosu_increment() { static u16 last_hour; // 履歴の最新は何時? + static u8 last_year; // 累積の更新 // // いろいろ失敗した... @@ -181,26 +193,80 @@ static void hosu_increment() // 毎時履歴の更新 { - u16 temp_hour = get_long_hour(); - if( temp_hour > last_hour ) + u16 now_hour; + u8 now_year; + + // 時計を止める必要が有るので↓は一気に行って下さい + DI(); + RWAIT = 1; + while( !RWST ){;} + now_year = bcdtob( YEAR ); + now_hour = get_long_hour(); + // RWAIT = 0; ↑で行っています + // EI(); 〃 + + // 歩数計が止まったいた時間を考慮して必要なら進める // + if( last_year == now_year ) { - for( ; last_hour != temp_hour; last_hour += 1 ) + if( now_hour > last_hour ) { - p_record += 1; - *(hyst_pedometer + p_record) = MAGIC_PEDO_NODATA; + fill_hosu_hist_hours( now_hour - last_hour ); } - *(hyst_pedometer + p_record) = 0; + } + else if( last_year == ( now_year -1 ) ) + { + // 年をまたいでいるとき + u16 temp_hours = last_hour + now_hour - ( ( 365 + (( now_year & 0x03 ) == 1 )? 1: 0 ) * 24 ); + fill_hosu_hist_hours( temp_hours ); + } + else if( last_year < now_year ) + { + // 数年放置 + fill_hosu_hist_hours( 255 ); + } + else + { + // 巻き戻るなど + // 知らない… } - *(hyst_pedometer + p_record) += 1; - if( *( hyst_pedometer + p_record ) == MAGIC_PEDO_MAX ) + // 実際にインクリメント + *( hyst_pedometer + p_record ) += 1; + if( *( hyst_pedometer + p_record ) < MAGIC_PEDO_MAX ) { - *hyst_pedometer = 65534; + *( hyst_pedometer + p_record ) = MAGIC_PEDO_MAX; } + } } + +void fill_hosu_hist_hours( u16 hours ) +{ + if( hours > 255 ) + { + hours = 255; + } + + hours -= 1; + + // 空白の数時間の設定 + while( hours != 0 ) + { + p_record += 1; + *( hyst_pedometer + p_record ) = MAGIC_PEDO_NODATA; + hours -= 1; + } + p_record += 1; + *( hyst_pedometer + p_record ) = 0; +} + + + + + + bit hosu_read_inited; bit record_read_msb_lsb; @@ -239,7 +305,7 @@ u8 hosu_read( ) else { rv = (u8)( temp & 0x00FF ); - p_record_buffer += 1; + p_record_buffer -= 1; } record_read_msb_lsb += 1; @@ -249,7 +315,7 @@ u8 hosu_read( ) void hosu_init() { - u8 i; + u8 i = 0; hyst_pedometer = (u16*)pool; do @@ -390,8 +456,7 @@ __interrupt void intp23_ACC_ready( ) /* ======================================================== - 2000年1月1日0時からの現在時刻を返す - + 今年の元旦からの経過時間(hour)を返す。 引数 無し 返値 u16 long_hour ======================================================== */ @@ -401,38 +466,35 @@ static const u16 DAYS_FROM_HNY[] = { 120+31, 151+30, 181+31, 212+31, 243+30, 273+31, 304+30 }; - u16 get_long_hour() { u16 long_hour; - u8 year_hex = bcdtob( YEAR ); - u8 month_hex = bcdtob( MONTH ); - u8 day_hex = bcdtob( DAY ); - u8 hour_hex = bcdtob( HOUR ); + u8 year_hex; + u8 month_hex; + u8 day_hex; + u8 hour_hex; - DI(); - - RWAIT = 1; - while( !RWST ){;} - - // まず日数の部分 - long_hour = year_hex * 365; - long_hour += ( year_hex / 4 ) +1; // 閏日の分。修正ユリウスでは2000年も閏年 - long_hour += DAYS_FROM_HNY[ month_hex ]; - if(( 2 <= month_hex ) && ( day_hex < 29 )) - { - // 2/29より前 - long_hour -= 1; - } - long_hour += day_hex; - - long_hour *= 24; - long_hour += hour_hex; + year_hex = bcdtob( YEAR ); + month_hex = bcdtob( MONTH ); + day_hex = bcdtob( DAY ); + hour_hex = bcdtob( HOUR ); RWAIT = 0; - EI(); + // まず日数の部分 + long_hour = DAYS_FROM_HNY[ month_hex ]; + if(( ( year_hex & 0x03 ) == 0 ) && ( ( 3 <= month_hex ) + || (( 2 == month_hex ) && ( day_hex == 29 )) )) + { + // 閏年で、閏日より後 + long_hour += 1; + } + long_hour += day_hex; + long_hour *= 24; // 日数→時間 + + long_hour += hour_hex; + return( long_hour ); } diff --git a/trunk/accero.h b/trunk/accero.h index 936a54b..f77da36 100644 --- a/trunk/accero.h +++ b/trunk/accero.h @@ -13,6 +13,7 @@ task_status_immed acc_hosu_set( ); void hosu_init(); void hosu_read_end( ); u8 hosu_read( ); +void fill_hosu_hist_hours( u16 ); #endif diff --git a/trunk/config.h b/trunk/config.h index a72cff5..c2b2c9c 100644 --- a/trunk/config.h +++ b/trunk/config.h @@ -6,7 +6,7 @@ #define MCU_VER_MAJOR 0x00; -#define MCU_VER_MINOR 0x0C; +#define MCU_VER_MINOR 0x0B; #define _OVERCLOCK_ diff --git a/trunk/incs.h b/trunk/incs.h index 74b5ffe..c355ca3 100644 --- a/trunk/incs.h +++ b/trunk/incs.h @@ -25,6 +25,8 @@ #include "rtc.h" +#include "accero.h" + //========================================================= err firm_update( ); diff --git a/trunk/pm.c b/trunk/pm.c index 4b05b68..c37ef4d 100644 --- a/trunk/pm.c +++ b/trunk/pm.c @@ -827,7 +827,7 @@ task_status_immed ntr_pmic_comm( ) { // CODECバグ回避 // リセット単品でなかったら無視 -// if( ( reg1_old ^ reg_shadow ) == REG_BIT_TWL_REQ_RST_REQ ) + if( ( reg1_old ^ reg_shadow ) == REG_BIT_TWL_REQ_RST_REQ ) { set_irq( VREG_C_IRQ2, REG_BIT_TWL_RESET_REQ ); } diff --git a/trunk/pm.h b/trunk/pm.h index 060ab68..34cad61 100644 --- a/trunk/pm.h +++ b/trunk/pm.h @@ -68,6 +68,11 @@ enum BT_GAUGE_REG_ADRS #define PM_REG_BIT_BL_L 0x02 +// 0x05 pow save +#define PM_REG_BIT_VDD1P_1R05 0b00001000 +#define PM_REG_BIT_VDD1P_0R90 0b00100000 +#define PM_REG_BIT_VDD_AUTO 0b00000111 +#define PM_REG_BIT_VDD_PWM 0b00000000 #define DELAY_PM_TW_PWUP 16 @@ -126,19 +131,20 @@ task_status_immed tski_vcom_set( ); #else // 本番チップ待ち #ifdef _PM_BUG_ -#define PM_VDD_ecoMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, 0x00 | 0x04 )) -#define PM_VDD_normMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, 0x00 | 0x03 )) +#define PM_VDD_ecoMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, PM_REG_BIT_VDD1P_0R90 | PM_REG_BIT_VDD_AUTO )) +#define PM_VDD_normMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, PM_REG_BIT_VDD1P_1R10 | PM_REG_BIT_VDD_PWM )) #else #ifdef _SAITO_ -#define PM_VDD_ecoMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, 0x00 | 0x04 )) +// スリープ時、3.3のみAUTO/PFM +#define PM_VDD_ecoMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, PM_REG_BIT_VDD1P_1R05 | 0x04 )) #else -#define PM_VDD_ecoMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, 0x00 | 0x07 )) +#define PM_VDD_ecoMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, PM_REG_BIT_VDD1P_1R05 | PM_REG_BIT_VDD_AUTO )) #endif -#define PM_VDD_normMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, 0x00 | 0x00 )) +#define PM_VDD_normMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, PM_REG_BIT_VDD1P_1R05 | PM_REG_BIT_VDD_PWM )) #endif #endif diff --git a/trunk/sw.c b/trunk/sw.c index 52ea07f..5ea857d 100644 --- a/trunk/sw.c +++ b/trunk/sw.c @@ -56,16 +56,6 @@ void tsk_sw( ) static u8 cnt_force_off = 0; static u8 task_interval = 0; - if( task_interval-- != 0 ) - { - return; - } - else - { - task_interval = (u8)( INTERVAL_TSK_SW / SYS_INTERVAL_TICK ); - } - - switch ( system_status.pwr_state ) { case ( OFF_TRIG ): @@ -80,11 +70,21 @@ void tsk_sw( ) SW_pow_mask = 1; SW_home_mask = 1; SW_wifi_mask = 1; - SW_pow_count = 0; - SW_wifi_count = 0; - SW_home_count = 0; break; + } + if( task_interval-- != 0 ) + { + return; + } + else + { + task_interval = (u8)( INTERVAL_TSK_SW / SYS_INTERVAL_TICK ); + } + + + switch ( system_status.pwr_state ) + { case ( ON ): case ( SLEEP ): case ( BT_CHARGE ): @@ -150,9 +150,12 @@ void tsk_sw( ) } // ボタン押し時間のカウント - if( ( system_status.pwr_state == ON ) +/* +if( ( system_status.pwr_state == ON ) || ( system_status.pwr_state == OFF ) || ( system_status.pwr_state == BT_CHARGE ) ) + */ + { count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); #ifdef _SW_HOME_ENABLE_ diff --git a/trunk/task_sys.c b/trunk/task_sys.c index 5c848e2..ce190f4 100644 --- a/trunk/task_sys.c +++ b/trunk/task_sys.c @@ -109,8 +109,7 @@ void tsk_sys( ) } system_status.pwr_state = ON_TRIG; // ここまで来ると、電源投入確定 - - // no break // + break; case ON_TRIG: //------------------------------------------------------- @@ -348,4 +347,5 @@ __interrupt void intp0_slp( ) **********************************************************/ task_status_immed tski_firm_update(){ firm_update(); + return( ERR_SUCCESS ); } diff --git a/trunk/yav_mcu_bsr.plg b/trunk/yav_mcu_bsr.plg index 371c360..a848b63 100644 --- a/trunk/yav_mcu_bsr.plg +++ b/trunk/yav_mcu_bsr.plg @@ -1,19 +1,57 @@ C:\WINDOWS\system32\cmd.exe /c touch magic.c -"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\bin\cc78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r" -ms -quvjl2wt -sainter_asm -zp -no magic.c +"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\bin\cc78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r" -ms -quvjl3wt -sainter_asm -zp -no magic.c Compilation complete, 0 error(s) and 0 warning(s) found. "C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\ra78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff inter_asm\magic.asm Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\bin\cc78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r" -ms -quvjl2wt -sainter_asm -zp -no accero.c -accero.c(102) : CC78K0R warning W0745: Expected function prototype -accero.c(111) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 2 warning(s) found. -"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\ra78k0r.exe" -c9F0104 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff inter_asm\accero.asm -Assembly complete, 0 error(s) and 0 warning(s) found. "C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lk78k0r.exe" -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -obsr.lmf "..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r\s0rm.rel" -go85h,0FC00h,1024 -gi0FFFFFFFFFFFFFFFFFFFFh -pbsr_k0r.map -nkd -kp -gb6EFBFFh -b"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib" -bcl0rdm.lib -bcl0rm.lib -bcl0rmf.lib -i"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r" -dbsr_mcu.dr -s -w0 loader.rel pm.rel i2c_ctr.rel main.rel magic.rel WDT.rel i2c_mcu.rel i2c_twl.rel ini_VECT.rel led.rel rtc.rel vreg_ctr.rel vreg_twl.rel adc.rel renge.rel accero.rel self_flash.rel reboot.rel sw.rel task_debug.rel task_misc.rel task_sys.rel Link complete, 0 error(s) and 0 warning(s) found. "C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\oc78k0r.exe" -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -o.\bsr.hex -nu -ki bsr.lmf Object Conversion Complete, 0 error(s) and 0 warning(s) found. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rloader.rel -lbsr.lmf -ointer_asm loader.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rpm.rel -lbsr.lmf -ointer_asm pm.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -ri2c_ctr.rel -lbsr.lmf -ointer_asm i2c_ctr.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rmain.rel -lbsr.lmf -ointer_asm main.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rmagic.rel -lbsr.lmf -ointer_asm magic.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rWDT.rel -lbsr.lmf -ointer_asm WDT.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -ri2c_mcu.rel -lbsr.lmf -ointer_asm i2c_mcu.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -ri2c_twl.rel -lbsr.lmf -ointer_asm i2c_twl.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rini_VECT.rel -lbsr.lmf -ointer_asm ini_VECT.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rled.rel -lbsr.lmf -ointer_asm led.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rrtc.rel -lbsr.lmf -ointer_asm rtc.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rvreg_ctr.rel -lbsr.lmf -ointer_asm vreg_ctr.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rvreg_twl.rel -lbsr.lmf -ointer_asm vreg_twl.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -radc.rel -lbsr.lmf -ointer_asm adc.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rrenge.rel -lbsr.lmf -ointer_asm renge.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -raccero.rel -lbsr.lmf -ointer_asm accero.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rself_flash.rel -lbsr.lmf -ointer_asm self_flash.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rreboot.rel -lbsr.lmf -ointer_asm reboot.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rsw.rel -lbsr.lmf -ointer_asm sw.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rtask_debug.rel -lbsr.lmf -ointer_asm task_debug.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rtask_misc.rel -lbsr.lmf -ointer_asm task_misc.prn +Conversion complete. +"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\lc78k0r.exe" -_msgoff -rtask_sys.rel -lbsr.lmf -ointer_asm task_sys.prn +Conversion complete. C:\WINDOWS\system32\cmd.exe /c ruby C:\Cygwin\home\fujita_ryohei\ctr\nec_s_2_bsrbin.rb bsr.hex C:/Cygwin/home/fujita_ryohei/ctr/nec_s_2_bsrbin.rb:2: warning: variable $KCODE is no longer effective; ignored -Build Total error(s) : 0 Total warning(s) : 2 +Build Total error(s) : 0 Total warning(s) : 0 diff --git a/trunk/yav_mcu_bsr.pri b/trunk/yav_mcu_bsr.pri index 6e3de49..3133e8e 100644 --- a/trunk/yav_mcu_bsr.pri +++ b/trunk/yav_mcu_bsr.pri @@ -23,7 +23,7 @@ SubClock=None Count=0 [Main] Geometry=66, 66, 1467, 1110 -Window=Max +Window=Icon MDI_MAX=OFF Button=ON Mode=Auto @@ -78,10 +78,10 @@ Symbol Type=OFF Language=C Kanji=SJIS [Source] -Geometry=294, 80, 600, 1014 +Geometry=135, 77, 764, 1014 Window=Normal -DispStart=263 -CaretPos=264,0 +DispStart=31 +CaretPos=87,0 Mode=Normal DispFile= Address1= @@ -139,19 +139,11 @@ SaveRange=Screen SaveStart= SaveEnd= Accumulative=ON -[Source1] -Geometry=25, 25, 600, 1014 -Window=Normal -DispStart=777 -CaretPos=778,0 -Mode=Normal -DispFile=pm.c -Accumulative=ON [Assemble] Geometry=605, 2, 600, 400 Window=Normal -DispStart=16108 -CaretPos=16108,27 +DispStart=10256 +CaretPos=10256,27 Address1= Address2= Address3= @@ -193,7 +185,7 @@ SaveRange=Screen SaveStart= SaveEnd= [Memory] -Geometry=442, 97, 550, 1012 +Geometry=592, 111, 550, 1012 Window=Normal Boundary=163 Format=Hex @@ -202,9 +194,9 @@ Endian=Little Ascii=OFF Idtag=OFF Address= -DispStart=00000000 -CaretPosData=0, 246 -CaretPosAscii=0, 246 +DispStart=000FF8F0 +CaretPosData=0, 65423 +CaretPosAscii=0, 65423 Address1= Address2= Address3= @@ -259,7 +251,7 @@ Destination=0 [I/O Port] Line=0 [Stack] -Geometry=780, 470, 400, 300 +Geometry=777, 465, 400, 300 Window=Normal Boundary=13762687 Mode=Proper @@ -866,72 +858,68 @@ Count=0 Geometry=1145, 8, 440, 1086 Window=Normal Boundary=13762700 -0=.RTCEN,P,S,A,+,1 -1=.tasks_immed,P,N,A,+,1 -2=.system_status,.,N,A,+,1 -3=.hyst_pedometer,.,N,A,+,1 -4=.pool,P,N,A,+,1 -5=.last_year,P,N,A,+,1 -6=.last_month,P,N,A,+,1 -7=.last_day,P,N,A,+,1 -8=.last_hour,P,N,A,+,1 -9=.p_record,P,N,A,+,1 -10=.vreg_ctr[0x60],P,N,A,+,1 -Line=11 +0=.pool,P,N,A,+,1 +1=.hyst_pedometer,.,N,A,+,1 +2=.P5.3,P,S,A,+,1 +3=.PM5.3,P,S,A,+,1 +4=.RTCEN,P,S,A,+,1 +5=.tasks_immed,P,N,A,+,1 +6=.system_status,.,N,A,+,1 +7=.hyst_pedometer,.,N,A,+,1 +8=.pool,P,N,A,+,1 +9=.last_year,P,N,A,+,1 +10=.last_month,P,N,A,+,1 +11=.last_day,P,N,A,+,1 +12=.last_hour,P,N,A,+,1 +13=.p_record,P,N,A,+,1 +14=.vreg_ctr[0x60],P,N,A,+,1 +Line=15 [Quick Watch] 0=last_hour,P,A,1 1=last_day,P,A,1 2=last_month,P,A,1 3=last_year,P,A,1 -4=pool,P,A,1 -5=p_record,P,A,1 -6=hyst_pedometer,P,A,1 -7=vreg_ctr,P,A,1 -8=vreg_ctr[0x60],P,A,1 -9=RTCEN,P,A,1 -10=system_status,P,A,1 -11=tasks_immed,P,A,1 -12= -13= +4=p_record,P,A,1 +5=vreg_ctr,P,A,1 +6=vreg_ctr[0x60],P,A,1 +7=RTCEN,P,A,1 +8=system_status,P,A,1 +9=tasks_immed,P,A,1 +10=PM5.3,P,A,1 +11=P5.3,P,A,1 +12=hyst_pedometer,P,A,1 +13=pool,P,A,1 14= 15= [Software Break] -Geometry=0, 0, 0, 0 -Window=Hide +Geometry=25, 25, 500, 428 +Window=Normal Width=150 30 200 100 Name0=Swb00001 -Address0=accero.c#_pedo_increment+0x78 +Address0=accero.c#_hosu_increment+0x36 Window0=ASM Status0=ON -Name1=Swb00003 -Address1=self_flash.c#_firm_update+0x0 +Name1=Swb00002 +Address1=accero.c#_hosu_increment+0x55 Window1=ASM Status1=ON Name2=Swb00005 -Address2=self_flash.c#_firm_update+0xfe +Address2=accero.c#_hosu_read+0xa Window2=ASM Status2=ON -Name3=Swb00004 -Address3=self_flash.c#_firm_update+0x101 +Name3=Swb00006 +Address3=pm.c#_PM_init+0x39 Window3=ASM -Status3=ON -Name4=Swb00006 -Address4=task_misc.c#_do_command+0x15 +Status3=OFF +Name4=Swb00004 +Address4=sw.c#_tsk_sw+0x37 Window4=ASM Status4=ON -Name5=Swb00008 -Address5=task_misc.c#_do_command+0x37 +Name5=Swb00003 +Address5=task_sys.c#_tsk_sys+0x9c Window5=ASM Status5=ON -Name6=Swb00009 -Address6=task_misc.c#_do_command+0x4a -Window6=ASM -Status6=ON -Name7=Swb00002 -Address7=pm.c#_ntr_pmic_comm+0x5 -Window7=ASM -Status7=ON -Count=8 +Count=6 [Reset] Debugger=ON Symbol=OFF diff --git a/trunk/yav_mcu_bsr.prj b/trunk/yav_mcu_bsr.prj index 1998553..8df328d 100644 --- a/trunk/yav_mcu_bsr.prj +++ b/trunk/yav_mcu_bsr.prj @@ -246,6 +246,333 @@ Source19=sw.c Source20=task_debug.c Source21=task_misc.c Source22=task_sys.c +[IncFile] +Include1=incs_loader.h +Include2=jhl_defs.h +Include3=user_define.h +Include4=config.h +Include5=bsr_system.h +Include6=renge\renge.h +Include7=renge\renge_defs.h +Include8=renge\renge_task_immediate.h +Include9=vreg_ctr.h +Include10=loader.h +Include11=i2c_mcu.h +Include12=WDT.h +Include13=fsl.h +Include14=fsl_user.h +Include15=i2c_ctr.h +Include16=pm.h +Include17=rtc.h +Include18=adc.h +Include19=led.h +Include20=incs.h +Include21=vreg_twl.h +Include22=accero.h +Include23=i2c_twl_defs.h +Include24=renge\renge_task_intval.h +Include25=i2c_twl.h +Include26=..\..\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r\fsl.h +Include27=reboot.h +Include28=sw.h +Include29=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h +[Options.LK78K0R 0] +Version=100 +O0=bsr_k0r.lmf +O1=bsr.lmf +O2=flash.lmf +O3=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_k0r.map +P1=bsr.map +P2=flash.map +P3=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=0 +SELFCheck=1 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[Options.LK78K0R 1] +Version=100 +O0=a.lmf +G=0 +E=0 +E0=a.elk +GO=0 +GOValue= +GOStart=FC00 +GOSizeValue=1024 +GI=0 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=1 +MemInfoCheck=0 +P=1 +P0=a.map +MI=0 +GB=0 +GBValue= +KM=1 +KD=1 +KP=0 +KL=0 +LF=0 +LL=0 +S=0 +W=1 +SELFCheck=0 +SELF=0 +ZB= +CommandFile=0 +[Options.LK78K0R 2] +Version=100 +O0=bsr.lmf +O1=bsr_k0r.lmf +O2=flash.lmf +O3=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_k0r.map +P1=bsr.map +P2=flash.map +P3=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=0 +SELFCheck=0 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +OFILE=C:\78k_data\yav-mcu-basara\bsr.lmf +[Options.LK78K0R 3] +Version=100 +O0=bsr_bsr.lmf +O1=bsr_k0r.lmf +O2=bsr.lmf +O3=flash.lmf +O4=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_bsr.map +P1=bsr_k0r.map +P2=bsr.map +P3=flash.map +P4=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=2 +SELFCheck=0 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[Options.LK78K0R 4] +Version=100 +O0=bsr_k0r.lmf +O1=bsr.lmf +O2=flash.lmf +O3=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_k0r.map +P1=bsr.map +P2=flash.map +P3=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=0 +SELFCheck=1 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[Options.LK78K0R 5] +Version=100 +O0=bsr_bsr.lmf +O1=bsr_k0r.lmf +O2=bsr.lmf +O3=flash.lmf +O4=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_bsr.map +P1=bsr_k0r.map +P2=bsr.map +P3=flash.map +P4=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=2 +SELFCheck=0 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[ToolSet] +ToolSetName=(変更)78K0R Software Package V1.10 +Tool1=CC78K0R|W2.10 +Tool2=RA78K0R|W1.31 +Tool3=ID78K0R-QB|V3.60 +[Options.LCNV78K0R 0] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 1] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 2] +Version=100 +LCNV_GO=1 +O0=inter_asm +E=0 +CommandFile=0 +[Options.LCNV78K0R 3] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 4] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 5] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.78K0R] +BuildMode=2 +BuildMode2=K0R_dbg +BuildMode3=BSR_dbg +BuildMode4=BSR_rel +BuildMode5=BSR_WM0 +DefaultMode2=1 +DefaultMode3=1 +DefaultMode4=1 +DefaultMode5=1 [Options.CC78K0R 0] Version=210 Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r @@ -423,7 +750,7 @@ Usesaddrchk=0 Autoallocationchk=1 Jumpoptimize=1 Librarycallchk=1 -Librarycall=1129 +Librarycall=1132 Aggressivechk=1 Relativebranchchk=1 Debugoptchk=0 @@ -482,7 +809,8 @@ Undefine0= Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r Include1=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r Include2=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r -Include3=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r +Include3=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r +Include4=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r Memorymodel=1 Flashobj=0 FlashStartadr= @@ -505,7 +833,7 @@ Usesaddrchk=0 Autoallocationchk=1 Jumpoptimize=1 Librarycallchk=0 -Librarycall=1128 +Librarycall=1132 Aggressivechk=1 Relativebranchchk=0 Debugoptchk=0 @@ -794,329 +1122,3 @@ VfiFileBoot0= VfiFileBoot1=boot.vfi VF78K0Rchk=0 VF78K0Rvs= -[IncFile] -Include1=incs_loader.h -Include2=jhl_defs.h -Include3=user_define.h -Include4=config.h -Include5=bsr_system.h -Include6=renge\renge.h -Include7=renge\renge_defs.h -Include8=renge\renge_task_immediate.h -Include9=vreg_ctr.h -Include10=loader.h -Include11=i2c_mcu.h -Include12=WDT.h -Include13=fsl.h -Include14=fsl_user.h -Include15=i2c_ctr.h -Include16=pm.h -Include17=rtc.h -Include18=adc.h -Include19=led.h -Include20=incs.h -Include21=vreg_twl.h -Include22=accero.h -Include23=i2c_twl_defs.h -Include24=renge\renge_task_intval.h -Include25=i2c_twl.h -Include26=..\..\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r\fsl.h -Include27=reboot.h -Include28=sw.h -Include29=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h -[Options.LK78K0R 0] -Version=100 -O0=bsr_k0r.lmf -O1=bsr.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=1 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 1] -Version=100 -O0=a.lmf -G=0 -E=0 -E0=a.elk -GO=0 -GOValue= -GOStart=FC00 -GOSizeValue=1024 -GI=0 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=1 -MemInfoCheck=0 -P=1 -P0=a.map -MI=0 -GB=0 -GBValue= -KM=1 -KD=1 -KP=0 -KL=0 -LF=0 -LL=0 -S=0 -W=1 -SELFCheck=0 -SELF=0 -ZB= -CommandFile=0 -[Options.LK78K0R 2] -Version=100 -O0=bsr.lmf -O1=bsr_k0r.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -OFILE=C:\78k_data\yav-mcu-basara\bsr.lmf -[Options.LK78K0R 3] -Version=100 -O0=bsr_bsr.lmf -O1=bsr_k0r.lmf -O2=bsr.lmf -O3=flash.lmf -O4=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_bsr.map -P1=bsr_k0r.map -P2=bsr.map -P3=flash.map -P4=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=2 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 4] -Version=100 -O0=bsr_k0r.lmf -O1=bsr.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=1 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 5] -Version=100 -O0=bsr_bsr.lmf -O1=bsr_k0r.lmf -O2=bsr.lmf -O3=flash.lmf -O4=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_bsr.map -P1=bsr_k0r.map -P2=bsr.map -P3=flash.map -P4=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=2 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LCNV78K0R 0] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 1] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 2] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 3] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 4] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 5] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.78K0R] -BuildMode=2 -BuildMode2=K0R_dbg -BuildMode3=BSR_dbg -BuildMode4=BSR_rel -BuildMode5=BSR_WM0 -DefaultMode2=1 -DefaultMode3=1 -DefaultMode4=1 -DefaultMode5=1 -[ToolSet] -ToolSetName=(変更)78K0R Software Package V1.10 -Tool1=CC78K0R|W2.10 -Tool2=RA78K0R|W1.31 -Tool3=ID78K0R-QB|V3.60 diff --git a/trunk/yav_mcu_bsr.prk b/trunk/yav_mcu_bsr.prk index f189f1b..371999a 100644 --- a/trunk/yav_mcu_bsr.prk +++ b/trunk/yav_mcu_bsr.prk @@ -9,12 +9,12 @@ OpenFile2=task_sys.c,0,521,328,1765,1085,25,250,25,0 OpenFile3=bsr_mcu.dr,0,198,198,1177,834,0,54,0,0 OpenFile4=adc.c,0,220,220,1199,856,0,112,0,0 OpenFile5=loader.c,0,266,31,1510,788,23,43,23,0 -OpenFile6=ProjectWindow -PrjPos=0,2,754,3,253 -OpenFile7=config.h,0,286,286,1530,1043,0,19,21,0 -OpenFile8=sw.c,0,132,132,1376,889,0,166,17,0 -OpenFile9=OutputWindow +OpenFile6=config.h,0,286,286,1530,1043,0,19,21,0 +OpenFile7=sw.c,0,132,132,1376,889,0,166,17,0 +OpenFile8=OutputWindow OutputPos=0,711,1482,484,1586 +OpenFile9=ProjectWindow +PrjPos=0,2,754,3,253 ActivePRJ=yav_mcu_bsr.prj [ProjectWindow] ProjectWindowDispType=0