diff --git a/trunk/accero.c b/trunk/accero.c index 105089e..06ebfb9 100644 --- a/trunk/accero.c +++ b/trunk/accero.c @@ -14,7 +14,6 @@ #pragma MUL #pragma BCD - #include "incs.h" #include @@ -49,15 +48,12 @@ #define VREG_BITMASK_ACC_CONF_HOSU ( 1 << 1 ) #define VREG_BITMASK_ACC_CONF_ACQ ( 1 << 0 ) -// ======================================================== -extern u16 pool[]; + + // ======================================================== task_status tsk_soft_int( ); -static void hosu_increment(); -u16 get_long_hour(); - /* ======================================================== @@ -96,300 +92,15 @@ task_status_immed tsk_cbk_accero( ) } } - // 歩数計 ///////////////////////////////////////////// - // offでなければ、電源off中でも計測 -// if( ( vreg_ctr[VREG_C_ACC_CONFIG] & VREG_BITMASK_ACC_CONF_HOSU ) != 0x00 ) - { - static s16 th_H = 0x3300; // 閾値。暫定。動的変更とかしたい…ので変数 - static s16 th_L = 0x2C00; - static u16 acc_norm[3]; // 加速度の大きさのヒストリ。数字が大きい方が古い - static u8 interval_hh; // 山-山間の時間。短過ぎたらはじく。 - static u8 time_l; // 前回の極小からの経過時間 - static u16 peak_l; // 谷の深さ - static u16 peak_h; // 山の高さ - static u16 norm_avg[8]; - - u16 sx16 = abs( (u16)vreg_ctr[VREG_C_ACC_XH] * 256 + vreg_ctr[VREG_C_ACC_XL] ); - u16 sy16 = abs( (u16)vreg_ctr[VREG_C_ACC_YH] * 256 + vreg_ctr[VREG_C_ACC_YL] ); - u16 sz16 = abs( (u16)vreg_ctr[VREG_C_ACC_ZH] * 256 + vreg_ctr[VREG_C_ACC_ZL] ); - - norm_avg[7] = norm_avg[6]; // 最近8サンプルの移動平均 - norm_avg[6] = norm_avg[5]; - norm_avg[5] = norm_avg[4]; - norm_avg[4] = norm_avg[3]; - norm_avg[3] = norm_avg[2]; - norm_avg[2] = norm_avg[1]; - norm_avg[1] = norm_avg[0]; - norm_avg[0] = sqrt( (long)sx16 * ( sx16 / 2 ) + - (long)sy16 * ( sy16 / 2 ) + - (long)sz16 * ( sz16 / 2 ) ); - - acc_norm[2] = acc_norm[1]; // 移動平均結果のヒストリ - acc_norm[1] = acc_norm[0]; - acc_norm[0] = - // norm_avg[7] /8 + norm_avg[6] /8 + norm_avg[5] /8 + norm_avg[4] /8 + - norm_avg[3] /4 + norm_avg[2] /4 + norm_avg[1] /4 + norm_avg[0] /4; - -// ここから共通 - - - if( acc_norm[2] <= acc_norm[1] && acc_norm[1] > acc_norm[0] - && acc_norm[0] > th_H ) - // 極大で、閾値を超えていた - { - if(( 15 < interval_hh ) && ( interval_hh < 80 )) - // 前回の極大からの間隔がほどよい - { - if( time_l < interval_hh ) - // 谷を挟んでいる - { - if( acc_norm[0] - peak_l > 4000 ){ - // 一歩増えました - hosu_increment(); - } - } - } - interval_hh = 0; - } - else - { - interval_hh += ( interval_hh != 255 ) ? 1: 0; // 飽和加算って楽に書けたらいいのに - } - - // (2) 直近の極小からの時間 - if( acc_norm[2] >= acc_norm[1] && acc_norm[1] < acc_norm[0] - && acc_norm[0] < th_L ) - { - // 極小を検出 - time_l = 0; - peak_l = acc_norm[0]; - } - else - { - time_l += ( time_l != 255 ) ? 1: 0; - } - - { - static u8 i = 0; - - vreg_ctr[VREG_C_ACC_DBG_0] = i; - - vreg_ctr[VREG_C_ACC_DBG_1] = (u8)( acc_norm[0] / 256 & 0x00FF ); - vreg_ctr[VREG_C_ACC_DBG_2] = (u8)( acc_norm[0] & 0x00FF ); - - vreg_ctr[VREG_C_ACC_DBG_3] = 0; - vreg_ctr[VREG_C_ACC_DBG_4] = interval_hh; - - vreg_ctr[VREG_C_ACC_DBG_5] = 0; - vreg_ctr[VREG_C_ACC_DBG_6] = time_l; - - vreg_ctr[VREG_C_ACC_DBG_7] = vreg_ctr[ VREG_C_ACC_HOSU_L ]; - vreg_ctr[VREG_C_ACC_DBG_8] = (u8)( peak_l / 256 & 0x00FF ); - vreg_ctr[VREG_C_ACC_DBG_9] = (u8)( peak_l & 0x00FF ); - vreg_ctr[VREG_C_ACC_DBG_A] = (u8)( norm_avg[0] / 256 & 0x00FF ); - vreg_ctr[VREG_C_ACC_DBG_B] = (u8)( norm_avg[0] & 0x00FF ); - } - -// ここまで - - } + DBG_LED_WIFI_2_on; + pedometer(); // 歩数計 + DBG_LED_WIFI_2_off; return ( ERR_SUCCESS ); } -/*========================================================= - 歩数+1 -  累積をインクリメント -  履歴を更新 - ========================================================*/ -u8 p_record; -u8 last_hour = 0x23; // 履歴の最新は何時? -u8 last_day = 0x30; -u8 last_month = 0x12; -u8 last_year = 0x99; - -static void hosu_increment() -{ - static u16 last_hour_fny; - - // 累積の更新 // - // いろいろ失敗した... - 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_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; - } - } - } - - { - // 毎時履歴の更新 ///////////////////////////// - // 空白の時間を考慮する。1時間以上放置されたなど。 - u16 now_hour; - u8 now_year; - - // 時計を止める必要が有るので↓は一気に行って下さい - DI(); - RWAIT = 1; - while( !RWST ){;} - now_year = bcdtob( YEAR ); - last_hour = HOUR; // 履歴読み出し時に使用。BCDのままでよい - last_day = DAY; - last_month = MONTH; - now_hour = get_long_hour(); - // RWAIT = 0; ↑で行っています - // EI(); 〃 - - // 歩数計が止まっていた時間を考慮して必要なら進める // - if( last_year == now_year ) - { - if( now_hour > last_hour_fny ) - { - fill_hosu_hist_hours( now_hour - last_hour_fny ); - } - } - else if( last_year == ( now_year -1 ) ) - { - // 年をまたいでいるとき - u16 temp_hours = ( ( 365 + (( now_year & 0x03 ) == 1 ? 1: 0 )) * 24 ) - last_hour_fny + now_hour; - fill_hosu_hist_hours( temp_hours ); - } - else if( last_year < now_year ) - { - // 数年放置 - fill_hosu_hist_hours( 0 ); - } - else - { - // カレンダーが巻き戻るなど - // ノーケアでよい - } - last_year = now_year; - last_hour_fny = now_hour; - - // 実際にインクリメント - if( pool[ p_record ] != 0xFFFE ) - { - pool[ p_record ] += 1; - } - } -} - - - -/* ======================================================== -空白の時間を適切に0にして、 -今を含む1時間のデータを書く位置にポインタ?を進める -======================================================== */ -void fill_hosu_hist_hours( u16 hours ) -{ - if( hours > 255 ) - { - hours = 0; - } - - // 空白の数時間の設定 - do - { - p_record += 1; - pool[ p_record ] = 0; - hours -= 1; - } - while( hours != 0 ); -} - - - -/* ======================================================== -空白の時間を適切に0にして、 -今を含む1時間のデータを書く位置にポインタ?を進める -======================================================== */ -void clear_hosu_hist() -{ - u8 hours = 0; - // 空白の数時間の設定 - do - { - pool[ hours ] = 0xFFFF; - hours -= 1; - } - while( hours != 0 ); -} - - - -u8 hosu_read_state; -bit record_read_msb_lsb; - -/* ======================================================== - 歩数計ヒストリ読み出しの後処理(初期化) - 読み出しポインタのクリア -======================================================== */ -void hosu_read_end( ) -{ - record_read_msb_lsb = 0; - hosu_read_state = 0; -} - - -/* ======================================================== - 歩数計のヒストリを返す。 - 1回呼ぶ度に、ヒストリの下位、上位、一時間遡って下位上位... -======================================================== */ -u8 hosu_read( ) -{ - u8 dat; - u16 temp; - static u8 p_record_buffer; - - switch( hosu_read_state ){ - case( 0 ): - p_record_buffer = p_record; - hosu_read_state += 1; - return( last_hour ); - - case( 1 ): - hosu_read_state += 1; - return( last_day ); - - case( 2 ): - hosu_read_state += 1; - return( last_month ); - - case( 3 ): - hosu_read_state += 1; - return( btobcd(last_year) ); - - case( 4 ): - hosu_read_state += 1; - return( 0x55 ); // reserved dummy - - case( 5 ): - hosu_read_state += 1; - return( 0xAA ); // reserved. dummy - - default: - temp = pool[ p_record_buffer ]; - if( record_read_msb_lsb == 0 ) - { - dat = (u8)( temp & 0x00FF ); - } - else - { - dat = (u8)(( temp >> 8 ) & 0x00FF ); - p_record_buffer -= 1; - } - record_read_msb_lsb += 1; - return( dat ); - } -} - /*======================================================= @@ -516,50 +227,3 @@ __interrupt void intp23_ACC_ready( ) } } - - -/* ======================================================== - 今年の元旦からの経過時間(hour)を返す。 - 引数 無し - 返値 u16 long_hour -======================================================== */ -static const u16 DAYS_FROM_HNY[] = { - 0, - 0, 31, 31+28, 59+31, 90+30, - 120+31, 151+30, 181+31, 212+31, 243+30, - 273+31, 304+30 }; - -u16 get_long_hour() -{ - u16 long_hour; - u8 year_hex; - u8 month_hex; - u8 day_hex; - u8 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 - 1; - long_hour *= 24; // 日数→時間 - - long_hour += hour_hex; - - return( long_hour ); -} - - - diff --git a/trunk/accero.h b/trunk/accero.h index 132a537..1fd23eb 100644 --- a/trunk/accero.h +++ b/trunk/accero.h @@ -3,16 +3,12 @@ #include "jhl_defs.h" - +#include "pedometer.h" /////////////////////////////////////////////////////////// task_status_immed tsk_cbk_accero( ); task_status_immed acc_hosu_set( ); -void hosu_read_end( ); -u8 hosu_read( ); -void fill_hosu_hist_hours( u16 ); -void clear_hosu_hist(); #endif diff --git a/trunk/adc.c b/trunk/adc.c index a6637e2..869146b 100644 --- a/trunk/adc.c +++ b/trunk/adc.c @@ -14,9 +14,10 @@ bit adc_updated; u8 adc_raw_vol; u8 adc_raw_dep; +u8 vol_old; -#define INTERVAL_TSK_ADC 16 +#define INTERVAL_TSK_ADC 3 /* ======================================================== ADC設定と、開始 @@ -69,29 +70,61 @@ void tsk_adc( ) { // Tune /////////////////////////////////////// { - // 似非ヒステリシスを付けて64段 + // 似非ヒステリシス V2 + // ガリオームには適さない +#define KIKAN 32 static u8 old_value; + static s8 diffs; u8 temp; if( abs( adc_raw_dep - old_value ) >= 2 ) { - vreg_ctr[ VREG_C_TUNE ] = ( adc_raw_dep & 0xFC ); + // 大きく離れた + vreg_ctr[ VREG_C_TUNE ] = adc_raw_dep; old_value = adc_raw_dep; #if 0 割り込み入れない; 割り込みを入れるようであれば、ちゃんと変化チェックする; - + set_irq( VREG_C_IRQ0, REG_BIT_VR_TUNE_CHANGE ); #endif - vreg_ctr[ VREG_C_DBG1 ] = vreg_ctr[ VREG_C_TUNE ]; + diffs = 0; + } + else + { + // 近所の値でも、ある期間でいっぱい偏っていたらそっちに寄せる + static u8 kikan_count = KIKAN; + if( old_value < adc_raw_dep ) + { + diffs += 1; + } + else if( old_value > adc_raw_dep ) + { + diffs -= 1; + } + + if( --kikan_count == 0 ) + { + if( diffs >= KIKAN && ( diffs < 64 )) + { + old_value += 1; + } + else if( ( diffs <= ( 256 - KIKAN )) && ( diffs > ( 128 + 64 ) )) // あらー? + { + old_value -= 1; + } + vreg_ctr[ VREG_C_TUNE ] = old_value; + kikan_count = KIKAN; + diffs = 0; + } } - vreg_ctr[ VREG_C_DBG2 ] = adc_raw_dep; // dbg } + vreg_ctr[ VREG_C_DBG1 ] = vreg_ctr[ VREG_C_TUNE ]; + vreg_ctr[ VREG_C_DBG2 ] = adc_raw_dep; // dbg // Volume ///////////////////////////////////// { // 似非ヒステリシスを付けて64段 - static u8 vol_old; u8 temp; if( abs( adc_raw_vol - vol_old ) >= 2 ) @@ -202,7 +235,6 @@ __interrupt void int_adc( ) static u8 hist_snd_vol[3]; static u8 hist_bt_temp[3]; static u8 index; - u8 temp; EI( ); switch ( ADS ) diff --git a/trunk/adc.h b/trunk/adc.h index 3afac18..9a1b40a 100644 --- a/trunk/adc.h +++ b/trunk/adc.h @@ -33,6 +33,10 @@ +/////////////////////////////////////// +extern u8 vol_old; + + /////////////////////////////////////// u8 get_adc( u8 ch ); diff --git a/trunk/config.h b/trunk/config.h index bef0efe..f3b9d0a 100644 --- a/trunk/config.h +++ b/trunk/config.h @@ -2,7 +2,7 @@ #define __config__ #define _debug_ -//#define _debug_led_ +#define _debug_led_ #define MCU_VER_MAJOR 0x00 @@ -43,13 +43,10 @@ #define _MCU_BSR_ #endif -/* -まだみぬ #ifdef _MODEL_CTR_ #define _PMIC_CTR_ #define _MCU_BSR_ #define _SW_HOME_ENABLE_ #endif -*/ #endif diff --git a/trunk/incs.h b/trunk/incs.h index c355ca3..160ca82 100644 --- a/trunk/incs.h +++ b/trunk/incs.h @@ -12,6 +12,8 @@ #ifndef _incs_h_ #define _incs_h_ +#define _mcu_ + #include "jhl_defs.h" #include "user_define.h" diff --git a/trunk/jhl_defs.h b/trunk/jhl_defs.h index b1677d2..1c8afa1 100644 --- a/trunk/jhl_defs.h +++ b/trunk/jhl_defs.h @@ -2,9 +2,9 @@ #define __jhl_defs_h__ typedef unsigned char u8; -typedef char s8; +typedef signed char s8; typedef unsigned short u16; -typedef short s16; +typedef signed short s16; typedef unsigned char err; diff --git a/trunk/pedo_alg_thre_det2.c b/trunk/pedo_alg_thre_det2.c new file mode 100644 index 0000000..3253f31 --- /dev/null +++ b/trunk/pedo_alg_thre_det2.c @@ -0,0 +1,400 @@ +/* ******************************************************** + + + + +********************************************************* */ +#pragma MUL +#pragma BCD + +#include "incs.h" +#include + +#include "accero.h" +#include "pedometer.h" + + +static void hosu_increment(); +u16 get_long_hour(); + + + +extern u16 pool[]; + + + +/*========================================================= + 歩数計 + ========================================================*/ +void pedometer() +{ + static s16 th_H = 15500; // 閾値。暫定。動的変更とかしたい…ので変数 + static s16 th_L = 15000; + static u16 acc_norm[3]; // 加速度の大きさのヒストリ。数字が大きい方が古い + static u16 acc_norm_temp; + static u8 interval_hh; // 山-山間の時間。短過ぎたらはじく。 + static u8 time_l; // 前回の極小からの経過時間 + static u16 peak_l; // 谷の深さ + static u16 peak_h; // 山の高さ + static u16 norm_hist[TAP]; + + static u8 hist_indx; + static u8 t_rise; + + signed long filterd; + + u8 i; + + signed long temp1,temp2,temp3; + signed long temp4,temp5,temp6; + + u16 sx16 = abs( (u16)vreg_ctr[VREG_C_ACC_XH] * 256 + vreg_ctr[VREG_C_ACC_XL] ); + u16 sy16 = abs( (u16)vreg_ctr[VREG_C_ACC_YH] * 256 + vreg_ctr[VREG_C_ACC_YL] ); + u16 sz16 = abs( (u16)vreg_ctr[VREG_C_ACC_ZH] * 256 + vreg_ctr[VREG_C_ACC_ZL] ); + + // ベクトルのノルム +#ifdef _mcu_ + norm_hist[ hist_indx & TAP-1 ] = sqrt( (long)sx16 * ( sx16 / 2 ) + + (long)sy16 * ( sy16 / 2 ) + + (long)sz16 * ( sz16 / 2 ) + ); +#endif + +#ifdef _pc_ + norm_hist[ hist_indx & TAP-1 ] = normh * 256 + norml; +#endif + + hist_indx += 1; + + // ヒストリにフィルタを掛けて、今回の値を求める + filterd = 0; + for( i = 0; i != 64; i++ ) // 係数が0ばかりのため + { + filterd += (signed long)norm_hist[ ( hist_indx + i ) & TAP-1 ] * lpf_coeff[ i ]; + } + + filterd += (4096)*512; + acc_norm_temp = (s16)( filterd /1024 & 0xFFFF ); // ←FIL_COEFF_QUANTから正規化 +/* + if( acc_norm[0] < acc_norm_temp ) + { + t_rise += 1; + if( t_rise == 0 ) + t_rise == 254; + } + else + { + t_rise = 0; + } +*/ + if( acc_norm[0] != acc_norm_temp ) + { + acc_norm[2] = acc_norm[1]; // ヒストリ + acc_norm[1] = acc_norm[0]; + acc_norm[0] = acc_norm_temp; + } + + if( acc_norm[2] <= acc_norm[1] && acc_norm[1] > acc_norm[0] + && acc_norm[0] > th_H ) + // 極大で、閾値を超えていた + { + if( 21 < interval_hh ) + // 前回の極大からの間隔がほどよい + { + if(( interval_hh < 160 ) && ( time_l < interval_hh )) + // 谷を挟んでいる + { + if( acc_norm[0] - peak_l > 4200 ){ + // 一歩増えました + hosu_increment(); + } + } + interval_hh = 0; + } + if( acc_norm[0] > 18000 ) + { + th_L = acc_norm[0] - 6000; + } + else + { + th_L = acc_norm[0] - 3500; + } + } + else + { + interval_hh += ( interval_hh != 255 ) ? 1: 0; // 飽和加算って楽に書けたらいいのに + } + + // (2) 直近の極小からの時間 + if( acc_norm[2] >= acc_norm[1] && acc_norm[1] < acc_norm[0] + && acc_norm[0] < th_L ) + { + // 極小を検出 + time_l = 0; + peak_l = acc_norm[0]; + } + else + { + time_l += ( time_l != 255 ) ? 1: 0; + } + + { + static u8 i = 0; + + vreg_ctr[VREG_C_FREE_0] = i++; + + vreg_ctr[VREG_C_FREE_1] = (u8)( acc_norm[0] / 256 & 0x00FF ); + vreg_ctr[VREG_C_FREE_2] = (u8)( acc_norm[0] & 0x00FF ); + + vreg_ctr[VREG_C_FREE_3] = (u8)( norm_hist[ hist_indx -1 & TAP-1 ] / 256 & 0xFF ); + vreg_ctr[VREG_C_FREE_4] = (u8)( norm_hist[ hist_indx -1 & TAP-1 ] & 0xFF ); + + vreg_ctr[VREG_C_FREE_5] = interval_hh; + vreg_ctr[VREG_C_FREE_6] = time_l; + + vreg_ctr[VREG_C_FREE_7] = vreg_ctr[ VREG_C_ACC_HOSU_L ]; + vreg_ctr[VREG_C_FREE_8] = (u8)( peak_l / 256 & 0x00FF ); + vreg_ctr[VREG_C_FREE_9] = (u8)( peak_l & 0x00FF ); +// vreg_ctr[VREG_C_FREE_A] = (u8)( norm_avg[0] / 256 & 0x00FF ); + // vreg_ctr[VREG_C_FREE_B] = (u8)( norm_avg[0] & 0x00FF ); + } +} + + + +/*========================================================= + 歩数+1 +  累積をインクリメント +  履歴を更新 + ========================================================*/ +u8 p_record; +u8 last_hour = 0x23; // 履歴の最新は何時? +u8 last_day = 0x30; +u8 last_month = 0x12; +u8 last_year = 0x99; + +static void hosu_increment() +{ + static u16 last_hour_fny; + + // 累積の更新 // + // いろいろ失敗した... + 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_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; + } + } + } + + { + // 毎時履歴の更新 ///////////////////////////// + // 空白の時間を考慮する。1時間以上放置されたなど。 + u16 now_hour; + u8 now_year; + + // 時計を止める必要が有るので↓は一気に行って下さい + DI(); + RWAIT = 1; + while( !RWST ){;} + now_year = bcdtob( YEAR ); + last_hour = HOUR; // 履歴読み出し時に使用。BCDのままでよい + last_day = DAY; + last_month = MONTH; + now_hour = get_long_hour(); + // RWAIT = 0; ↑で行っています + // EI(); 〃 + + // 歩数計が止まっていた時間を考慮して必要なら進める // + if( last_year == now_year ) + { + if( now_hour > last_hour_fny ) + { + fill_hosu_hist_hours( now_hour - last_hour_fny ); + } + } + else if( last_year == ( now_year -1 ) ) + { + // 年をまたいでいるとき + u16 temp_hours = ( ( 365 + (( now_year & 0x03 ) == 1 ? 1: 0 )) * 24 ) - last_hour_fny + now_hour; + fill_hosu_hist_hours( temp_hours ); + } + else if( last_year < now_year ) + { + // 数年放置 + fill_hosu_hist_hours( 0 ); + } + else + { + // カレンダーが巻き戻るなど + // ノーケアでよい + } + last_year = now_year; + last_hour_fny = now_hour; + + // 実際にインクリメント + if( pool[ p_record ] != 0xFFFE ) + { + pool[ p_record ] += 1; + } + } +} + + + +/* ======================================================== +空白の時間を適切に0にして、 +今を含む1時間のデータを書く位置にポインタ?を進める +======================================================== */ +void fill_hosu_hist_hours( u16 hours ) +{ + if( hours > 255 ) + { + hours = 0; + } + + // 空白の数時間の設定 + do + { + p_record += 1; + pool[ p_record ] = 0; + hours -= 1; + } + while( hours != 0 ); +} + + + +/* ======================================================== +空白の時間を適切に0にして、 +今を含む1時間のデータを書く位置にポインタ?を進める +======================================================== */ +void clear_hosu_hist() +{ + u8 hours = 0; + // 空白の数時間の設定 + do + { + pool[ hours ] = 0xFFFF; + hours -= 1; + } + while( hours != 0 ); +} + + + +u8 hosu_read_state; +bit record_read_msb_lsb; + +/* ======================================================== + 歩数計ヒストリ読み出しの後処理(初期化) + 読み出しポインタのクリア +======================================================== */ +void hosu_read_end( ) +{ + record_read_msb_lsb = 0; + hosu_read_state = 0; +} + + +/* ======================================================== + 歩数計のヒストリを返す。 + 1回呼ぶ度に、ヒストリの下位、上位、一時間遡って下位上位... +======================================================== */ +u8 hosu_read( ) +{ + u8 dat; + u16 temp; + static u8 p_record_buffer; + + switch( hosu_read_state ){ + case( 0 ): + p_record_buffer = p_record; + hosu_read_state += 1; + return( last_hour ); + + case( 1 ): + hosu_read_state += 1; + return( last_day ); + + case( 2 ): + hosu_read_state += 1; + return( last_month ); + + case( 3 ): + hosu_read_state += 1; + return( btobcd(last_year) ); + + case( 4 ): + hosu_read_state += 1; + return( 0x55 ); // reserved dummy + + case( 5 ): + hosu_read_state += 1; + return( 0xAA ); // reserved. dummy + + default: + temp = pool[ p_record_buffer ]; + if( record_read_msb_lsb == 0 ) + { + dat = (u8)( temp & 0x00FF ); + } + else + { + dat = (u8)(( temp >> 8 ) & 0x00FF ); + p_record_buffer -= 1; + } + record_read_msb_lsb += 1; + return( dat ); + } +} + + + +/* ======================================================== + 今年の元旦からの経過時間(hour)を返す。 + 引数 無し + 返値 u16 long_hour +======================================================== */ +static const u16 DAYS_FROM_HNY[] = { + 0, + 0, 31, 31+28, 59+31, 90+30, + 120+31, 151+30, 181+31, 212+31, 243+30, + 273+31, 304+30 }; + +u16 get_long_hour() +{ + u16 long_hour; + u8 year_hex; + u8 month_hex; + u8 day_hex; + u8 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 - 1; + long_hour *= 24; // 日数→時間 + + long_hour += hour_hex; + + return( long_hour ); +} + diff --git a/trunk/pedometer.h b/trunk/pedometer.h new file mode 100644 index 0000000..5c25ec9 --- /dev/null +++ b/trunk/pedometer.h @@ -0,0 +1,96 @@ +#ifndef _pedo_ +#define _pedo_ + + +void hosu_read_end( ); +u8 hosu_read( ); +void fill_hosu_hist_hours( u16 ); +void clear_hosu_hist(); + + +// ========================================================= +#define TAP 64 +#define FIL_COEFF_QUANT 10 +static const s8 lpf_coeff[]={ +/* +Window Function Algorithm LPF +Sampling Frequency = 100.0 +cutoff1 = 6.0000000 +Tap Count =64 +Kaiser Constant = 7.000000 +Quantized by 11 [bits] + */ + 0,// [0] + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1,// 8 + 2, + 2, + 3, + 3, + 2, + 0, + -2, + -5,// 16 + -9, + -13, + -16, + -16, + -13, + -6, + 4, + 18,// 24 + 37, + 56, + 77, + 95, + 110, + 119, + 122, + 119,// 32 + 110, + 95, + 77, + 56, + 37, + 18, + 4, + -6,// 40 + -13, + -16, + -16, + -13, + -9, + -5, + -2, + 0,// 48 + 2, + 3, + 3, + 2, + 2, + 1, + 0, + 0,// 56 + 0, + 0, + 0, + 0, + 0, + 0, + 0 +}; +// */ + +// ========================================================= + +void pedometer(); +static void hosu_increment(); + + +#endif diff --git a/trunk/pm.c b/trunk/pm.c index 877de4b..5220631 100644 --- a/trunk/pm.c +++ b/trunk/pm.c @@ -527,7 +527,7 @@ err PM_sys_pow_on( ) // 残量確認 temp = 99; - if( temp < ( 255 * 0.03 ) ) + if( temp < 5 ) { return ( ERR_ERR ); } diff --git a/trunk/pm.h b/trunk/pm.h index 179884e..f13fe17 100644 --- a/trunk/pm.h +++ b/trunk/pm.h @@ -124,9 +124,8 @@ task_status_immed tski_PM_BL_set(); #define PM_off() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_VDD_SYS, 0 )) #ifdef _model_CTR_ -#define PM_VDD_ecoMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, 0x27 )) -#define PM_VDD_normMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, 0x00 )) -// todo コア電圧を下げる +#define PM_VDD_normMode() ( iic_mcu_write_a_byte( IIC_SLA_PMIC, PM_REG_ADRS_POW_SAVE, PM_REG_BIT_VDD1P_1R15 | PM_REG_BIT_VDD_PWM )) +#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 )) #else // 本番チップ待ち @@ -135,9 +134,7 @@ task_status_immed tski_PM_BL_set(); #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 - -//#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 )) -#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_PWM )) +#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 )) #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 diff --git a/trunk/renge/renge_defs.h b/trunk/renge/renge_defs.h index 559cd1f..bf0bb48 100644 --- a/trunk/renge/renge_defs.h +++ b/trunk/renge/renge_defs.h @@ -12,18 +12,15 @@ 大きく育ってね! ******************************************************************************/ -/* -#include "jhl_defs.h" -/*/ -typedef unsigned char u8; -typedef char s8; -typedef unsigned short u16; -typedef short s16; +typedef unsigned char u8; +typedef signed char s8; +typedef unsigned short u16; +typedef signed short s16; + +typedef unsigned char err; + -typedef unsigned char err; -//*/ - // ************************************ #define SYS_INTERVAL_TICK 1.953 @@ -41,7 +38,7 @@ typedef enum{ ERR_CONTINUE }IMMED_TASK_ERR; - + /************************************** インターバル起動 diff --git a/trunk/sw.c b/trunk/sw.c index 5fa6471..c9f744a 100644 --- a/trunk/sw.c +++ b/trunk/sw.c @@ -94,16 +94,24 @@ void tsk_sw( ) { if( ( CLICK_THRESHOLD < SW_pow_count ) && ( SW_pow_count <= HOLD_THREASHOLD ) ) { +#ifdef _SW_HOME_ENABLE_ set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_CLICK ); +#else + set_irq( VREG_C_IRQ0, REG_BIT_SW_HOME_CLICK ); +#endif } } else if( SW_pow_count == HOLD_THREASHOLD ) { +#ifdef _SW_HOME_ENABLE_ set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_HOLD ); +#else + set_irq( VREG_C_IRQ0, REG_BIT_SW_HOME_HOLD ); +#endif } else if( SW_pow_count == ( HOLD_THREASHOLD * 4 ) ) { // todo -// vreg_ctr[ VREG_C_LED_POW ] = LED_POW_ONLY_RED; + vreg_ctr[ VREG_C_LED_POW ] = LED_POW_ILM_ONLY_RED; system_status.pwr_state = OFF_TRIG; renge_task_interval_run_force = 1; } @@ -114,8 +122,9 @@ void tsk_sw( ) cnt_force_off += 1; if( cnt_force_off >= 13 ) { // …返事がない。強制的に切る。 - system_status.pwr_state = OFF_TRIG; - renge_task_interval_run_force = 1; + vreg_ctr[ VREG_C_LED_POW ] = LED_POW_ILM_ONLY_RED; + system_status.pwr_state = OFF_TRIG; + renge_task_interval_run_force = 1; } } else @@ -154,7 +163,7 @@ if( ( system_status.pwr_state == ON ) { count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); -#ifdef _SW_HOME_ENABLE_ +#ifdef _SW_HOME_ENABLE_ count_sw_n( SW_HOME_n, SW_home_count, SW_home_mask ); #endif count_sw_n( SW_WIFI_n, SW_wifi_count, SW_wifi_mask ); diff --git a/trunk/task_debug.c b/trunk/task_debug.c index 935930f..f58c2fc 100644 --- a/trunk/task_debug.c +++ b/trunk/task_debug.c @@ -49,10 +49,9 @@ void tsk_debug2( ) str[1] = vreg_ctr[ VREG_C_STATUS ]; str[0] = vreg_ctr[ VREG_C_RTC_SEC ]; */ - str[3] = vreg_ctr[ VREG_C_DBG1 ]; - str[2] = vreg_ctr[ VREG_C_DBG2 ]; - str[1] = vreg_ctr[ VREG_C_IRQ2 ]; -// str[1] = MIN; + str[3] = vreg_ctr[ VREG_C_SND_VOL ]; + str[2] = vreg_ctr[ VREG_C_TUNE ]; + str[1] = vreg_ctr[ VREG_C_ACC_CONFIG ]; str[0] = SEC; // iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 2, vreg_ctr[ VREG_C_IRQ1 ] ); @@ -71,6 +70,7 @@ void tsk_debug2( ) } + #if 0 /* ======================================================== タスクひな形 diff --git a/trunk/task_sys.c b/trunk/task_sys.c index 1ccca51..04de660 100644 --- a/trunk/task_sys.c +++ b/trunk/task_sys.c @@ -12,6 +12,7 @@ #include "pm.h" #include "rtc.h" #include "sw.h" +#include "adc.h" @@ -131,6 +132,9 @@ void tsk_sys( ) system_status.poweron_reason = NONE; renge_task_interval_run_force = 1; + vreg_ctr[ VREG_C_SND_VOL ] = 0xFF; + vol_old = 0xFF; // volの値を書く。CODECは忘れてしまうため。 + MK0 = INT_MSK0_RSV; MK1 = INT_MSK1_RSV; #ifdef _MCU_BSR_ diff --git a/trunk/user_define.h b/trunk/user_define.h index 2e123cd..3130bac 100644 --- a/trunk/user_define.h +++ b/trunk/user_define.h @@ -3,7 +3,7 @@ #define IIC_SLV_ADDR_MONITOR 0x6E #define IIC_T_SLAVEADDRESS 0x4A -#define IIC_C_SLAVEADDRESS 0x4A +#define IIC_C_SLAVEADDRESS 0x4A #define IIC_SLA_DCP 0x50 @@ -22,8 +22,8 @@ #endif #ifdef _debug_led_ -#define DBG_LED_WIFI_2_on ( P2.4 = 1 ) -#define DBG_LED_WIFI_2_off ( P2.4 = 0 ) +#define DBG_LED_WIFI_2_on { PM2.4 = 0; P2.4 = 1; } +#define DBG_LED_WIFI_2_off { PM2.4 = 1; P2.4 = 0; } #define DBG_LED_WIFI_2_toggle ( P2.4 ^= 1 ) #else @@ -194,7 +194,7 @@ #define ACCEL_INT1 P2.5 #endif -#ifdef _MODEL_TS0_ +#ifdef _MODEL_TS0_ || _MODEL_CTR_ #define ACC_VALID P20.5 #define ACCEL_INT1 P2.5 #endif @@ -205,6 +205,11 @@ #define ACCEL_INT1 P2.5 #endif +#ifdef _MODEL_CTR_ +#define ACC_VALID P20.5 +#define ACCEL_INT1 P2.5 +#endif + #define DBG_M_n P2.1 diff --git a/trunk/vreg_ctr.c b/trunk/vreg_ctr.c index f4d92b6..4f11bb3 100644 --- a/trunk/vreg_ctr.c +++ b/trunk/vreg_ctr.c @@ -40,10 +40,10 @@ void vreg_ctr_init( ) vreg_ctr[VREG_C_MCU_VER_MAJOR] = MCU_VER_MAJOR; #ifdef _MODEL_WM0_ - vreg_ctr[VREG_C_MCU_VER_MAJOR] += 0x20; + vreg_ctr[VREG_C_MCU_VER_MAJOR] |= 0x20; #endif #ifdef _MODEL_TS0_ - vreg_ctr[VREG_C_MCU_VER_MAJOR] += 0x10; + vreg_ctr[VREG_C_MCU_VER_MAJOR] |= 0x10; #endif vreg_ctr[VREG_C_MCU_VER_MINOR] = MCU_VER_MINOR; @@ -64,6 +64,9 @@ void vreg_ctr_init( ) // を使用しないと、I2C_mcu使用中でエラー終了した場合にリトライしません。 void vreg_ctr_write( u8 adrs, u8 data ) { + if( adrs >= VREG_C_ENDMARK_ ) + return; + switch ( adrs ) { @@ -147,10 +150,29 @@ void vreg_ctr_write( u8 adrs, u8 data ) } break; - case ( VREG_C_FREE0 ): - case ( VREG_C_FREE1 ): - case ( VREG_C_FREE2 ): - case ( VREG_C_FREE3 ): + case ( VREG_C_DBG20 ): + case ( VREG_C_DBG21 ): + case ( VREG_C_DBG22 ): + case ( VREG_C_DBG23 ): + vreg_ctr[adrs] = data; + break; + + case ( VREG_C_FREE_0 ): + case ( VREG_C_FREE_1 ): + case ( VREG_C_FREE_2 ): + case ( VREG_C_FREE_3 ): + case ( VREG_C_FREE_4 ): + case ( VREG_C_FREE_5 ): + case ( VREG_C_FREE_6 ): + case ( VREG_C_FREE_7 ): + case ( VREG_C_FREE_8 ): + case ( VREG_C_FREE_9 ): + case ( VREG_C_FREE_A ): + case ( VREG_C_FREE_B ): + case ( VREG_C_FREE_C ): + case ( VREG_C_FREE_D ): + case ( VREG_C_FREE_E ): + case ( VREG_C_FREE_F ): vreg_ctr[adrs] = data; break; @@ -296,15 +318,15 @@ u8 vreg_ctr_read( u8 adrs ) { return( hosu_read() ); } - else if( adrs == VREG_C_ACC_DBG_E ) + else if( adrs == VREG_C_RTC_SEC_FINE_L ) { rsub_temp = RSUBC; - return( (u8)( ( rsub_temp >> 8 ) & 0xFF ) ); - } - else if( adrs == VREG_C_ACC_DBG_F ) - { return( (u8)( rsub_temp & 0xFF ) ); } + else if( adrs == VREG_C_RTC_SEC_FINE_H ) + { + return( (u8)( ( rsub_temp >> 8 ) & 0xFF ) ); + } #if 1 if( adrs >= VREG_C_ENDMARK_ ) diff --git a/trunk/vreg_ctr.h b/trunk/vreg_ctr.h index 899280c..987b2a9 100644 --- a/trunk/vreg_ctr.h +++ b/trunk/vreg_ctr.h @@ -40,10 +40,10 @@ #define REG_BIT_SHELL_OPEN ( 1 << 6 ) #define REG_BIT_SHELL_CLOSE ( 1 << 5 ) #define REG_BIT_SW_WIFI_CLICK ( 1 << 4 ) -#define REG_BIT_SW_POW_HOLD ( 1 << 3 ) -#define REG_BIT_SW_POW_CLICK ( 1 << 2 ) -#define REG_BIT_SW_HOME_HOLD ( 1 << 1 ) -#define REG_BIT_SW_HOME_CLICK ( 1 << 0 ) +#define REG_BIT_SW_HOME_HOLD ( 1 << 3 ) +#define REG_BIT_SW_HOME_CLICK ( 1 << 2 ) +#define REG_BIT_SW_POW_HOLD ( 1 << 1 ) +#define REG_BIT_SW_POW_CLICK ( 1 << 0 ) // VREG_C_IRQ1 #define REG_BIT_BT_CHG_START ( 1 << 7 ) @@ -182,10 +182,10 @@ enum VREG_C VREG_C_COMMAND2, VREG_C_COMMAND3, // 'r' でマイコンリセット - VREG_C_FREE0 = 0x24, - VREG_C_FREE1, - VREG_C_FREE2, - VREG_C_FREE3, + VREG_C_DBG20 = 0x24, + VREG_C_DBG21, + VREG_C_DBG22, + VREG_C_DBG23, VREG_C_LED_BRIGHT = 0x28, VREG_C_LED_POW, @@ -210,6 +210,9 @@ enum VREG_C VREG_C_RTC_ALARM_MONTH, VREG_C_RTC_ALARM_YEAR, + VREG_C_RTC_SEC_FINE_L, + VREG_C_RTC_SEC_FINE_H, + VREG_C_ACC_CONFIG = 0x40, VREG_C_ACC_R_ADRS, VREG_C_ACC_RESERVE, @@ -232,22 +235,22 @@ enum VREG_C // VREG_C_AMBIENT_BRIGHTNESS = 0x60, // 歩数計の評価のため... - VREG_C_ACC_DBG_0 = 0x50, - VREG_C_ACC_DBG_1, - VREG_C_ACC_DBG_2, - VREG_C_ACC_DBG_3, - VREG_C_ACC_DBG_4, - VREG_C_ACC_DBG_5, - VREG_C_ACC_DBG_6, - VREG_C_ACC_DBG_7, - VREG_C_ACC_DBG_8, - VREG_C_ACC_DBG_9, - VREG_C_ACC_DBG_A, - VREG_C_ACC_DBG_B, - VREG_C_ACC_DBG_C, - VREG_C_ACC_DBG_D, - VREG_C_ACC_DBG_E, - VREG_C_ACC_DBG_F, + VREG_C_FREE_0 = 0x50, + VREG_C_FREE_1, + VREG_C_FREE_2, + VREG_C_FREE_3, + VREG_C_FREE_4, + VREG_C_FREE_5, + VREG_C_FREE_6, + VREG_C_FREE_7, + VREG_C_FREE_8, + VREG_C_FREE_9, + VREG_C_FREE_A, + VREG_C_FREE_B, + VREG_C_FREE_C, + VREG_C_FREE_D, + VREG_C_FREE_E, + VREG_C_FREE_F, VREG_C_ENDMARK_ diff --git a/trunk/vreg_twl.c b/trunk/vreg_twl.c index bcb548b..2a162c5 100644 --- a/trunk/vreg_twl.c +++ b/trunk/vreg_twl.c @@ -12,8 +12,7 @@ TWL // ======================================================== #define TWL_REG_VER_INFO 0x35 - - +#define NON_EXIST_REG 0xFF // ======================================================== u8 vreg_twl[_REG_TWL_INT_ADRS_ENDMARK]; @@ -51,7 +50,6 @@ void vreg_twl_write( u8 adrs, u8 data ) tsk_led_cam(); // todo 大丈夫? break; - case ( REG_TWL_INT_ADRS_WIFI ): case ( REG_TWL_INT_ADRS_TEMP0 ): vreg_twl[adrs] = data; break; @@ -120,7 +118,7 @@ u8 vreg_twl_read( u8 phy_adrs ) default: return( vreg_twl[ phy_adrs ] ); - case( 0xFF ): + case( REG_TWL_ADRS_NON_EXIST ): return( 0x00 ); } } @@ -136,12 +134,13 @@ u8 adrs_table_twl_ext2int( u8 img ) case( REG_TWL_ADRS_IRQ ): return( REG_TWL_INT_ADRS_IRQ ); case( REG_TWL_ADRS_COMMAND ): return( REG_TWL_INT_ADRS_COMMAND ); case( REG_TWL_ADRS_POWER_INFO ): return( REG_TWL_INT_ADRS_POWER_INFO ); - case( REG_TWL_ADRS_WIFI ): return( REG_TWL_INT_ADRS_WIFI ); case( REG_TWL_ADRS_CAM ): return( REG_TWL_INT_ADRS_CAM ); case( REG_TWL_ADRS_VOL ): return( REG_TWL_INT_ADRS_VOL ); case( REG_TWL_ADRS_TEMP0 ): return( REG_TWL_INT_ADRS_TEMP0 ); case( REG_TWL_ADRS_VER_INFO ): return( REG_TWL_INT_ADRS_VER_INFO ); case( REG_TWL_ADRS_MODE ): return( REG_TWL_INT_ADRS_MODE ); - default: return( 0xFF ); + default: return( REG_TWL_ADRS_NON_EXIST ); +// 0が読めればよい、書けなくて良い +// case( REG_TWL_ADRS_WIFI ): return( REG_TWL_INT_ADRS_WIFI ); } } diff --git a/trunk/vreg_twl.h b/trunk/vreg_twl.h index 19d8bd8..a1325d8 100644 --- a/trunk/vreg_twl.h +++ b/trunk/vreg_twl.h @@ -52,6 +52,7 @@ enum REG_TWL_ADRS REG_TWL_ADRS_TIME_PWSW_THRESHOLD }; +#define REG_TWL_ADRS_NON_EXIST 0xFF /* * マイコン内部でのレジスタの実装 @@ -67,7 +68,7 @@ enum REG_TWL_ADRS_INT REG_TWL_INT_ADRS_MODE, REG_TWL_INT_ADRS_POWER_INFO, // 0x20, // REG_TWL_INT_ADRS_POWER_SAVE, - REG_TWL_INT_ADRS_WIFI, // 0x30, +// REG_TWL_INT_ADRS_WIFI, // 0x30, REG_TWL_INT_ADRS_CAM, REG_TWL_INT_ADRS_VOL, // 0x40, // REG_TWL_INT_ADRS_BL, @@ -92,7 +93,6 @@ enum REG_TWL_ADRS_INT - /* ========================================================================= */ #define is_TWL ( vregs[ REG_TWL_INT_ADRS_MODE ] & 0x01 ) #define with_NAND ( vregs[ REG_TWL_INT_ADRS_MODE ] & 0x02 ) diff --git a/trunk/yav_mcu_bsr.plg b/trunk/yav_mcu_bsr.plg index b99f447..dae25d1 100644 --- a/trunk/yav_mcu_bsr.plg +++ b/trunk/yav_mcu_bsr.plg @@ -1,13 +1,14 @@ 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 -quvjl3wt -sainter_asm -zp -no i2c_ctr.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\i2c_ctr.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 -quvjl3wt -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 -qvjl3wt -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\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 -gb7EFBFFh -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 +"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 -qvjl3wt -sainter_asm -zp -no task_sys.c +task_sys.c(328) : CC78K0R warning W0401: Conversion may lose significant digits +Compilation complete, 0 error(s) and 1 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\task_sys.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 -gb7EFBFFh -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 pedo_alg_thre_det2.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. @@ -17,4 +18,4 @@ intel-HEX to bsr bin converter file converted! -Build Total error(s) : 0 Total warning(s) : 0 +Build Total error(s) : 0 Total warning(s) : 1 diff --git a/trunk/yav_mcu_bsr.pri b/trunk/yav_mcu_bsr.pri index ba0b93b..8bf559d 100644 --- a/trunk/yav_mcu_bsr.pri +++ b/trunk/yav_mcu_bsr.pri @@ -7,14 +7,14 @@ Internal Rom=32KB Internal Ram=1536B Clock=Target Sub Clock=Target -Peripheral Break=0x2 +Peripheral Break=0x3 Firm Clock=System Flash Programming=Permit Low-voltage Flash Rewriting=On Fail Safe Break=0x2000 Port=1 NMI=OFF -TRESET=ON +TRESET=OFF IRESET=OFF WAIT=OFF SysClock=None @@ -22,7 +22,7 @@ SubClock=None [Mapping] Count=0 [Main] -Geometry=113, 17, 1467, 1110 +Geometry=110, 110, 1200, 882 Window=Max MDI_MAX=OFF Button=ON @@ -36,7 +36,7 @@ Tracer=OFF Dir=. SaveFilter=0 Start=0 -End=1000 +End=0 LoadFilter=5 Offset=0 Object=ON @@ -58,7 +58,7 @@ Symbol Reset1=ON Dir=. Filter=Source [Debugger Option] -Source Path="renge" +Source Path=".;renge" Symbol Size=Byte Symbol Format=Hex Register Name=Func @@ -78,10 +78,10 @@ Symbol Type=OFF Language=C Kanji=SJIS [Source] -Geometry=43, 209, 1012, 920 +Geometry=389, 53, 673, 1042 Window=Normal -DispStart=276 -CaretPos=277,0 +DispStart=37 +CaretPos=95,0 Mode=Normal DispFile= Address1= @@ -140,10 +140,10 @@ SaveStart= SaveEnd= Accumulative=ON [Assemble] -Geometry=605, 2, 600, 400 +Geometry=24, 657, 600, 400 Window=Normal -DispStart=17244 -CaretPos=17226,27 +DispStart=685 +CaretPos=685,27 Address1= Address2= Address3= @@ -185,18 +185,18 @@ SaveRange=Screen SaveStart= SaveEnd= [Memory] -Geometry=592, 111, 550, 1012 -Window=Normal -Boundary=163 +Geometry=0, 0, 0, 0 +Window=Hide +Boundary=0 Format=Hex Mode=Byte -Endian=Little +Endian= Ascii=OFF Idtag=OFF Address= -DispStart=00007C20 -CaretPosData=0, 1986 -CaretPosAscii=3, 1986 +DispStart=FFFFFFFF +CaretPosData=0, 0 +CaretPosAscii=0, 0 Address1= Address2= Address3= @@ -251,13 +251,13 @@ Destination=0 [I/O Port] Line=0 [Stack] -Geometry=1102, 382, 400, 300 -Window=Normal -Boundary=13762687 +Geometry=0, 0, 0, 0 +Window=Hide +Boundary=0 Mode=Proper [Sfr] -Geometry=-3, -6, 457, 827 -Window=Normal +Geometry=0, 0, 0, 0 +Window=Hide Address1= Address2= Address3= @@ -274,14 +274,14 @@ Address13= Address14= Address15= Address16= -Boundary=202, 89 -Mode=Bin +Boundary=0, 0 +Mode=Hex Attribute=Show Sort=Unsort Pickup=OFF SelectSort=Address -Last Name=P0 -Line=429 +Last Name= +Line=531 L1=P0 L2=P1 L3=P2 @@ -327,390 +327,492 @@ L42=SIO10 L43=TXD1 L44=SDR03 L45=RXD1 -L46=TDR02 -L47=TDR03 -L48=TDR04 -L49=TDR05 -L50=TDR06 -L51=TDR07 -L52=RSUBC -L53=SEC -L54=MIN -L55=HOUR -L56=WEEK -L57=DAY -L58=MONTH -L59=YEAR -L60=SUBCUD -L61=ALARMWM -L62=ALARMWH -L63=ALARMWW -L64=RTCC0 -L65=RCLOE0 -L66=RCLOE1 -L67=RTCE -L68=RTCC1 -L69=RWAIT -L70=RWST -L71=RIFG -L72=WAFG -L73=WALIE -L74=WALE -L75=RTCC2 -L76=RCKDIV -L77=RCLOE2 -L78=RINTE -L79=CMC -L80=CSC -L81=HIOSTOP -L82=XTSTOP -L83=MSTOP -L84=OSTC -L85=OSTS -L86=CKC -L87=MCM0 -L88=MCS -L89=CSS -L90=CLS -L91=CKS0 -L92=PCLOE0 -L93=CKS1 -L94=PCLOE1 -L95=RESF -L96=LVIM -L97=LVIF -L98=LVIMD -L99=LVISEL -L100=LVION -L101=LVIS -L102=WDTE -L103=DSA0 -L104=DSA1 -L105=DRA0 -L106=DRA0L -L107=DRA0H -L108=DRA1 -L109=DRA1L -L110=DRA1H -L111=DBC0 -L112=DBC0L -L113=DBC0H -L114=DBC1 -L115=DBC1L -L116=DBC1H -L117=DMC0 -L118=DWAIT0 -L119=DS0 -L120=DRS0 -L121=STG0 -L122=DMC1 -L123=DWAIT1 -L124=DS1 -L125=DRS1 -L126=STG1 -L127=DRC0 -L128=DST0 -L129=DEN0 -L130=DRC1 -L131=DST1 -L132=DEN1 -L133=BECTL -L134=FLMDPUP -L135=PFCMD -L136=PFS -L137=FPRERR -L138=FLPMC -L139=BFAEN -L140=FWEPR -L141=BRAMEN -L142=IF2 -L143=IF2L -L144=TMIF05 -L145=TMIF06 -L146=TMIF07 -L147=PIF6 -L148=MK2 -L149=MK2L -L150=TMMK05 -L151=TMMK06 -L152=TMMK07 -L153=PMK6 -L154=PR02 -L155=PR02L -L156=TMPR005 -L157=TMPR006 -L158=TMPR007 -L159=PPR06 -L160=PR12 -L161=PR12L -L162=TMPR105 -L163=TMPR106 -L164=TMPR107 -L165=PPR16 -L166=IF0 -L167=IF0L -L168=WDTIIF -L169=LVIIF -L170=PIF0 -L171=PIF1 -L172=PIF2 -L173=PIF4 -L174=PIF5 -L175=IF0H -L176=DMAIF0 -L177=DMAIF1 -L178=CSIIF00 -L179=STIF0 -L180=CSIIF01 -L181=SRIF0 -L182=SREIF0 -L183=IF1 -L184=IF1L -L185=CSIIF10 -L186=IICIF10 -L187=STIF1 -L188=SRIF1 -L189=SREIF1 -L190=TMIF00 -L191=TMIF01 -L192=TMIF02 -L193=TMIF03 -L194=IF1H -L195=ADIF -L196=RTCIF -L197=RTCIIF -L198=KRIF -L199=MDIF -L200=TMIF04 -L201=MK0 -L202=MK0L -L203=WDTIMK -L204=LVIMK -L205=PMK0 -L206=PMK1 -L207=PMK2 -L208=PMK4 -L209=PMK5 -L210=MK0H -L211=DMAMK0 -L212=DMAMK1 -L213=CSIMK00 -L214=STMK0 -L215=CSIMK01 -L216=SRMK0 -L217=SREMK0 -L218=MK1 -L219=MK1L -L220=CSIMK10 -L221=IICMK10 -L222=STMK1 -L223=SRMK1 -L224=SREMK1 -L225=TMMK00 -L226=TMMK01 -L227=TMMK02 -L228=TMMK03 -L229=MK1H -L230=ADMK -L231=RTCMK -L232=RTCIMK -L233=KRMK -L234=MDMK -L235=TMMK04 -L236=PR00 -L237=PR00L -L238=WDTIPR0 -L239=LVIPR0 -L240=PPR00 -L241=PPR01 -L242=PPR02 -L243=PPR04 -L244=PPR05 -L245=PR00H -L246=DMAPR00 -L247=DMAPR01 -L248=CSIPR000 -L249=STPR00 -L250=CSIPR001 -L251=SRPR00 -L252=SREPR00 -L253=PR01 -L254=PR01L -L255=CSIPR010 -L256=IICPR010 -L257=STPR01 -L258=SRPR01 -L259=SREPR01 -L260=TMPR000 -L261=TMPR001 -L262=TMPR002 -L263=TMPR003 -L264=PR01H -L265=ADPR0 -L266=RTCPR0 -L267=RTCIPR0 -L268=KRPR0 -L269=MDPR0 -L270=TMPR004 -L271=PR10 -L272=PR10L -L273=WDTIPR1 -L274=LVIPR1 -L275=PPR10 -L276=PPR11 -L277=PPR12 -L278=PPR14 -L279=PPR15 -L280=PR10H -L281=DMAPR10 -L282=DMAPR11 -L283=CSIPR100 -L284=STPR10 -L285=CSIPR101 -L286=SRPR10 -L287=SREPR10 -L288=PR11 -L289=PR11L -L290=CSIPR110 -L291=IICPR110 -L292=STPR11 -L293=SRPR11 -L294=SREPR11 -L295=TMPR100 -L296=TMPR101 -L297=TMPR102 -L298=TMPR103 -L299=PR11H -L300=ADPR1 -L301=RTCPR1 -L302=RTCIPR1 -L303=KRPR1 -L304=MDPR1 -L305=TMPR104 -L306=MDAL -L307=MULA -L308=MDAH -L309=MULB -L310=MDBH -L311=MULOH -L312=MDBL -L313=MULOL -L314=PMC -L315=MAA -L316=ADPC -L317=PU0 -L318=PU1 -L319=PU3 -L320=PU4 -L321=PU5 -L322=PU7 -L323=PU12 -L324=PU14 -L325=PIM3 -L326=PIM7 -L327=POM3 -L328=POM7 -L329=NFEN0 -L330=NFEN1 -L331=NFEN2 -L332=MDCL -L333=MDCH -L334=MDUC -L335=DIVST -L336=DIVMODE -L337=PER0 -L338=SAU0EN -L339=ADCEN -L340=RTCEN -L341=PER2 -L342=TAU0EN -L343=OSMC -L344=BCDADJ -L345=SSR00 -L346=SSR00L -L347=SSR01 -L348=SSR01L -L349=SSR02 -L350=SSR02L -L351=SSR03 -L352=SSR03L -L353=SIR00 -L354=SIR00L -L355=SIR01 -L356=SIR01L -L357=SIR02 -L358=SIR02L -L359=SIR03 -L360=SIR03L -L361=SMR00 -L362=SMR01 -L363=SMR02 -L364=SMR03 -L365=SCR00 -L366=SCR01 -L367=SCR02 -L368=SCR03 -L369=SE0 -L370=SE0L -L371=SS0 -L372=SS0L -L373=ST0 -L374=ST0L -L375=SPS0 -L376=SPS0L -L377=SO0 -L378=SOE0 -L379=SOE0L -L380=SOL0 -L381=SOL0L -L382=TCR00 -L383=TCR01 -L384=TCR02 -L385=TCR03 -L386=TCR04 -L387=TCR05 -L388=TCR06 -L389=TCR07 -L390=TMR00 -L391=TMR01 -L392=TMR02 -L393=TMR03 -L394=TMR04 -L395=TMR05 -L396=TMR06 -L397=TMR07 -L398=TSR00 -L399=TSR00L -L400=TSR01 -L401=TSR01L -L402=TSR02 -L403=TSR02L -L404=TSR03 -L405=TSR03L -L406=TSR04 -L407=TSR04L -L408=TSR05 -L409=TSR05L -L410=TSR06 -L411=TSR06L -L412=TSR07 -L413=TSR07L -L414=TE0 -L415=TE0L -L416=TS0 -L417=TS0L -L418=TT0 -L419=TT0L -L420=TPS0 -L421=TPS0L -L422=TO0 -L423=TO0L -L424=TOE0 -L425=TOE0L -L426=TOL0 -L427=TOL0L -L428=TOM0 -L429=TOM0L +L46=IICA0 +L47=IICS0 +L48=SPD0 +L49=STD0 +L50=ACKD0 +L51=TRC0 +L52=COI0 +L53=EXC0 +L54=ALD0 +L55=MSTS0 +L56=IICF0 +L57=IICRSV0 +L58=STCEN0 +L59=IICBSY0 +L60=STCF0 +L61=TDR02 +L62=TDR03 +L63=TDR04 +L64=TDR05 +L65=TDR06 +L66=TDR07 +L67=RSUBC +L68=SEC +L69=MIN +L70=HOUR +L71=WEEK +L72=DAY +L73=MONTH +L74=YEAR +L75=SUBCUD +L76=ALARMWM +L77=ALARMWH +L78=ALARMWW +L79=RTCC0 +L80=RCLOE0 +L81=RCLOE1 +L82=RTCE +L83=RTCC1 +L84=RWAIT +L85=RWST +L86=RIFG +L87=WAFG +L88=WALIE +L89=WALE +L90=RTCC2 +L91=RCKDIV +L92=RCLOE2 +L93=RINTE +L94=CMC +L95=CSC +L96=HIOSTOP +L97=XTSTOP +L98=MSTOP +L99=OSTC +L100=OSTS +L101=CKC +L102=MCM0 +L103=MCS +L104=CSS +L105=CLS +L106=CKS0 +L107=PCLOE0 +L108=CKS1 +L109=PCLOE1 +L110=RESF +L111=LVIM +L112=LVIF +L113=LVIMD +L114=LVISEL +L115=LVION +L116=LVIS +L117=WDTE +L118=DSA0 +L119=DSA1 +L120=DRA0 +L121=DRA0L +L122=DRA0H +L123=DRA1 +L124=DRA1L +L125=DRA1H +L126=DBC0 +L127=DBC0L +L128=DBC0H +L129=DBC1 +L130=DBC1L +L131=DBC1H +L132=DMC0 +L133=DWAIT0 +L134=DS0 +L135=DRS0 +L136=STG0 +L137=DMC1 +L138=DWAIT1 +L139=DS1 +L140=DRS1 +L141=STG1 +L142=DRC0 +L143=DST0 +L144=DEN0 +L145=DRC1 +L146=DST1 +L147=DEN1 +L148=BECTL +L149=FLMDPUP +L150=PFCMD +L151=PFS +L152=FPRERR +L153=FLPMC +L154=BFAEN +L155=FWEPR +L156=BRAMEN +L157=IF2 +L158=IF2L +L159=TMIF05 +L160=TMIF06 +L161=TMIF07 +L162=PIF6 +L163=IF2H +L164=IICAIF1 +L165=PIF20 +L166=PIF21 +L167=PIF22 +L168=PIF23 +L169=MK2 +L170=MK2L +L171=TMMK05 +L172=TMMK06 +L173=TMMK07 +L174=PMK6 +L175=MK2H +L176=IICAMK1 +L177=PMK20 +L178=PMK21 +L179=PMK22 +L180=PMK23 +L181=PR02 +L182=PR02L +L183=TMPR005 +L184=TMPR006 +L185=TMPR007 +L186=PPR06 +L187=PR02H +L188=IICAPR01 +L189=PPR020 +L190=PPR021 +L191=PPR022 +L192=PPR023 +L193=PR12 +L194=PR12L +L195=TMPR105 +L196=TMPR106 +L197=TMPR107 +L198=PPR16 +L199=PR12H +L200=IICAPR11 +L201=PPR120 +L202=PPR121 +L203=PPR122 +L204=PPR123 +L205=IF0 +L206=IF0L +L207=WDTIIF +L208=LVIIF +L209=PIF0 +L210=PIF1 +L211=PIF2 +L212=PIF4 +L213=PIF5 +L214=IF0H +L215=DMAIF0 +L216=DMAIF1 +L217=CSIIF00 +L218=STIF0 +L219=CSIIF01 +L220=SRIF0 +L221=SREIF0 +L222=IF1 +L223=IF1L +L224=CSIIF10 +L225=IICIF10 +L226=STIF1 +L227=SRIF1 +L228=SREIF1 +L229=IICAIF0 +L230=TMIF00 +L231=TMIF01 +L232=TMIF02 +L233=TMIF03 +L234=IF1H +L235=ADIF +L236=RTCIF +L237=RTCIIF +L238=KRIF +L239=MDIF +L240=TMIF04 +L241=MK0 +L242=MK0L +L243=WDTIMK +L244=LVIMK +L245=PMK0 +L246=PMK1 +L247=PMK2 +L248=PMK4 +L249=PMK5 +L250=MK0H +L251=DMAMK0 +L252=DMAMK1 +L253=CSIMK00 +L254=STMK0 +L255=CSIMK01 +L256=SRMK0 +L257=SREMK0 +L258=MK1 +L259=MK1L +L260=CSIMK10 +L261=IICMK10 +L262=STMK1 +L263=SRMK1 +L264=SREMK1 +L265=IICAMK0 +L266=TMMK00 +L267=TMMK01 +L268=TMMK02 +L269=TMMK03 +L270=MK1H +L271=ADMK +L272=RTCMK +L273=RTCIMK +L274=KRMK +L275=MDMK +L276=TMMK04 +L277=PR00 +L278=PR00L +L279=WDTIPR0 +L280=LVIPR0 +L281=PPR00 +L282=PPR01 +L283=PPR02 +L284=PPR04 +L285=PPR05 +L286=PR00H +L287=DMAPR00 +L288=DMAPR01 +L289=CSIPR000 +L290=STPR00 +L291=CSIPR001 +L292=SRPR00 +L293=SREPR00 +L294=PR01 +L295=PR01L +L296=CSIPR010 +L297=IICPR010 +L298=STPR01 +L299=SRPR01 +L300=SREPR01 +L301=IICAPR00 +L302=TMPR000 +L303=TMPR001 +L304=TMPR002 +L305=TMPR003 +L306=PR01H +L307=ADPR0 +L308=RTCPR0 +L309=RTCIPR0 +L310=KRPR0 +L311=MDPR0 +L312=TMPR004 +L313=PR10 +L314=PR10L +L315=WDTIPR1 +L316=LVIPR1 +L317=PPR10 +L318=PPR11 +L319=PPR12 +L320=PPR14 +L321=PPR15 +L322=PR10H +L323=DMAPR10 +L324=DMAPR11 +L325=CSIPR100 +L326=STPR10 +L327=CSIPR101 +L328=SRPR10 +L329=SREPR10 +L330=PR11 +L331=PR11L +L332=CSIPR110 +L333=IICPR110 +L334=STPR11 +L335=SRPR11 +L336=SREPR11 +L337=IICAPR10 +L338=TMPR100 +L339=TMPR101 +L340=TMPR102 +L341=TMPR103 +L342=PR11H +L343=ADPR1 +L344=RTCPR1 +L345=RTCIPR1 +L346=KRPR1 +L347=MDPR1 +L348=TMPR104 +L349=MDAL +L350=MULA +L351=MDAH +L352=MULB +L353=MDBH +L354=MULOH +L355=MDBL +L356=MULOL +L357=PMC +L358=MAA +L359=ADPC +L360=PU0 +L361=PU1 +L362=PU3 +L363=PU4 +L364=PU5 +L365=PU7 +L366=PU12 +L367=PU14 +L368=PIM3 +L369=PIM7 +L370=POM3 +L371=POM7 +L372=NFEN0 +L373=NFEN1 +L374=NFEN2 +L375=MDCL +L376=MDCH +L377=MDUC +L378=DIVST +L379=DIVMODE +L380=PER0 +L381=SAU0EN +L382=IICA0EN +L383=ADCEN +L384=RTCEN +L385=PER2 +L386=TAU0EN +L387=OSMC +L388=BCDADJ +L389=SSR00 +L390=SSR00L +L391=SSR01 +L392=SSR01L +L393=SSR02 +L394=SSR02L +L395=SSR03 +L396=SSR03L +L397=SIR00 +L398=SIR00L +L399=SIR01 +L400=SIR01L +L401=SIR02 +L402=SIR02L +L403=SIR03 +L404=SIR03L +L405=SMR00 +L406=SMR01 +L407=SMR02 +L408=SMR03 +L409=SCR00 +L410=SCR01 +L411=SCR02 +L412=SCR03 +L413=SE0 +L414=SE0L +L415=SS0 +L416=SS0L +L417=ST0 +L418=ST0L +L419=SPS0 +L420=SPS0L +L421=SO0 +L422=SOE0 +L423=SOE0L +L424=SOL0 +L425=SOL0L +L426=TCR00 +L427=TCR01 +L428=TCR02 +L429=TCR03 +L430=TCR04 +L431=TCR05 +L432=TCR06 +L433=TCR07 +L434=TMR00 +L435=TMR01 +L436=TMR02 +L437=TMR03 +L438=TMR04 +L439=TMR05 +L440=TMR06 +L441=TMR07 +L442=TSR00 +L443=TSR00L +L444=TSR01 +L445=TSR01L +L446=TSR02 +L447=TSR02L +L448=TSR03 +L449=TSR03L +L450=TSR04 +L451=TSR04L +L452=TSR05 +L453=TSR05L +L454=TSR06 +L455=TSR06L +L456=TSR07 +L457=TSR07L +L458=TE0 +L459=TE0L +L460=TS0 +L461=TS0L +L462=TT0 +L463=TT0L +L464=TPS0 +L465=TPS0L +L466=TO0 +L467=TO0L +L468=TOE0 +L469=TOE0L +L470=TOL0 +L471=TOL0L +L472=TOM0 +L473=TOM0L +L474=IICCTL00 +L475=SPT0 +L476=STT0 +L477=ACKE0 +L478=WTIM0 +L479=SPIE0 +L480=WREL0 +L481=LREL0 +L482=IICE0 +L483=IICCTL10 +L484=DFC0 +L485=SMC0 +L486=DAD0 +L487=CLD0 +L488=WUP0 +L489=IICWL0 +L490=IICWH0 +L491=SVA0 +L492=PER3 +L493=IICA1EN +L494=P20 +L495=PM20 +L496=PU20 +L497=EGP2 +L498=EGN2 +L499=IICA1 +L500=IICS1 +L501=SPD1 +L502=STD1 +L503=ACKD1 +L504=TRC1 +L505=COI1 +L506=EXC1 +L507=ALD1 +L508=MSTS1 +L509=IICF1 +L510=IICRSV1 +L511=STCEN1 +L512=IICBSY1 +L513=STCF1 +L514=IICCTL01 +L515=SPT1 +L516=STT1 +L517=ACKE1 +L518=WTIM1 +L519=SPIE1 +L520=WREL1 +L521=LREL1 +L522=IICE1 +L523=IICCTL11 +L524=DFC1 +L525=SMC1 +L526=DAD1 +L527=CLD1 +L528=WUP1 +L529=IICWL1 +L530=IICWH1 +L531=SVA1 [Local Variable] Geometry=0, 0, 0, 0 Window=Hide @@ -764,10 +866,10 @@ SaveRange=Screen SaveStart= SaveEnd= [Register] -Geometry=13, 603, 250, 400 -Window=Normal +Geometry=0, 0, 0, 0 +Window=Hide Mode=Hex -Boundary=159 +Boundary=62 Pickup=OFF Name=Functional Register Bank=0 @@ -777,7 +879,7 @@ RP2=3 RP3=3 PC=3 SP=3 -PSW=7 +PSW=3 ES=3 CS=3 [Event Manager] @@ -855,47 +957,51 @@ Detail=OFF Last Name= Count=0 [Variable] -Geometry=1232, 6, 354, 910 +Geometry=1146, 11, 440, 793 Window=Normal Boundary=13762700 -0=.iics1,P,S,A,+,1 -1=.iicf1,P,S,A,+,1 -2=.iicctl11,P,S,A,+,1 -3=.iicctl01,P,S,A,+,1 -4=.SUBCUD,P,S,A,+,1 -5=.tx_buf,P,N,A,+,1 -6=.adc_raw_vol,P,N,A,+,1 -7=.vol_old,P,N,A,+,1 -8=.vol,P,N,A,+,1 -9=.direction,P,N,A,+,1 -10=.temp,P,N,A,+,1 -Line=11 +0=.adc_raw_vol,P,N,A,+,1 +1=.vol_old,P,N,A,+,1 +2=.acc_norm_temp,P,N,A,+,1 +3=.acc_norm,P,N,A,+,1 +4=.temp2,P,N,A,+,1 +5=.temp1,P,N,A,+,1 +6=.filterd,P,N,A,+,1 +Line=7 [Quick Watch] -0=if2,P,A,1 -1=if2h,P,A,1 -2=new_task,P,A,1 -3=iic_mcu_busy,P,A,1 -4=adc_raw_vol,P,A,1 -5=direction,P,A,1 -6=vol,P,A,1 -7=temp,P,A,1 -8=vol_old,P,A,1 -9=tx_buf,P,A,1 -10=SUBCUD,P,A,1 -11=iicas1,P,A,1 -12=iics1,P,A,1 -13=iicf1,P,A,1 -14=iicctl01,P,A,1 -15=iicctl11,P,A,1 +0=temp1,P,A,1 +1=temp2,P,A,1 +2=filterd,P,A,1 +3=acc_norm,P,A,1 +4=acc_norm_temp,P,A,1 +5=vol_old,P,A,1 +6=adc_raw_vol,P,A,1 +7= +8= +9= +10= +11= +12= +13= +14= +15= [Software Break] -Geometry=1204, 674, 500, 428 +Geometry=1085, 899, 500, 200 Window=Normal Width=150 30 200 100 -Name0=Swb00003 -Address0=i2c_ctr.c#_int_iic_ctr+0xc0 +Name0=Swb00002 +Address0=pedo_alg_thre_det2.c#es_S0096+0x104 Window0=ASM -Status0=ON -Count=1 +Status0=OFF +Name1=Swb00003 +Address1=adc.c#es_F0072+0xa7 +Window1=ASM +Status1=OFF +Name2=Swb00004 +Address2=adc.c#es_F0072+0xc4 +Window2=ASM +Status2=OFF +Count=3 [Reset] Debugger=ON Symbol=OFF diff --git a/trunk/yav_mcu_bsr.prj b/trunk/yav_mcu_bsr.prj index 407b9d4..5e9cd20 100644 --- a/trunk/yav_mcu_bsr.prj +++ b/trunk/yav_mcu_bsr.prj @@ -115,29 +115,6 @@ ZF=0 S=1 E=0 CommandFile=0 -[SrcFile] -Source1=loader.c -Source2=pm.c -Source3=i2c_ctr.c -Source4=main.c -Source5=magic.c -Source6=WDT.c -Source7=i2c_mcu.c -Source8=i2c_twl.c -Source9=ini_VECT.c -Source10=led.c -Source11=rtc.c -Source12=vreg_ctr.c -Source13=vreg_twl.c -Source14=adc.c -Source15=renge\renge.c -Source16=accero.c -Source17=self_flash.c -Source18=reboot.c -Source19=sw.c -Source20=task_debug.c -Source21=task_misc.c -Source22=task_sys.c [Options.RA78K0R 0] Version=100 G=1 @@ -246,6 +223,354 @@ LT=8 Z=0 CommandFile=0 RA_OPT= +[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 +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 +[SrcFile] +Source1=loader.c +Source2=pm.c +Source3=i2c_ctr.c +Source4=main.c +Source5=magic.c +Source6=WDT.c +Source7=i2c_mcu.c +Source8=i2c_twl.c +Source9=ini_VECT.c +Source10=led.c +Source11=rtc.c +Source12=vreg_ctr.c +Source13=vreg_twl.c +Source14=adc.c +Source15=renge\renge.c +Source16=accero.c +Source17=self_flash.c +Source18=reboot.c +Source19=sw.c +Source20=task_debug.c +Source21=task_misc.c +Source22=task_sys.c +Source23=pedo_alg_thre_det2.c +[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=7EFBFF +KM=1 +KD=0 +KP=0 +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.78K0R] +BuildMode=2 +BuildMode2=K0R_dbg +BuildMode3=BSR_dbg +BuildMode4=BSR_rel +BuildMode5=BSR_WM0 +DefaultMode2=1 +DefaultMode3=1 +DefaultMode4=1 +DefaultMode5=1 +[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 +Include30=batt_params.h +Include31=pedometer.h [Options.CC78K0R 0] Version=210 Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r @@ -418,7 +743,7 @@ AssignROM=0 Maxoptimizechk=0 Maxoptimize=1104 Charunexpandchk=0 -Unsignedchar=1 +Unsignedchar=0 Usesaddrchk=0 Autoallocationchk=1 Jumpoptimize=1 @@ -712,329 +1037,6 @@ 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 -Include30=batt_params.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=7EFBFF -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 -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 [ToolSet] ToolSetName=(変更)78K0R Software Package V1.10 Tool1=CC78K0R|W2.10 diff --git a/trunk/yav_mcu_bsr.prk b/trunk/yav_mcu_bsr.prk index 3e24b2d..5d781af 100644 --- a/trunk/yav_mcu_bsr.prk +++ b/trunk/yav_mcu_bsr.prk @@ -1,21 +1,25 @@ [ProjectManager] FrameMax=0 -FrameX=82 -FrameY=140 +FrameX=41 +FrameY=39 FrameCX=1299 FrameCY=1044 OpenFile1=renge\renge.h,0,502,637,1746,1394,29,16,29,0 -OpenFile2=pm.c,0,154,154,1133,791,0,792,0,0 -OpenFile3=self_flash.c,0,154,154,1133,791,44,112,0,0 -OpenFile4=vreg_ctr.h,0,220,220,1464,977,20,214,29,0 -OpenFile5=ProjectWindow +OpenFile2=user_define.h,0,330,330,1574,1056,0,172,0,0 +OpenFile3=jhl_defs.h,0,250,539,1494,1265,0,10,8,0 +OpenFile4=renge\\renge_defs.h,0,293,307,1537,1033,18,37,18,0 +OpenFile5=renge\renge_defs.h,0,667,22,1514,748,0,16,0,0 +OpenFile6=pedometer.h,0,586,125,1830,851,11,74,11,0 +OpenFile7=sw.c,0,264,264,1508,990,0,105,0,0 +OpenFile8=pedo_alg_thre_det2.c,0,347,41,1231,551,32,73,19,0 +OpenFile9=adc.c,0,286,286,1530,1012,24,134,50,0 +OpenFile10=config.h,0,257,193,1501,919,0,21,0,0 +OpenFile11=task_misc.c,0,308,308,1552,1034,0,1,0,0 +OpenFile12=ProjectWindow PrjPos=0,2,754,3,253 -OpenFile6=vreg_ctr.c,0,198,198,1442,955,27,303,22,0 -OpenFile7=accero.c,0,132,132,1133,760,70,186,69,0 -OpenFile8=adc.c,0,242,242,1486,999,0,116,25,0 -OpenFile9=config.h,0,268,24,1247,661,0,33,29,0 -OpenFile10=OutputWindow -OutputPos=0,421,829,388,1497 +OpenFile13=task_sys.c,0,330,330,1574,1056,22,136,37,0 +OpenFile14=OutputWindow +OutputPos=0,605,1071,70,1128 ActivePRJ=yav_mcu_bsr.prj [ProjectWindow] ProjectWindowDispType=0 diff --git a/trunk/yav_mcu_bsr.sdb b/trunk/yav_mcu_bsr.sdb index 698e03d..17e7db4 100644 --- a/trunk/yav_mcu_bsr.sdb +++ b/trunk/yav_mcu_bsr.sdb @@ -11,7 +11,7 @@ T=4b68f956 7=rtc.h 8=reboot.h [pm.c] -T=4b6ba554 +T=4b95eb6d 1=incs.h 2=adc.h 3=led.h @@ -19,7 +19,7 @@ T=4b6ba554 5=renge\renge.h 6=batt_params.h [i2c_ctr.c] -T=4b690471 +T=4b7decbc 1=incs.h 2=accero.h [main.c] @@ -32,7 +32,7 @@ T=4b68d913 6=led.h 7=adc.h [magic.c] -T=4b7bd688 +T=4b962756 1=config.h [WDT.c] T=4afd21ca @@ -56,7 +56,7 @@ T=4b4438bb T=4b6a6fa4 1=incs.h [vreg_ctr.c] -T=4b724017 +T=4b95fb8d 1=incs.h 2=vreg_ctr.h 3=rtc.h @@ -66,14 +66,14 @@ T=4b724017 7=..\..\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r\fsl.h 8=fsl_user.h [vreg_twl.c] -T=4b6907de +T=4b8b5f7f 1=incs.h 2=jhl_defs.h 3=vreg_twl.h 4=vreg_ctr.h 5=renge\renge_task_intval.h [adc.c] -T=4b723615 +T=4b96108e 1=incs.h 2=adc.h 3=pm.h @@ -88,7 +88,7 @@ T=4b5d73b9 6=user_define.h 7=bsr_system.h [accero.c] -T=4b7bd680 +T=4b8f1c98 1=incs.h 2=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h [self_flash.c] @@ -101,7 +101,7 @@ T=4b6fb909 T=4afd21cb 1=incs_loader.h [sw.c] -T=4b4d6c9b +T=4b95fcac 1=incs.h 2=i2c_twl.h 3=i2c_ctr.h @@ -110,7 +110,7 @@ T=4b4d6c9b 6=pm.h 7=rtc.h [task_debug.c] -T=4b6bc508 +T=4b95d5a4 1=incs.h 2=renge\renge.h 3=pm.h @@ -122,7 +122,7 @@ T=4b6a6fb1 3=pm.h 4=accero.h [task_sys.c] -T=4b663267 +T=4b962889 1=incs.h 2=i2c_twl.h 3=i2c_ctr.h @@ -131,6 +131,13 @@ T=4b663267 6=pm.h 7=rtc.h 8=sw.h +9=adc.h +[pedo_alg_thre_det2.c] +T=4b9603bf +1=incs.h +2=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h +3=accero.h +4=pedometer.h [incs_loader.h] T=4b25f1a9 1=jhl_defs.h @@ -143,12 +150,12 @@ T=4b25f1a9 8=i2c_mcu.h 9=WDT.h [jhl_defs.h] -T=4b023fdb +T=4b90c1b8 1=config.h [user_define.h] -T=4b690aa2 +T=4b95fc65 [config.h] -T=4b7cf1c7 +T=4b95fce7 [bsr_system.h] T=4b3064de [renge\renge.h] @@ -156,12 +163,12 @@ T=4b32c168 1=renge\renge_defs.h 2=renge\renge_task_immediate.h [renge\renge_defs.h] -T=4b32f836 +T=4b90c2bc [renge\renge_task_immediate.h] T=4b42ee65 1=renge\renge_defs.h [vreg_ctr.h] -T=4b6bc3cc +T=4b95fb8d 1=config.h [loader.h] T=4afd21ca @@ -177,16 +184,16 @@ T=4afd21cb [i2c_ctr.h] T=4afd21cb [pm.h] -T=4b68df75 +T=4b8f1beb [rtc.h] T=4b6a6fa4 [adc.h] -T=4b25ee1e +T=4b96108e 1=jhl_defs.h [led.h] T=4b4438a1 [incs.h] -T=4b25e780 +T=4b8f2e8c 1=jhl_defs.h 2=user_define.h 3=bsr_system.h @@ -197,10 +204,11 @@ T=4b25e780 8=rtc.h 9=accero.h [vreg_twl.h] -T=4b690471 +T=4b8b6b9b [accero.h] -T=4b66ac04 +T=4b8f11ef 1=jhl_defs.h +2=pedometer.h [i2c_twl_defs.h] T=4afd21ca [renge\renge_task_intval.h] @@ -218,3 +226,5 @@ T=4afd21cb T=45f12258 [batt_params.h] T=4b663897 +[pedometer.h] +T=4b9601d1