From dfd5adae558db76c01f7874e8160b3ddc28eb162 Mon Sep 17 00:00:00 2001 From: N2232 Date: Fri, 7 May 2010 10:43:06 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=BBTWL=E3=81=8B=E3=82=89=E3=81=AE?= =?UTF-8?q?=E3=83=90=E3=83=83=E3=82=AF=E3=83=A9=E3=82=A4=E3=83=88=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E9=80=9A=E7=9F=A5=E3=81=AB=E3=83=9F=E3=82=B9=E3=81=8C?= =?UTF-8?q?=E6=9C=89=E3=81=A3=E3=81=9F=E3=81=AE=E3=81=A7=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=20=E3=80=80=E3=80=80=E3=80=80=E2=86=92=E5=87=A1=E3=83=9F?= =?UTF-8?q?=E3=82=B9=E3=81=A7=E3=81=97=E3=81=9F=20=E3=83=BBT3=E3=81=A7?= =?UTF-8?q?=E5=A0=B1=E5=91=8A=E3=81=95=E3=82=8C=E3=81=9F=E3=83=90=E3=82=B0?= =?UTF-8?q?=E3=81=AA=E3=81=A9=20=E3=80=80=E3=83=BB=E9=9B=BB=E6=BA=90?= =?UTF-8?q?=E6=8E=A5=E7=B6=9A=E5=88=9D=E5=9B=9E=E3=81=AB=E9=9B=BB=E6=B5=81?= =?UTF-8?q?=E3=81=8C=E5=A4=9A=E3=81=84=E4=BB=B6=20=E3=80=80=E3=80=80?= =?UTF-8?q?=E3=80=80=E6=97=A2=E7=9F=A5=E3=80=81=E4=BF=AE=E6=AD=A3=E6=B8=88?= =?UTF-8?q?=E3=81=BF=E3=80=82=20=E3=80=80=E3=83=BB=E9=9F=B3=E9=87=8F?= =?UTF-8?q?=E3=82=B9=E3=83=A9=E3=82=A4=E3=83=80=E3=81=8C=E9=80=86=20?= =?UTF-8?q?=E3=80=80=E3=80=80=E3=80=80=E6=97=A2=E7=9F=A5=E3=80=81=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E6=B8=88=E3=81=BF=E3=80=82=20=E3=80=80=E3=80=80?= =?UTF-8?q?=E3=80=80=E3=80=80=E4=BF=AE=E6=AD=A3=E7=89=88=E3=81=AB=E6=9B=B8?= =?UTF-8?q?=E3=81=8D=E6=9B=BF=E3=81=88=E3=81=A6=E3=82=82=E3=82=89=E3=81=86?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB=E6=B8=A1=E3=81=97=E3=81=9F=E6=B0=97?= =?UTF-8?q?=E3=81=8C=E2=80=A6=20=E3=80=80=E3=83=BB=E3=82=A2=E3=83=80?= =?UTF-8?q?=E3=83=97=E3=82=BF=E5=88=BA=E3=81=95=E3=81=A3=E3=81=A6=E3=81=84?= =?UTF-8?q?=E3=82=8B=E3=81=A8=E9=9B=BB=E6=BA=90=E3=83=9C=E3=82=BF=E3=83=B3?= =?UTF-8?q?=E6=8A=BC=E3=81=97=E3=81=A3=E3=81=B1=E3=81=AA=E3=81=97=E3=81=A7?= =?UTF-8?q?=E9=9B=BB=E6=BA=90=E3=81=AF=E3=81=84=E3=81=A3=E3=81=9F=E3=82=8A?= =?UTF-8?q?=E5=88=87=E3=82=8C=E3=81=9F=E3=82=8A=E3=80=80=E6=B8=88=E3=81=BF?= =?UTF-8?q?=20=E3=80=80=E3=83=BB=E9=9B=BB=E6=BA=90OFF=E3=81=A7=E3=82=A2?= =?UTF-8?q?=E3=83=80=E3=83=97=E3=82=BF=E3=82=92=E6=8A=9C=E3=81=8F=E3=81=A8?= =?UTF-8?q?=E5=85=85=E9=9B=BBLED=E3=81=8C=E6=B6=88=E3=81=88=E3=81=AA?= =?UTF-8?q?=E3=81=84=E3=80=80=E6=B8=88=E3=81=BF=20=E3=83=BB=E6=94=B9?= =?UTF-8?q?=E8=89=AF=20=E3=80=80=E3=83=BB=E9=9B=BB=E6=BA=90off=E6=99=82?= =?UTF-8?q?=E3=81=AE=E7=84=A1=E9=A7=84=E3=81=AA=E3=83=97=E3=83=AB=E3=82=A2?= =?UTF-8?q?=E3=83=83=E3=83=97=E3=82=92=E5=89=8A=E9=99=A4=E3=80=80=E6=B8=88?= =?UTF-8?q?=E3=81=BF=20=E3=80=80=E3=80=80=E9=81=8E=E5=8E=BB=E3=81=AE?= =?UTF-8?q?=E4=BB=95=E6=A7=98=E3=81=AE=E3=81=BE=E3=81=BE=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E3=81=97=E3=81=A6=E3=81=84=E3=81=AA=E3=81=8B=E3=81=A3=E3=81=9F?= =?UTF-8?q?=E9=83=A8=E5=88=86=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ・マイコン単品アップデータ  KMC TEG2 コントローラ板(仮)への対応 ・POWER/HOMEスイッチの仕様変更 ・E3向けに ifdef 追加   電源ボタンの押し時間が短い ・PCSミラーのレジスタマップへの反映 ・電波送信フラグをステータスに追加 ・電池残量アプリ向けにレジスタ追加 ・VOLテーブルの更新 ・アダプタ有り時、電源ボタン押しっぱなしで電源on/offを繰り返す件   済み 割と面倒だった。 ・電源on時にCODECの/pcsレジスタ初期化(復活) ・I2Cレジスタ追加、レジスタマップ更新 todo: 突然音が大きくなることがある。  個体に依るようだ? git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@131 013db118-44a6-b54f-8bf7-843cb86687b1 --- trunk/accero.c | 8 +- trunk/adc.c | 32 +++--- trunk/bsr_system.h | 1 + trunk/config.h | 6 +- trunk/i2c_mcu.c | 4 +- trunk/led.c | 54 ++++++++-- trunk/led.h | 19 +++- trunk/pedo_alg_thre_det2.c | 31 ++++-- trunk/pm.c | 55 +++++++--- trunk/self_flash.c | 8 +- trunk/sw.c | 123 +++++++++------------- trunk/sw.h | 4 +- trunk/task_misc.c | 20 +++- trunk/task_sys.c | 76 +++++++------- trunk/user_define.h | 16 +-- trunk/vreg_ctr.c | 18 +++- trunk/vreg_ctr.h | 21 ++-- trunk/vreg_twl.c | 6 ++ trunk/yav_mcu_bsr.prj | 210 +++++++++++++++++++++++++------------ 19 files changed, 451 insertions(+), 261 deletions(-) diff --git a/trunk/accero.c b/trunk/accero.c index 10f9c03..fd82a64 100644 --- a/trunk/accero.c +++ b/trunk/accero.c @@ -80,9 +80,9 @@ task_status_immed tsk_cbk_accero( ) != ERR_SUCCESS ) { // xZTُɂȂ̂Ŏ~߂ - vreg_ctr[VREG_C_ACC_CONFIG] &= ~( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ ); -// vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_ACCERO_ERR; + vreg_ctr[ VREG_C_ACC_CONFIG ] &= ~( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ ); acc_hosu_set(); + vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_ACCERO_ERR; return ( ERR_SUCCESS ); // ^XN̍폜͕Kv } else @@ -152,9 +152,7 @@ task_status_immed acc_write( ) /*========================================================= -@JEg[hɃZbg - todo ̃[h~߂AA - 荞݃[`ȂǂŃJEg肪Kv +@xZT̐ݒ ========================================================*/ task_status_immed acc_hosu_set( ) { diff --git a/trunk/adc.c b/trunk/adc.c index 7e8d83c..545882b 100644 --- a/trunk/adc.c +++ b/trunk/adc.c @@ -44,14 +44,14 @@ extern void nop8(); // max -15db const u8 slider_to_codec[64] = { - 127, 126, 125, 124, 123, 122, 121, 120, - 119, 118, 117, 116, 115, 114, 113, 112, - 111, 110, 109, 109, 108, 107, 106, 105, - 104, 103, 102, 101, 100, 99, 98, 97, - 96, 95, 94, 93, 92, 91, 90, 89, - 88, 87, 86, 85, 84, 83, 82, 81, - 81, 80, 79, 78, 77, 76, 75, 74, - 73, 72, 71, 70, 69, 68, 67, 66 + 127, 127, 127, 126, 125, 124, 123, 122, + 121, 120, 119, 118, 117, 116, 115, 114, + 113, 112, 111, 110, 109, 108, 107, 106, + 105, 104, 103, 102, 101, 100, 99, 98, + 97, 96, 95, 94, 93, 92, 91, 90, + 89, 88, 87, 86, 85, 84, 83, 82, + 81, 80, 79, 78, 77, 76, 75, 74, + 73, 72, 71, 70, 69, 68, 67, 66 }; @@ -139,15 +139,15 @@ void tsk_adc( ) { vol_old = adc_raw_vol; // WX^XV - vreg_ctr[ VREG_C_SND_VOL ] = ( adc_raw_vol / 4 ); // 64i - vreg_twl[ REG_TWL_INT_ADRS_VOL ] = adc_raw_vol / ( 256 / 32 ); // adclł悢 + vreg_twl[ REG_TWL_INT_ADRS_VOL ] = vol_old / ( 256 / 32 ); // adclł悢 + vreg_ctr[ VREG_C_SND_VOL ] = ( vol_old / 4 ); // 64i // codecɓ` - iic_mcu_write_a_byte( IIC_SLA_CODEC, CODEC_REG_VOL, slider_to_codec[ adc_raw_vol / 4 ] ); + iic_mcu_write_a_byte( IIC_SLA_CODEC, CODEC_REG_VOL, slider_to_codec[ vol_old / 4 ] ); #ifndef _MODEL_CTR_ - iic_mcu_write_a_byte( IIC_SLA_DCP, 0, slider_to_codec[ ( 255 - adc_raw_vol ) / 4 ] ); // todo + iic_mcu_write_a_byte( IIC_SLA_DCP, 0, slider_to_codec[ ( 255 - vol_old ) / 4 ] ); #endif -// set_irq( VREG_C_IRQ0, REG_BIT_VR_SNDVOL_CHANGE ); // 荞ݔp~ +// set_irq( VREG_C_IRQ0, REG_BIT_VR_SNDVOL_CHANGE ); // 荞ݔp~ force_update_vol = 200; } } @@ -178,7 +178,7 @@ void tsk_adc( ) ADCEN = 1; - ADM = 0b00011011; // ZNg[hA͈AfCLK/6 /// + ADM = 0b00001011; // ZNg[hAAfCLK/6 /// ADPC = 0x06; // ADC|[g̃ZNg ADS = ADC_SEL_TUNE; @@ -225,6 +225,7 @@ static u8 getmean3( u8 * hist ) /* ======================================================== @OŎ̃`l @@ʂI~߂ + // todo lԂƂH ======================================================== */ __interrupt void int_adc( ) { @@ -306,8 +307,7 @@ u8 get_adc( u8 ch ) ADIF = 0; ADCEN = 1; - ADCS = 0; - ADM = 0b00100011; // ZNg[hAAfCLK/6 ///火 + ADM = 0b00001011; // ZNg[hAAfCLK/6 ///火 ADPC = 0x06; // ADC|[g̃ZNg ADS = ch; diff --git a/trunk/bsr_system.h b/trunk/bsr_system.h index 9dedb1d..59944a3 100644 --- a/trunk/bsr_system.h +++ b/trunk/bsr_system.h @@ -19,6 +19,7 @@ enum poweron_reason_ NONE = 0, PWSW, RTC_ALARM, + EXT_POWER }; diff --git a/trunk/config.h b/trunk/config.h index 32509e0..95ad683 100644 --- a/trunk/config.h +++ b/trunk/config.h @@ -28,9 +28,9 @@ // dl // //#define _SW_HOME_ENABLE_ -//#define _PARRADIUM_ p~ -//#define _PM_BUG_ // oO CTR PMIC p~ - +//#define _PARRADIUM_ p~ +//#define _PM_BUG_ // oO CTR PMIC p~ +#define _FOR_E3_ // ---------------------------------- // #ifdef _MODEL_TEG2_ diff --git a/trunk/i2c_mcu.c b/trunk/i2c_mcu.c index 10f3dd1..414ec1f 100644 --- a/trunk/i2c_mcu.c +++ b/trunk/i2c_mcu.c @@ -571,7 +571,9 @@ void iic_mcu_start( ) SPS0 = 0x0000; // VAjbg̃NbNOB(8M/2)/1 SMR02 = bSMR0n_FIXEDBIT | bMD0n2; // ȈI2Cɐݒ #ifdef _OVERCLOCK_ - SDR02 = 12 << 9; // {[[gݒ (8M/2)/1/(x+1)/2 +// todo +// SDR02 = 12 << 9; // {[[gݒ 8M/1/(x+1)/2 + SDR02 = 13 << 9; // {[[gݒ (8M/2)/1/(x+1)/2 #else SDR02 = 5 << 9; // {[[gݒ (8M/2)/1/(x+1)/2 #endif diff --git a/trunk/led.c b/trunk/led.c index 54e1b75..4b28e51 100644 --- a/trunk/led.c +++ b/trunk/led.c @@ -79,18 +79,15 @@ uni_info_LED info_LED = { //”\LED̃[NƂ -/* -typedef struct{ - u8 to; - sx16 delta; - ux16 now; -}st_LED_dim_status; -*/ st_LED_dim_status LED_dim_status_pow_B; st_LED_dim_status LED_dim_status_3D; st_LED_dim_status LED_dim_status_WiFi; +// LED̓drcLED̓_Ńp^[ +uni_led_red_batt_empty led_red_batt_empty; + + // ======================================================== #define led_fade_to( now, goal ) now = fade_to( now, goal ) @@ -183,7 +180,8 @@ void LED_init( ) TOE0 = 0b0000000011101110; // TOx^C}[W[H TS0 = 0b0000000011101111; // Jn - TDR00 = LED_BRIGHT_MAX - 1; // 10bit, +// TDR00 = LED_BRIGHT_MAX - 1; // 10bit, + TDR00 = LED_BRIGHT_MAX*5 - 1; // 10bit, if( system_status.reboot ) { @@ -283,11 +281,15 @@ void tsk_led_pow( ) static void led_pow_normal( ) { static u8 state; + static u8 red_blink_poi; + u8 temp; + if( vreg_ctr[VREG_C_BT_REMAIN] <= BATT_TH_EMPTY ) { - led_fade_to( LED_duty_pow_blu, 0 ); // ԓ_ + led_fade_to( LED_duty_pow_blu, 0 ); +#if 0 state++; if( state < 127 ) { @@ -298,7 +300,33 @@ static void led_pow_normal( ) LED_pow_red = 1; } return; +#endif + led_fade_to( LED_duty_notify_grn, 0 ); + led_fade_to( LED_duty_notify_blu, 0 ); + state += 1; + if( state < 16 ) + { + return; + } + state = 0; + + if( ( led_red_batt_empty.bits & ( 1 << red_blink_poi )) != 1 ) + { + LED_pow_red = 1; + LED_duty_notify_red = 255; + } + else + { + LED_pow_red = 0; + LED_duty_notify_red = 0; + } + + red_blink_poi += 1; + if( red_blink_poi >= 32 ) + { + red_blink_poi = 0; + } } else if( vreg_ctr[VREG_C_BT_REMAIN] <= BATT_TH_LO ) { @@ -394,7 +422,7 @@ static void led_pow_hotaru( ) /* ======================================================== * 荞݂͎̂̂g܂ * LED_Wifi 3 - todo ̓_ŊԊuȂ + todo .old ̃}[W ======================================================== */ void tsk_led_wifi( ) { @@ -487,6 +515,11 @@ void tsk_led_notify( ) static u8 frame; static st_LED_dim_status LED_dim_status_info_R, LED_dim_status_info_G, LED_dim_status_info_B; + if( vreg_ctr[VREG_C_BT_REMAIN] <= BATT_TH_EMPTY ) + { + // dr؂ꂪD悷 + return; + } // ̃t[ɐi߂H if( time_to_next_frame == 0 ) @@ -522,6 +555,7 @@ void tsk_led_notify( ) led_fade_to2( LED_duty_notify_red, &LED_dim_status_info_R ); led_fade_to2( LED_duty_notify_grn, &LED_dim_status_info_G ); led_fade_to2( LED_duty_notify_blu, &LED_dim_status_info_B ); + } diff --git a/trunk/led.h b/trunk/led.h index 9b5a311..d470db9 100644 --- a/trunk/led.h +++ b/trunk/led.h @@ -71,10 +71,7 @@ enum LED_MODE_TUNE enum { WIFI_LED_OFF = 0, - WIFI_LED_ON, - WIFI_LED_TXAUTO, - WIFI_LED_PTN0, - WIFI_LED_PTN1 + WIFI_LED_ON }; @@ -124,6 +121,20 @@ typedef union{ extern uni_info_LED info_LED; + +typedef struct{ + u8 dats[4]; +}st_u8s4; + +typedef union{ + unsigned long bits; + st_u8s4 dats; +}uni_led_red_batt_empty; + + +extern uni_led_red_batt_empty led_red_batt_empty; + + /* m点LED */ diff --git a/trunk/pedo_alg_thre_det2.c b/trunk/pedo_alg_thre_det2.c index 365ad6e..7063071 100644 --- a/trunk/pedo_alg_thre_det2.c +++ b/trunk/pedo_alg_thre_det2.c @@ -218,6 +218,7 @@ static void hosu_increment() // 󔒂̎ԂlBPԈȏuꂽȂǁB u16 now_hour; u8 now_year; + u8 now_min; // v~߂KvL̂Ł͈Cɍsĉ DI(); @@ -227,6 +228,7 @@ static void hosu_increment() last_hour = HOUR; // ǂݏoɎgpBBCD̂܂܂ł悢 last_day = DAY; last_month = MONTH; + now_min = MIN; now_hour = get_long_hour(); // RWAIT = 0; ōsĂ܂ // EI(); V @@ -259,13 +261,26 @@ static void hosu_increment() last_hour_fny = now_hour; // ۂɃCNg - if( pool.vreg_c_ext.pedo_log[ p_record ] == HOSU_NODATA ) { - pool.vreg_c_ext.pedo_log[ p_record ] = 1; - } - else if( pool.vreg_c_ext.pedo_log[ p_record ] != HOSU_MAX ) - { - pool.vreg_c_ext.pedo_log[ p_record ] += 1; + u8 temp; + + temp = p_record; + if( now_min < vreg_ctr[ VREG_C_ACC_HOSU_ORIGIN ] ) + { + temp -= 1; + if( PEDOMETER_LOG_SIZE >= temp ) + { + temp = PEDOMETER_LOG_SIZE -1; + } + } + if( pool.vreg_c_ext.pedo_log[ temp ] == HOSU_NODATA ) + { + pool.vreg_c_ext.pedo_log[ temp ] = 1; + } + else if( pool.vreg_c_ext.pedo_log[ temp ] != HOSU_MAX ) + { + pool.vreg_c_ext.pedo_log[ temp ] += 1; + } } } } @@ -287,6 +302,10 @@ void fill_hosu_hist_hours( u16 hours ) do { p_record += 1; + if( PEDOMETER_LOG_SIZE >= p_record ) + { + p_record = 0; + } pool.vreg_c_ext.pedo_log[ p_record ] = 0; hours -= 1; } diff --git a/trunk/pm.c b/trunk/pm.c index 4d252a8..f766125 100644 --- a/trunk/pm.c +++ b/trunk/pm.c @@ -264,7 +264,10 @@ err PM_sys_pow_on( ) PM_VDD_normMode(); PM_VDD_on( ); - wait_ms( DELAY_PM_TW_PWUP ); +// wait_ms( DELAY_PM_TW_PWUP ); // gyro_csނ + wait_ms( 10 ); + GYRO_CS_ENABLE(); + wait_ms( DELAY_PM_TW_PWUP - 10 ); PM_VDD50A_on( ); // tdł͂ȂAledƂɎĝł @@ -288,14 +291,12 @@ err PM_sys_pow_on( ) FCRAM_RST_neg; RESET2_neg; -/* wait_ms( 100 ); { // CODEC s背WX^ u8 codec_reg_init[3] = { 0,0,0 }; iic_mcu_write( IIC_SLA_CODEC, CODEC_REG_PM, 3, codec_reg_init ); } -*/ #else // TWL PMIC @@ -330,12 +331,11 @@ err PM_sys_pow_on( ) FCRAM_RST_ast; return ( ERR_ERR ); } -/* + { // CODEC s背WX^ u8 codec_reg_init[3] = { 0,0,0 }; iic_mcu_write( IIC_SLA_CODEC, CODEC_REG_PM, 3, codec_reg_init ); } -*/ #endif return ( ERR_SUCCESS ); @@ -346,7 +346,6 @@ err PM_sys_pow_on( ) /* ======================================================== dOFFV[PX - todo: dُf̏ꍇ ======================================================== */ err PM_sys_pow_off( ) { @@ -426,7 +425,7 @@ __interrupt void intp6_PM_irq( ) } - +#define _type1_ /* ======================================================== PMIC̊荞݂󂯂āANTR PMIC݊WX^烊[h ======================================================== */ @@ -450,13 +449,19 @@ task_status_immed ntr_pmic_comm( ) { if( ( reg_shadow & REG_BIT_TWL_REQ_BL_U ) == 0 ) // { -// irq_work = REG_BIT_TWL_BL_U_OFF; +#ifdef _type1_ + irq_work = REG_BIT_TWL_BL_U_OFF; +#else set_irq( VREG_C_IRQ2, REG_BIT_TWL_BL_U_OFF ); +#endif } else { -// irq_work = REG_BIT_TWL_BL_U_ON; +#ifdef _type1_ + irq_work = REG_BIT_TWL_BL_U_ON; +#else set_irq( VREG_C_IRQ2, REG_BIT_TWL_BL_U_ON ); +#endif } } @@ -465,18 +470,26 @@ task_status_immed ntr_pmic_comm( ) { if( ( reg_shadow & REG_BIT_TWL_REQ_BL_L ) == 0 ) // { -// irq_work = REG_BIT_TWL_BL_L_OFF; +#ifdef _type1_ + irq_work |= REG_BIT_TWL_BL_L_OFF; +#else set_irq( VREG_C_IRQ2, REG_BIT_TWL_BL_L_OFF ); +#endif } else { -// irq_work = REG_BIT_TWL_BL_L_ON; +#ifdef _type1_ + irq_work |= REG_BIT_TWL_BL_L_ON; +#else set_irq( VREG_C_IRQ2, REG_BIT_TWL_BL_L_ON ); +#endif } } -#if 0 - irq_work &= ~VREG_C_IRQ_MASK2; + vreg_ctr[ VREG_C_STATUS_1 ] = ( vreg_ctr[ VREG_C_STATUS_1 ] & ~0x0C ) | ( reg_shadow & 0x0C ); // TWLobNCg̃~[ + +#ifdef _type1_ + irq_work &= ~vreg_ctr[ VREG_C_IRQ_MASK2 ]; // set_irq i if( irq_work != 0 ) { @@ -620,6 +633,8 @@ void tsk_batt( ) } } +#if 0 + // todo // [d /////////////////////////// // xtqXeVX @@ -651,6 +666,16 @@ void tsk_batt( ) #endif } +#else + + // [d /////////////////////////// +# ifndef _MODEL_WM0_ +// CHG_ENABLEs /WL_RST ɔzĂ̂ + BT_CHG_ENABLE(); // x͈OKŏ[dĊJ +# endif + +#endif + // [d // // 荞݁Bmisc̒ł낵ĂĂB set_bit( !BT_CHG_n, vreg_ctr[VREG_C_STATUS], REG_BIT_BATT_CHARGE ); @@ -741,6 +766,7 @@ void BT_init( ) dat_16._u16 = swap_endian_16( 0x4A57 ); // unlock key if( iic_mcu_write( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_LOCK, 2, &dat_16 ) == ERR_SUCCESS ) { + vreg_ctr[ VREG_C_STATUS_1 ] &= ~REG_BIT_GASGAUGE_ERR; // cICL // if( battery_manufacturer < BT_VENDER_OPEN ) { @@ -896,6 +922,9 @@ task_status_immed BT_temp_update( ) newrcomp += rcomp; newrcomp = swap_endian_16( (u16)newrcomp ); + // todo + newrcomp = 0x9700; + DBG_P_n = 0; if( iic_mcu_write diff --git a/trunk/self_flash.c b/trunk/self_flash.c index 4b731f7..2cea8fa 100644 --- a/trunk/self_flash.c +++ b/trunk/self_flash.c @@ -174,7 +174,7 @@ void firm_update( ) } // 1ubN݊Bxt@Cs if( FSL_IVerify( target_block ) != FSL_OK ){ - // todo ēx xt@CJԂ_ł... + // ēx xt@CJԂ_ł... todocH // XgA firm_duplicate( UPDATE_BLOCK_LAST +1, FIRM_TOP ); @@ -268,9 +268,7 @@ static void FSL_Open( void ) MK2H = FSL_MK2H_MASK; /* } */ #endif - // OH - // todo DMA~߂ - while( DST1 ){;} + while( DST1 ){;} // DMA~ DEN1 = 0; MK0 = 0xFFFF; @@ -365,7 +363,7 @@ static err firm_duplicate( u8 block_src, // 1ubN݊Bd`FbNs while( FSL_IVerify( target_block ) != FSL_OK ){ - // todo + // todo sH ; } } diff --git a/trunk/sw.c b/trunk/sw.c index 1e105b6..f63fe27 100644 --- a/trunk/sw.c +++ b/trunk/sw.c @@ -14,19 +14,24 @@ //========================================================= -#define INTERVAL_TSK_SW 16 -#define CLICK_THRESHOLD 1 -#define HOLD_THREASHOLD (u8)( 600 / INTERVAL_TSK_SW ) +#define INTERVAL_TSK_SW 8 +#define CLICK_THRESHOLD 2 +#ifdef _FOR_E3_ +#define HOLD_THREASHOLD (u8)( 800 / INTERVAL_TSK_SW ) +#else +#define HOLD_THREASHOLD (u8)( 2000 / INTERVAL_TSK_SW ) +#endif //========================================================= -u8 SW_pow_count, SW_home_count, SW_wifi_count; -bit SW_pow_mask, SW_home_mask, SW_wifi_mask; +u8 SW_pow_count; +bit SW_pow_mask; + +u8 SW_home_count, SW_wifi_count; bit SW_HOME_n; - //========================================================= // Ԃ𐔂BςȂł0ɖ߂Ȃ // mask0̎́Ax܂Ŗ @@ -46,6 +51,24 @@ bit SW_HOME_n; } +#define chk_clicked( button, count, irq_bit_name ) \ + if( !button ) \ + { \ + if( count <= CLICK_THRESHOLD ) \ + { \ + count += 1; \ + } \ + if( count == CLICK_THRESHOLD ) \ + { \ + set_irq( VREG_C_IRQ0, irq_bit_name ); \ + } \ + } \ + else \ + { \ + count = 0; \ + } + + /* ======================================================== XCb`̊Ď @@ -53,23 +76,13 @@ bit SW_HOME_n; ======================================================== */ void tsk_sw( ) { - static u8 cnt_force_off = 0; + static u16 cnt_force_off = 0; static u8 task_interval = 0; switch ( system_status.pwr_state ) { - case ( OFF_TRIG ): - SW_pow_count = 0; - SW_wifi_count = 0; - SW_home_count = 0; - cnt_force_off = 0; - break; - case ( ON_TRIG ): - // d - SW_pow_mask = 1; - SW_home_mask = 1; - SW_wifi_mask = 1; + cnt_force_off = 0; break; } @@ -82,7 +95,6 @@ void tsk_sw( ) task_interval = (u8)( INTERVAL_TSK_SW / SYS_INTERVAL_TICK ); } - switch ( system_status.pwr_state ) { case ( ON ): @@ -90,9 +102,10 @@ void tsk_sw( ) case ( BT_CHARGE ): case ( OFF ): // dXCb`̊Ď // + count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // {^Ԃ̃JEg if( SW_POW_n ) { - if( ( CLICK_THRESHOLD < SW_pow_count ) && ( SW_pow_count <= HOLD_THREASHOLD ) ) + if( SW_pow_count == CLICK_THRESHOLD ) { #ifdef _SW_HOME_ENABLE_ set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_CLICK ); @@ -108,81 +121,45 @@ void tsk_sw( ) #else set_irq( VREG_C_IRQ0, REG_BIT_SW_HOME_HOLD ); #endif - } - else if( SW_pow_count == ( HOLD_THREASHOLD * 4 ) ) - {// ɂ鋭OFF - vreg_ctr[ VREG_C_LED_POW ] = LED_POW_ILM_ONLY_RED; - system_status.pwr_state = OFF_TRIG; - renge_task_interval_run_force = 1; + cnt_force_off = 1; } - // dOFF荞݂ꂽc - if( ( vreg_ctr[VREG_C_IRQ0] & REG_BIT_SW_POW_HOLD ) != 0 ) + if( cnt_force_off != 0 ) { - cnt_force_off += 1; - if( cnt_force_off >= 13 ) - { // cԎȂBIɐ؂B +#ifdef _FOR_E3_ + if( ++cnt_force_off == ( 200 / INTERVAL_TSK_SW ) ) +#else + if( ++cnt_force_off == ( 4000 / INTERVAL_TSK_SW ) ) +#endif + { + // ^CAEgɂ鋭OFF + cnt_force_off = 0; vreg_ctr[ VREG_C_LED_POW ] = LED_POW_ILM_ONLY_RED; system_status.pwr_state = OFF_TRIG; renge_task_interval_run_force = 1; } } - else - { - cnt_force_off = 0; - } +#ifdef _SW_HOME_ENABLE_ // HOME XCb` // switch( system_status.model ) { -#ifdef _MODEL_CTR_ +# ifdef _MODEL_CTR_ case( MODEL_JIKKI ): SW_HOME_n = SW_HOME_n_JIKKI; break; -#endif +# endif case( MODEL_TS_BOARD ): case( MODEL_SHIROBAKO ): SW_HOME_n = SW_HOME_n_TSBOARD; break; default: - SW_HOME_n = 1; - } - - if( SW_HOME_n ) - { - if( ( CLICK_THRESHOLD < SW_home_count ) && ( SW_home_count <= HOLD_THREASHOLD ) ) - { - set_irq( VREG_C_IRQ0, REG_BIT_SW_HOME_CLICK ); - } - } - else if( SW_home_count == HOLD_THREASHOLD ) - { - set_irq( VREG_C_IRQ0, REG_BIT_SW_HOME_HOLD ); + SW_HOME_n = 1; // Ă } + chk_clicked( SW_HOME_n, SW_home_count, REG_BIT_SW_HOME_CLICK ); +#endif // wifi sw // - if( SW_wifi_count == CLICK_THRESHOLD ) - { - set_irq( VREG_C_IRQ0, REG_BIT_SW_WIFI_CLICK ); - } - - break; + chk_clicked( SW_WIFI_n, SW_wifi_count, REG_BIT_SW_WIFI_CLICK ); } - - // {^Ԃ̃JEg -/* -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_ - 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 ); - } - - return; } diff --git a/trunk/sw.h b/trunk/sw.h index f3bea21..12b473e 100644 --- a/trunk/sw.h +++ b/trunk/sw.h @@ -1,7 +1,7 @@ #ifndef _sw_ #define _sw_ -extern u8 SW_pow_count, SW_home_count, SW_wifi_count; -extern bit SW_pow_mask, SW_home_mask, SW_wifi_mask; +extern u8 SW_pow_count; +extern bit SW_pow_mask; #endif diff --git a/trunk/task_misc.c b/trunk/task_misc.c index 86d4445..3367a54 100644 --- a/trunk/task_misc.c +++ b/trunk/task_misc.c @@ -44,10 +44,16 @@ +// ======================================================== +bit twl_ver_read; + + // ======================================================== #define INTERVAL_TSK_MISC_STAT 4 + + /* ======================================================== Xe[^XWX^Ȃ ======================================================== */ @@ -140,6 +146,14 @@ void tsk_misc_stat( ) NOP(); } } + + + if( twl_ver_read ) + { + twl_ver_read = 0; + set_irq( VREG_C_IRQ2, REG_BIT_TWL_VER_READ ); + } + return; } @@ -184,14 +198,16 @@ task_status_immed do_command0( ) FCRAM_RST_neg; PM_reset_neg(); RESET2_neg; -/* + + // NȊO̓Zbgsv + /* // CODEC s背WX^ wait_ms( 100 ); { u8 codec_reg_init[3] = { 0,0,0 }; iic_mcu_write( IIC_SLA_CODEC, CODEC_REG_PM, 3, codec_reg_init ); } -*/ + */ } } diff --git a/trunk/task_sys.c b/trunk/task_sys.c index 4d72a36..78c282a 100644 --- a/trunk/task_sys.c +++ b/trunk/task_sys.c @@ -42,7 +42,7 @@ void tsk_sys( ) switch ( system_status.poweron_reason ) { - default: + case( NONE ): // XCb`œdon if( SW_pow_count != 0 ) @@ -53,14 +53,14 @@ void tsk_sys( ) { timeout += 1; } - if( timeout > 127 ) + if( timeout > 100 ) { system_status.pwr_state = OFF_TRIG; // XCb`̓mCYBQB renge_task_interval_run_force = 1; return; } - if( SW_pow_count < 3 ) + if( SW_pow_count < 10 ) { // XCb`̗lq return; @@ -69,10 +69,12 @@ void tsk_sys( ) system_status.poweron_reason = PWSW; break; - case ( RTC_ALARM ): + default: break; } + SW_pow_mask = 1; + timeout = 0; BT_DET_P = 1; // `[WɎԂ|̂ŐɏグĂ @@ -120,17 +122,24 @@ void tsk_sys( ) { // Ƃ肠ALEDԂŋN vreg_ctr[VREG_C_LED_POW] = LED_POW_ILM_OFF; - // todo? } system_status.pwr_state = ON_TRIG; - // ܂ŗƁAdm + // ܂ŗƁAdm // break; case ON_TRIG: //------------------------------------------------------- LED_init( ); - PU7 = 0b00011101; // 4:SW_WIFI 3:SW_PWSW 2:PM_IRQ 0:PM_EXTDC_n + PU5 = 0b00000010; // 1:PM_CHARGE + PU7 = 0b00011101; // 4:SW_WIFI 3:SW_PWSW 2:PM_IRQ 0:PM_EXTDC_n +#ifdef _MODEL_CTR_ +# ifdef _SW_HOME_ENABLE_ + PU20 = 0b00010000; // SW_HOME +# else + PU20 = 0b00000000; +# endif +#endif IIC_ctr_Init( ); if( ( vreg_ctr[ VREG_C_MCU_STATUS ] & REG_BIT_STATUS_WDT_RESET ) @@ -235,6 +244,7 @@ void tsk_sys( ) IIC_ctr_Stop( ); IIC_twl_Stop( ); RTC_32k_off(); + GYRO_CS_DISABLE(); vreg_ctr[VREG_C_IRQ0] = 0; vreg_ctr[VREG_C_IRQ1] = 0; @@ -251,55 +261,43 @@ void tsk_sys( ) #ifdef _PMIC_TWL_ PM_TEG_LCD_dis( 1 ); #endif -// IRQ0_deactive; - // pullup_off(); - { - PU5 = 0b00000011; // PM_CHG,PM_CHGERR - PU7 = 0b00011001; // SW_WiFi,PWSWI,PM_EXTTDC - } - - PM_sys_pow_off( ); while( iic_mcu_busy ) {; } KRM = ( KR_SW_POW ); // Mask ł͂ȂAModeȂ̂B킵 - // intp20n͌ق MK0 = ~( INT_MSK0_EXTDC ); MK1 = ~( INT_MSK1_KR | INT_MSK1_RTCALARM | INT_MSK1_RTCINTVAL ); MK2L = 0b11111111; + // PU5 ̂܂ + PU7 = 0b00001001; // PWSWI,PM_EXTTDC,( IRQ0_deactive(), PM_IRQ_deactive ) + PU20 = 0x00; // SW_HOME ~ + IF0 = 0; IF1 = 0; IF2 = 0; + PM_sys_pow_off( ); + timeout = 0; system_status.pwr_state = BT_CHARGE; + SW_pow_mask = 1; SW_pow_count = 0; - SW_wifi_count = 0; // no break // case BT_CHARGE: + system_status.pwr_state = OFF; if( !PM_EXTDC_n ) { // A_v^LF[dxĎ BT_TEMP_P = 1; - - // donH - if( ( SW_pow_count > 3 ) || ( SW_wifi_count > 3 ) - || ( system_status.poweron_reason == RTC_ALARM ) ) - { - system_status.pwr_state = OFF; // ኱RL邪... - renge_task_interval_run_force = 1; - KRMK = 1; - return; - } - return; } else { // ȓd͂ֈڍs + LED_CHARGE = 0; BT_TEMP_P = 0; while( RWST ) {;} @@ -314,23 +312,23 @@ void tsk_sys( ) OSMC = 0x00; # endif STOP( ); -# ifdef _MCU_BSR_ - OSMC = 0x01; - CKC = 0b00001000; -# endif - - RTCIMK = 0; // N // - // N // EKeyReturn荞݁id{j // ERTCA[ // EA_v^} - system_status.pwr_state = OFF; // - renge_task_interval_run_force = 1; - KRMK = 1; - return; + + if( PM_EXTDC_n ) + { + SW_pow_mask = 0; + } +# ifdef _MCU_BSR_ + OSMC = 0x01; + CKC = 0b00001000; +# endif + RTCIMK = 0; } + return; default: while( 1 ) diff --git a/trunk/user_define.h b/trunk/user_define.h index 1f0f6d0..ee8d68b 100644 --- a/trunk/user_define.h +++ b/trunk/user_define.h @@ -160,10 +160,8 @@ // WiFi #ifndef _TEG_ #define WL_TX P20.3 // INTP21 -#define WL_RX P20.2 // INTP20 #else #define WL_TX P20.3 // INTP21 -#define WL_RX P20.2 // INTP20 #endif //#define LED_CAM P1.0 // TO02 @@ -193,10 +191,17 @@ #ifdef _MODEL_CTR_ // P5.0 ɉAP5.5, P140 P141 // P140o͐pȂ̂... -#define I2C_PU_on() { PM5 |= 0x09; P14 |= 0x03; P5 |= 0x09; PM5 &= ~0x09; } -#define I2C_PU_off() { PM5 |= 0x09; P14 &= ~0x03; } +#define I2C_PU_on() { PM5.3 = 1; PM3.3 = 1; P14 |= 0x03; P5.3 = 1; PM5.3 = 0; P3.3 = 1; PM3.3 = 0; } +#define I2C_PU_off() { PM5.3 = 1; PM3.3 = 1; P14 &= ~0x03; P5.3 = 0; PM5.3 = 0; P3.3 = 0; PM3.3 = 0; } #endif +#ifdef _MODEL_CTR_ +#define GYRO_CS_ENABLE() P5.0 = 1 +#define GYRO_CS_DISABLE() P5.0 = 0 +#else +#define GYRO_CS_ENABLE() ; +#define GYRO_CS_DISABLE() ; +#endif //#define I2C_M_SDA P3.1 // SDA10 //#define I2C_M_SCL P3.2 // SCL10 @@ -247,12 +252,9 @@ #endif - -#define DBG_M_n P2.1 #define DBG_P_n P2.2 - #define KR_SW_POW ( 1 << 3 ) #define KR_SW_WIFI ( 1 << 4 ) diff --git a/trunk/vreg_ctr.c b/trunk/vreg_ctr.c index d3bf742..5b4d252 100644 --- a/trunk/vreg_ctr.c +++ b/trunk/vreg_ctr.c @@ -274,6 +274,10 @@ void vreg_ctr_write( u8 adrs, u8 data ) } break; + case ( VREG_C_ACC_HOSU_ORIGIN ): + vreg_ctr[adrs] = data; + break; + case ( VREG_C_FREE_ADRS ): vreg_ctr[adrs] = data; break; @@ -300,6 +304,19 @@ void vreg_ctr_write( u8 adrs, u8 data ) break; } vreg_ctr[adrs] = data; + break; + + case( VREG_C_BATT_EMPTY_PATTERN ): + { +#ifdef _MODEL_CTR_NOTIFY_FULLCOLOR_ + if( iic_burst_state < 4 ) + { + led_red_batt_empty.dats.dats[ iic_burst_state ] = data; + iic_burst_state += 1; + } +#endif + } + break; } return; } @@ -368,7 +385,6 @@ u8 vreg_ctr_read( u8 adrs ) // I2CzWX^ǂ܂ĉ郌WX^ void vreg_ctr_after_read( u8 adrs ) { - // 荞݃tO̓[hŃNA switch( adrs ) { diff --git a/trunk/vreg_ctr.h b/trunk/vreg_ctr.h index 36e4013..501bd3d 100644 --- a/trunk/vreg_ctr.h +++ b/trunk/vreg_ctr.h @@ -9,7 +9,7 @@ // VREG_C_MCU_STATUS -#define REG_BIT_STATUS_WDT_RESET ( 1 << 1 ) +#define REG_BIT_STATUS_WDT_RESET ( 1 << 1 ) #define REG_BIT_RTC_BLACKOUT ( 1 << 0 ) @@ -27,17 +27,15 @@ // VREG_C_STATUS_X // gp ( 1 << 6 ) // gp ( 1 << 5 ) -// gp ( 1 << 4 ) -// gp ( 1 << 3 ) -// gp ( 1 << 2 ) +#define REG_BIT_WIFI_TX ( 1 << 4 ) +// twl bl ̃~[[1: ( 1 << 3 ) +// 0]( 1 << 2 ) #define REG_BIT_ACCERO_ERR ( 1 << 1 ) #define REG_BIT_GASGAUGE_ERR ( 1 << 0 ) - - // VREG_C_IRQ0 #define REG_BIT_VR_SNDVOL_CHANGE ( 1 << 7 ) -#define REG_BIT_IRQ_WDT_RESET ( 1 << 7 ) +#define REG_BIT_IRQ_WDT_RESET ( 1 << 7 ) #define REG_BIT_SHELL_OPEN ( 1 << 6 ) #define REG_BIT_SHELL_CLOSE ( 1 << 5 ) #define REG_BIT_SW_WIFI_CLICK ( 1 << 4 ) @@ -57,6 +55,7 @@ #define REG_BIT_BT_DC_DISC ( 1 << 0 ) // VREG_C_IRQ2 +#define REG_BIT_TWL_VER_READ ( 1 << 7 ) #define REG_BIT_TWL_SNDVOL_CHANGE ( 1 << 6 ) #define REG_BIT_TWL_BL_U_ON ( 1 << 5 ) #define REG_BIT_TWL_BL_U_OFF ( 1 << 4 ) @@ -216,6 +215,8 @@ enum VREG_C VREG_C_RTC_SEC_FINE_L, VREG_C_RTC_SEC_FINE_H, + VREG_C_ACC_HOSU_ORIGIN, + VREG_C_ACC_CONFIG = 0x40, VREG_C_ACC_R_ADRS, VREG_C_ACC_RESERVE, @@ -235,14 +236,16 @@ enum VREG_C VREG_C_ACC_HOSU_SETTING, VREG_C_ACC_HOSU_HIST = 0x4F, -// VREG_C_AMBIENT_BRIGHTNESS = 0xXX, - VREG_C_FREE_ADRS = 0x50, VREG_C_FREE_DATA, + VREG_C_BATT_EMPTY_PATTERN, + VREG_C_ENDMARK_ }; #define VREG_C_INFO 0x7F +// VREG_C_AMBIENT_BRIGHTNESS = 0xXX, + /* VREG_C_PM_INFO, // gp diff --git a/trunk/vreg_twl.c b/trunk/vreg_twl.c index 666a773..8b00ebd 100644 --- a/trunk/vreg_twl.c +++ b/trunk/vreg_twl.c @@ -19,6 +19,9 @@ TWL u8 vreg_twl[_REG_TWL_INT_ADRS_ENDMARK]; +extern bit twl_ver_read; + + /* ======================================================== zWX^̏ ======================================================== */ @@ -92,6 +95,9 @@ u8 vreg_twl_read( u8 phy_adrs ) switch( phy_adrs ){ case( REG_TWL_INT_ADRS_VER_INFO ): +// set_irq( VREG_C_IRQ2, REG_BIT_TWL_VER_READ ); // xIɖȂ̂ + twl_ver_read = 1; + return( TWL_REG_VER_INFO ); case( REG_TWL_INT_ADRS_POWER_INFO ): diff --git a/trunk/yav_mcu_bsr.prj b/trunk/yav_mcu_bsr.prj index 0553d19..1bf690d 100644 --- a/trunk/yav_mcu_bsr.prj +++ b/trunk/yav_mcu_bsr.prj @@ -512,14 +512,68 @@ DefaultMode2=1 DefaultMode3=1 DefaultMode4=1 DefaultMode5=1 -[ToolSet] -ToolSetName=(ύX)78K0R Software Package V1.10 -Tool1=CC78K0R|W2.10 -Tool2=RA78K0R|W1.31 -Tool3=ID78K0R-QB|V3.60 [BuildBefore-AfterCmd] Before1=touch magic.c After1=ruby nec_s_2_bsrbin2.rb bsr.hex +[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=led.c +Source10=rtc.c +Source11=vreg_ctr.c +Source12=vreg_twl.c +Source13=adc.c +Source14=renge\renge.c +Source15=accero.c +Source16=self_flash.c +Source17=sw.c +Source18=task_debug.c +Source19=task_misc.c +Source20=task_sys.c +Source21=pedo_alg_thre_det2.c +Source22=ini_VECT.c +Source23=led_old.c +[IncFile] +Include1=incs_loader.h +Include2=jhl_defs.h +Include3=config.h +Include4=user_define.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=vreg_twl.h +Include11=loader.h +Include12=i2c_mcu.h +Include13=WDT.h +Include14=fsl.h +Include15=fsl_user.h +Include16=i2c_ctr.h +Include17=pm.h +Include18=rtc.h +Include19=reboot.h +Include20=incs.h +Include21=accero.h +Include22=pedometer.h +Include23=adc.h +Include24=led.h +Include25=batt_params.h +Include26=..\..\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r\fsl.h +Include27=i2c_twl_defs.h +Include28=renge\renge_task_intval.h +Include29=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h +Include30=i2c_twl.h +Include31=sw.h +Include32=self_flash.h +Include33=pool.h +Include34=pedo_lpf_coeff.h [Options.CC78K0R 0] Version=210 Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r @@ -752,7 +806,6 @@ Version=210 Define0= Define1=_debug_,_TEG_,proc_is_ke3 Define2=_debug_,_TEG_,proc_is_ke3,%time% -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 @@ -1069,62 +1122,89 @@ VfiFileBoot0= VfiFileBoot1=boot.vfi VF78K0Rchk=0 VF78K0Rvs= -[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=led.c -Source10=rtc.c -Source11=vreg_ctr.c -Source12=vreg_twl.c -Source13=adc.c -Source14=renge\renge.c -Source15=accero.c -Source16=self_flash.c -Source17=sw.c -Source18=task_debug.c -Source19=task_misc.c -Source20=task_sys.c -Source21=pedo_alg_thre_det2.c -Source22=ini_VECT.c -Source23=led_old.c -[IncFile] -Include1=incs_loader.h -Include2=jhl_defs.h -Include3=config.h -Include4=user_define.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=vreg_twl.h -Include11=loader.h -Include12=i2c_mcu.h -Include13=WDT.h -Include14=fsl.h -Include15=fsl_user.h -Include16=i2c_ctr.h -Include17=pm.h -Include18=rtc.h -Include19=reboot.h -Include20=incs.h -Include21=accero.h -Include22=pedometer.h -Include23=adc.h -Include24=led.h -Include25=batt_params.h -Include26=..\..\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r\fsl.h -Include27=i2c_twl_defs.h -Include28=renge\renge_task_intval.h -Include29=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h -Include30=i2c_twl.h -Include31=sw.h -Include32=self_flash.h -Include33=pool.h -Include34=pedo_lpf_coeff.h +[Options.CC78K0R 2 pm.c] +Version=210 +Define0= +Define1=_debug_,_TEG_,proc_is_ke3 +Define2=_debug_,_TEG_,proc_is_ke3,%time% +Define3=_TEG_,proc_is_ke3 +Define4=proc_is_ke3 +Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r +Include1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r +Memorymodel=1 +Flashobj=0 +FlashStartadr= +FlashBranchStartadr= +Mirror=0 +Saddrglobalchk=0 +Saddrglobal=1066 +Saddrstaticchk=0 +Saddrstatic=1072 +Bitfieldmsb=0 +Onebytechk=0 +Pacstructchk=0 +AssignROMchk=0 +AssignROM=0 +Maxoptimizechk=0 +Maxoptimize=1104 +Charunexpandchk=0 +Unsignedchar=0 +Usesaddrchk=0 +Autoallocationchk=1 +Jumpoptimize=1 +Librarycallchk=1 +Librarycall=1132 +Aggressivechk=1 +Relativebranchchk=1 +Debugoptchk=0 +Outdebugchk=1 +Outdebug=1153 +Outasmsrccmb0=inter_asm +Outasmsrccmb1=bsr.asm +Outasmsrcchk=1 +Outasmsrc=1158 +Outasmoptall=1 +Common=0 +Outerrlistchk=0 +Outerrlist=1174 +Xreference=0 +Preprocess=0 +Prenocomment=0 +Predefine=0 +Preifdef=1 +Preinclude=1 +Preline=1 +Prenumber=1 +Formfeed=0 +Columns=132 +Lines=0 +Tablength=8 +Ansi=0 +Cpraspras=1 +Commentnest=0 +Intunexpand=0 +Kanjicode=1210 +Verbose=0 +CommandFile=0 +Warninglevel=1 +Startupchk=1 +Fixation=0 +FarROMization=0 +Objectsel=1305 +Librarychk=1 +Floatingpoint=0 +Muldivunit=1 +Mulunit=1 +Startup=s0rm.rel +Library1=cl0rdm.lib +Library2=cl0rm.lib +Library3=cl0rmf.lib +VfiFileBoot0= +VfiFileBoot1=boot.vfi +VF78K0Rchk=0 +VF78K0Rvs= +[ToolSet] +ToolSetName=(ύX)78K0R Software Package V1.10 +Tool1=CC78K0R|W2.10 +Tool2=RA78K0R|W1.31 +Tool3=ID78K0R-QB|V3.60