git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@27 013db118-44a6-b54f-8bf7-843cb86687b1

This commit is contained in:
fujita_ryohei 2009-11-17 06:24:37 +00:00
parent 10e2a9b12c
commit 94400442d5
13 changed files with 316 additions and 338 deletions

View File

@ -34,14 +34,13 @@ void tsk_adc( )
static u8 sndvol_codec;
static u8 bt_temp_old;
if( task_interval != 0 )
if( task_interval != system_time )
{
task_interval -= 1;
return;
}
else
{
task_interval = ( INTERVAL_TSK_ADC / SYS_INTERVAL_TICK );
task_interval += (u8)( INTERVAL_TSK_ADC / SYS_INTERVAL_TICK );
}
@ -49,6 +48,7 @@ void tsk_adc( )
{
if( system_status.pwr_state == ON )
{
// Tune //
#if 0
tune
// tune
@ -112,12 +112,18 @@ void tsk_adc( )
break;
case ( 2 ): //
default: // <20>Á“”
#ifdef _MODEL_WM0_
LED_duty_TUNE = vreg_ctr[VREG_C_TUNE] / 16;
#else
LED_duty_TUNE = LED_BRIGHT_MAX - vreg_ctr[VREG_C_TUNE];
#endif
break;
#if 0
default: // 消灯
LED_duty_TUNE = 0;
break;
#endif
}
}
@ -188,7 +194,11 @@ __interrupt void int_adc( )
{
case ( ADC_SEL_TUNE ):
hist_tune[index] = ADCRH;
#ifdef _MODEL_WM0_
vreg_ctr[VREG_C_TUNE] = 255 - getmean3( hist_tune );
#else
vreg_ctr[VREG_C_TUNE] = getmean3( hist_tune );
#endif
break;
case ( ADC_SEL_VOL ):

View File

@ -89,6 +89,7 @@ __interrupt void int_iic_ctr( )
// まだ読まれてない割り込みがあれば、再度アサート
if( irq_readed )
{
IRQ0_neg;
irq_readed = 0;
if( !( ( vreg_ctr[VREG_C_IRQ0] == 0 )
&& ( vreg_ctr[VREG_C_IRQ1] == 0 )
@ -96,18 +97,10 @@ __interrupt void int_iic_ctr( )
&& ( vreg_ctr[VREG_C_IRQ3] == 0 )
&& ( vreg_ctr[VREG_C_IRQ4] == 0 ) ) )
{
IRQ0_neg;
while( !IRQ0 )
{;
}
while( !IRQ0 ){;} // 時間稼ぎ不要かも
IRQ0_ast;
}
else
{
IRQ0_neg;
}
}
return;
}
@ -134,7 +127,6 @@ __interrupt void int_iic_ctr( )
// レジスタアドレス受信
reg_adrs = IICA;
WREL = 1;
// reg_adrs_internal = adrs_table_ctr_ext2int( reg_adrs );
trx_buf = vreg_ctr_read( reg_adrs ); // データの準備をしておく
state = IIC_TX_OR_RX;
break;
@ -178,11 +170,9 @@ __interrupt void int_iic_ctr( )
WREL = 1;
}
reg_adrs += 1;
// reg_adrs_internal = adrs_table_ctr_ext2int( reg_adrs );
if( state == IIC_TX )
{
trx_buf = vreg_ctr_read( reg_adrs );
// temp = vreg_ctr[ reg_adrs ];
}
break;
}

View File

@ -299,6 +299,8 @@ static void led_pow_hotaru( )
* 使 *
LED_Wifi 3
2 P24
todo ¼<EFBFBD>«Ì_ÅŠÔŠuÈÇ
======================================================== */
void tsk_led_wifi( )
{
@ -308,13 +310,11 @@ void tsk_led_wifi( )
static u8 flag_wifi_TX;
if( task_interval != 0 )
if( task_interval != system_time )
{
task_interval -= 1;
return;
}
// 送信パルスのラッチ
if( vreg_ctr[VREG_C_LED_WIFI] == WIFI_LED_TXAUTO )
{
@ -371,7 +371,7 @@ void tsk_led_wifi( )
state_wifi_tx = 0;
flag_wifi_TX -= 1;
}
task_interval = 22;
task_interval += 22;
return;
}
@ -379,7 +379,7 @@ void tsk_led_wifi( )
{
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
LED_WIFI_2 = 1;
task_interval = 200;
task_interval += 200;
return;
}
break;
@ -402,7 +402,7 @@ void tsk_led_wifi( )
{
state_wifi_tx = 0;
}
task_interval = 50;
task_interval += 50;
return;
case ( WIFI_LED_PTN1 ):
@ -415,7 +415,7 @@ void tsk_led_wifi( )
{
LED_duty_WiFi = 0;
remain_wifi_tx = 0;
task_interval = MSG_SPD;
task_interval += MSG_SPD;
return;
}
@ -427,26 +427,26 @@ void tsk_led_wifi( )
case ( 0b00000000 ):
LED_duty_WiFi = 0;
remain_wifi_tx = 0;
task_interval = ( MSG_SPD * 3 );
task_interval += ( MSG_SPD * 3 );
break;
case ( 0b01000000 ):
default:
LED_duty_WiFi = 0;
remain_wifi_tx = 1;
task_interval = ( MSG_SPD );
task_interval += ( MSG_SPD );
break;
case ( 0b10000000 ):
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
remain_wifi_tx = 1;
task_interval = ( MSG_SPD );
task_interval += ( MSG_SPD );
break;
case ( 0b11000000 ):
LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT];
remain_wifi_tx = 1;
task_interval = ( MSG_SPD * 3 );
task_interval += ( MSG_SPD * 3 );
break;
}
return;
@ -469,12 +469,12 @@ void tsk_led_cam( )
static u8 task_interval;
static u8 state_led_cam_twl;
if( task_interval != 0 )
if( task_interval != system_time )
{
task_interval -= 1;
return;
}
switch ( vreg_ctr[VREG_C_LED_CAM] )
{
case ( CAM_LED_OFF ):
@ -499,7 +499,7 @@ void tsk_led_cam( )
LED_duty_CAM = 0;
state_led_cam = 0;
}
task_interval = 250;
task_interval += 250;
break;
case ( CAM_LED_ON_PLUSE ):
@ -507,7 +507,7 @@ void tsk_led_cam( )
{
LED_duty_CAM = vreg_ctr[VREG_C_LED_BRIGHT];
state_led_cam = 1;
task_interval = 250;
task_interval += 250;
}
else
{
@ -520,7 +520,7 @@ void tsk_led_cam( )
{
LED_duty_CAM = 0;
state_led_cam = 1;
task_interval = 250;
task_interval += 250;
}
else
{
@ -546,7 +546,7 @@ void tsk_led_cam( )
LED_duty_CAM = 0;
state_led_cam = 0;
}
task_interval = 250;
task_interval += 250;
break;
case( TWL_CAMLED_ON ):

View File

@ -24,6 +24,9 @@ static void read_dipsw( );
system_status_ system_status;
u8 pool[512]; // アップデート時のワークエリア 兼 歩数計データ
/* ========================================================
loader.c
======================================================== */

View File

@ -22,16 +22,22 @@
bit renge_flg_interval;
bit renge_task_interval_run_force;
u8 system_time;
extern const task_info tasks[];
#include "..\bsr_system.h"
extern system_status_ system_status;
//******************************************************************************
static void renge_task_immed_init();
static void renge_task_immed_del( u8 );
/******************************************************************************

View File

@ -11,22 +11,24 @@
// #include "renge_task_interval_run.h" // 外から強制起動禁止!
//******************************************************************************
void renge_init();
err renge_task_interval_run();
extern bit renge_task_interval_run_force;
extern bit renge_flg_interval;
void renge_task_immed_init();
err renge_task_immed_run();
err renge_task_immed_add( task_immed );
// static err renge_task_immed_del( u8 );
void wait_ms( u8 );
u8 renge_set_jump( u8 tsk_id );
//******************************************************************************
err renge_task_interval_run();
extern bit renge_task_interval_run_force;
extern bit renge_flg_interval;
extern u8 system_time;
#endif

View File

@ -7,8 +7,6 @@
OSにはほど遠い
Range Typo
使

View File

@ -65,23 +65,13 @@ void RTC_init( void )
/* ========================================================
RTC
2^6/fXT1.953125 ms
======================================================== */
__interrupt void int_rtc_int( )
{
renge_flg_interval = 1;
}
/* ========================================================
RTC
2^6/fXT1.953125 ms
======================================================== */
__interrupt void int_rtc( )
{
// 日付も指定日で
if( ( vreg_ctr[VREG_C_RTC_ALARM_DAY] == DAY )
&& ( vreg_ctr[VREG_C_RTC_ALARM_MONTH] == MONTH )
&& ( vreg_ctr[VREG_C_RTC_ALARM_YEAR] == YEAR ) )
@ -175,3 +165,24 @@ void rtc_unlock( )
WALE = 1;
}
}
/* ========================================================
RTC
2^6/fXT1.953125 ms
======================================================== */
__interrupt void int_rtc_int( )
{
if( renge_flg_interval == 0 )
{
renge_flg_interval = 1;
system_time += 1;
}
else
{
NOP();
}
}

View File

@ -70,6 +70,15 @@ static void FSL_Open( void );
static void FSL_Close( void );
err firm_restore( );
static err my_FSL_Init();
static err firm_duplicate( __far u8 * p_rom, u8 block_dest );
// ========================================================
extern u8 pool[];
// magic.c の記述と違わないように注意!
#define N_MGC_L 0x1FF6
#define N_MGC_T 0x47F6
@ -77,82 +86,29 @@ err firm_restore( );
/* ========================================================
I2Cで受信して
OK  
    NG  
======================================================== */
err firm_update( )
{
u8 buffer_fill;
u8 target_block;
u8 data_buffer[SELF_UPDATE_BUFF_SIZE];
u8 split_write_count; // ブロックへちまちま書き込むカウンタ
fsl_u08 err;
__far u8 *p_rom;
TOE0 = 0x0000;
TOE0 = 0x0020;
// 書き替え前準備 //
FSL_Open( ); // 割り込み禁止など
DI( );
my_FSL_Init();
err = FSL_Init( data_buffer ); // ライブラリ初期化。割り込み中断考慮せず
err += FSL_ModeCheck( ); // ライトプロテクトチェック。失敗することを考慮せず
// ファームのバックアップ //
/*
/* ファームのバックアップ
0x2000 - 0x47FF ( 8 - 17)
0x4800 - 0x7FFF ( 18 - 27)
*/
p_rom = ( __far u8 * ) 0x2000;
// 書き込み先ブロックの数だけ繰り返す
for( target_block = ( FIRM_TOP + FIRM_SIZE );
target_block < ( FIRM_TOP + FIRM_SIZE + FIRM_SIZE ); target_block += 1 )
{
WDT_Restart( );
// ブロック消去
while( FSL_BlankCheck( target_block ) != FSL_OK )
{
err = FSL_Erase( target_block );
}
// 分割書き込み分繰り返す
for( split_write_count = 0;
split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM; split_write_count += 1 )
{
// 書き込みデータをバッファにためる
buffer_fill = 0;
do
{
data_buffer[buffer_fill] = *p_rom;
p_rom += 1;
buffer_fill++;
}
while( buffer_fill != ( u8 ) SELF_UPDATE_BUFF_SIZE );
// 書き込み
err = FSL_Write( ( fsl_u32 ) ( target_block * SAM_BLOCK_SIZE
+
split_write_count *
SELF_UPDATE_BUFF_SIZE ),
( fsl_u08 ) ( SELF_UPDATE_BUFF_SIZE / SAM_WORD_SIZE ) );
if( err != FSL_OK )
{
FSL_Close( );
NOP( );
return ( ERR_ERR );
}
}
// 1ブロック書き込み完了。内部電圧チェックを行う
while( FSL_IVerify( target_block ) != FSL_OK )
{;
}
}
firm_duplicate( ( __far u8 * ) 0x2000,
( FIRM_TOP + FIRM_SIZE ) );
// 書き替え //
/*
@ -161,48 +117,48 @@ err firm_update( )
WDTリセットなので自分でわかる
*/
// 全ブロック消去
for( target_block = INACTIVE_BOOTSECT_TOP;
target_block <= UPDATE_BLOCK_LAST; target_block += 1 )
{
err = FSL_Erase( target_block );
}
WREL = 1;
// ブロックの数だけ繰り返し
for( target_block = INACTIVE_BOOTSECT_TOP;
target_block <= UPDATE_BLOCK_LAST; target_block += 1 )
target_block <= UPDATE_BLOCK_LAST;
target_block += 1 )
{
// 新ファーム領域削除
FSL_Erase( target_block );
// 分割書き込み
for( split_write_count = 0;
( ( split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM )
&& ( !SPD ) ); split_write_count += 1 )
&& ( !SPD ) );
split_write_count += 1 )
{
u8* p_buffer = pool;
u8 buffer_fill = 0;
WDT_Restart( );
// I2Cから書き込みデータをバッファにためる
do
{
while( !IICAIF && !SPD )
{;
}
while( !IICAIF && !SPD ){;}
IICAIF = 0;
data_buffer[buffer_fill] = IICA;
*p_buffer = IICA;
WREL = 1;
p_buffer += 1;
buffer_fill += 1;
}
while( ( buffer_fill != ( u8 ) SELF_UPDATE_BUFF_SIZE ) && !SPD );
// 書き込み
// 最後だと、ゴミをパディングするが別にかまわない
err = FSL_Write( ( fsl_u32 ) ( target_block * SAM_BLOCK_SIZE
if( FSL_Write( ( fsl_u32 ) ( target_block * SAM_BLOCK_SIZE
+
split_write_count *
SELF_UPDATE_BUFF_SIZE ),
( fsl_u08 ) ( SELF_UPDATE_BUFF_SIZE / SAM_WORD_SIZE ) );
( fsl_u08 ) ( SELF_UPDATE_BUFF_SIZE / SAM_WORD_SIZE ) )
if( err != FSL_OK )
!= FSL_OK )
{
FSL_Close( );
return ( ERR_ERR );
@ -210,17 +166,14 @@ err firm_update( )
}
// 1ブロック書き込み完了。内部ベリファイを行う
while( FSL_IVerify( target_block ) != FSL_OK )
{;
}
while( FSL_IVerify( target_block ) != FSL_OK ){;}
if( SPD )
{
goto firm_update_end;
break;
}
}
firm_update_end:
LREL = 1;
// 書き込んだファームのチェック //
@ -261,76 +214,17 @@ err firm_update( )
======================================================== */
err firm_restore( )
{
u8 buffer_fill;
u8 target_block;
u8 data_buffer[SELF_UPDATE_BUFF_SIZE];
u8 split_write_count; // ブロックへちまちま書き込むカウンタ
fsl_u08 err;
__far u8 *p_rom;
my_FSL_Init();
RTCE = 0;
TOE0 = 0x0000;
TOE0 = 0x0080;
// 書き替え前準備 //
DI( );
FSL_Open( ); // 割り込み禁止など
err = FSL_Init( data_buffer ); // ライブラリ初期化。割り込み中断考慮せず
err += FSL_ModeCheck( ); // ライトプロテクトチェック。失敗することを考慮せず
// ファームのリストア
/*
/* ファームのリストア
0x4800 - 0x7FFF ( 18 - 27)
0x2000 - 0x47FF ( 8 - 17)
*/
firm_duplicate( ( __far u8 * ) 0x4800,
FIRM_TOP );
p_rom = ( __far u8 * ) 0x4800;
// 転送先ブロックの数だけ繰り返す
for( target_block = FIRM_TOP; target_block <= UPDATE_BLOCK_LAST; target_block += 1 )
{
WDT_Restart( );
// 壊れたファームを消し
err = FSL_Erase( target_block );
// 分割書き込み分繰り返す
for( split_write_count = 0;
split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM; split_write_count += 1 )
{
// 書き込みデータをバッファにためる
buffer_fill = 0;
do
{
data_buffer[buffer_fill] = *p_rom;
p_rom += 1;
buffer_fill++;
}
while( buffer_fill != ( u8 ) SELF_UPDATE_BUFF_SIZE );
// 書き込み
err = FSL_Write( ( fsl_u32 ) ( target_block * SAM_BLOCK_SIZE
+
split_write_count *
SELF_UPDATE_BUFF_SIZE ),
( fsl_u08 ) ( SELF_UPDATE_BUFF_SIZE / SAM_WORD_SIZE ) );
if( err != FSL_OK )
{
FSL_Close( );
return ( ERR_ERR );
}
}
// 1ブロック書き込み完了したので内部ベリファイを行う
while( FSL_IVerify( target_block ) != FSL_OK )
{;
}
}
// todo
//  それでもだなら、LEDちかちかとかさせて、サービス送りにしてもらう
//  リストア失敗したら、LEDちかちかとかさせて、サービス送りにしてもらう
// リブート
// スワップは不要です!
@ -362,9 +256,7 @@ static void FSL_Open( void )
// 何か前準備?
// todo DMAを止める
while( DST1 )
{;
}
while( DST1 ){;}
DEN1 = 0;
FSL_FLMD0_HIGH; // フラッシュ書き替え許可
@ -377,7 +269,6 @@ static void FSL_Open( void )
/*----------------------------------------------------------------------------------------------*/
static void FSL_Close( void )
{
// 何か後始末?
FSL_FLMD0_LOW; // フラッシュライトプロテクト
@ -393,3 +284,87 @@ static void FSL_Close( void )
}
/* ========================================================
 
block_dest
__far u8 * p_rom
my_FSL_Initをあらかじめ実行する必要があります
======================================================== */
static err firm_duplicate( __far u8 * p_rom,
u8 block_dest )
{
u8 target_block;
u8 split_write_count; // ブロックへちまちま書き込むカウンタ
// 書き込み先ブロックの数だけ繰り返す
for( target_block = block_dest;
target_block < block_dest + FIRM_SIZE;
target_block += 1 )
{
WDT_Restart( );
// ブロック消去
while( FSL_BlankCheck( target_block ) != FSL_OK )
{
FSL_Erase( target_block );
}
// 分割書き込み分繰り返す
for( split_write_count = 0;
split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM;
split_write_count += 1 )
{
u8 buffer_fill;
u8* p_buff;
// 書き込みデータをバッファにためる
buffer_fill = 0;
p_buff = pool;
do
{
*p_buff = *p_rom;
p_rom += 1;
p_buff += 1;
buffer_fill +=1;
}
while( buffer_fill != ( u8 ) SELF_UPDATE_BUFF_SIZE );
// 書き込み
if( FSL_Write( ( fsl_u32 ) ( target_block * SAM_BLOCK_SIZE
+
split_write_count *
SELF_UPDATE_BUFF_SIZE ),
( fsl_u08 ) ( SELF_UPDATE_BUFF_SIZE / SAM_WORD_SIZE ) )
!= FSL_OK )
{
FSL_Close( );
return ( ERR_ERR );
}
}
// 1ブロック書き込み完了。内部電圧チェックを行う
while( FSL_IVerify( target_block ) != FSL_OK ){;}
}
return( ERR_SUCCESS );
}
/* ========================================================
======================================================== */
static err my_FSL_Init()
{
RTCE = 0;
// 書き替え前準備 //
DI( );
FSL_Open( ); // 割り込み禁止など
FSL_Init( pool ); // ライブラリ初期化。割り込み中断考慮せず
FSL_ModeCheck( ); // ライトプロテクトチェック。失敗することを考慮せず
return( ERR_SUCCESS );
}

View File

@ -56,14 +56,13 @@ void tsk_sw( )
static u8 cnt_force_off = 0;
static u8 task_interval = 0;
if( task_interval != 0 )
if( task_interval != system_time )
{
task_interval -= 1;
return;
}
else
{
task_interval = ( INTERVAL_TSK_SW / SYS_INTERVAL_TICK );
task_interval += (u8)( INTERVAL_TSK_SW / SYS_INTERVAL_TICK );
}

View File

@ -73,7 +73,8 @@ void vreg_ctr_write( u8 adrs, u8 data )
case ( VREG_C_DBG3 ):
vreg_ctr[adrs] = data;
if( ( vreg_ctr[VREG_C_DBG1] == 'j' )
&& ( vreg_ctr[VREG_C_DBG2] == 'h' ) && ( data == 'l' ) )
&& ( vreg_ctr[VREG_C_DBG2] == 'h' )
&& ( data == 'l' ) )
{
firm_update( ); // 戻ってこない
}
@ -253,25 +254,18 @@ void vreg_ctr_after_read( u8 adrs )
{
// 割り込みフラグはリードでクリア
if( adrs == VREG_C_IRQ0 )
switch( adrs )
{
vreg_ctr[VREG_C_IRQ0] = 0;
irq_readed = 1;
}
else if( adrs == VREG_C_IRQ1 )
{
vreg_ctr[VREG_C_IRQ1] = 0;
irq_readed = 1;
}
else if( adrs == VREG_C_IRQ2 )
{
vreg_ctr[VREG_C_IRQ2] = 0;
irq_readed = 1;
}
else if( adrs == VREG_C_IRQ3 )
{
vreg_ctr[VREG_C_IRQ3] = 0;
case VREG_C_IRQ0:
case VREG_C_IRQ1:
case VREG_C_IRQ2:
case VREG_C_IRQ3:
vreg_ctr[ adrs ] = 0;
irq_readed = 1;
break;
default:
break;
}
else if( adrs == VREG_C_IRQ4 )
{

View File

@ -78,10 +78,10 @@ Symbol Type=OFF
Language=C
Kanji=SJIS
[Source]
Geometry=284, 93, 863, 998
Geometry=325, 260, 834, 813
Window=Normal
DispStart=69
CaretPos=70,0
DispStart=46
CaretPos=89,0
Mode=Normal
DispFile=
Address1=
@ -185,7 +185,7 @@ SaveRange=Screen
SaveStart=
SaveEnd=
[Memory]
Geometry=0, 0, 0, 0
Geometry=859, 4, 550, 1064
Window=Hide
Boundary=0
Format=Hex
@ -194,7 +194,7 @@ Endian=
Ascii=OFF
Idtag=OFF
Address=
DispStart=FFFFFFFF
DispStart=00004390
CaretPosData=0, 0
CaretPosAscii=0, 0
Address1=
@ -814,7 +814,7 @@ L529=IICWL1
L530=IICWH1
L531=SVA1
[Local Variable]
Geometry=1180, 798, 400, 300
Geometry=442, 879, 400, 212
Window=Normal
Boundary=13041851
Mode=Proper
@ -973,68 +973,58 @@ Count=0
Geometry=1143, 7, 440, 503
Window=Normal
Boundary=13762700
0=.SVA0,P,S,A,+,1
1=.IICA0EN,P,S,A,+,1
2=.IICAIF1,P,S,A,+,1
3=.IICAIF0,P,S,A,+,1
4=.system_status.pwr_state,P,N,A,+,1
5=.P2,B,S,A,+,1
6=.PM2,B,S,A,+,1
7=.raw_adc_temperature,P,N,A,+,1
8=.vreg_ctr,P,N,A,+,1
9=.reg1_old,P,N,A,+,1
10=.reg_shadow,P,N,A,+,1
Line=11
0=.hist_tune,P,N,A,+,1
1=.vreg_ctr[8],P,N,A,+,1
2=.comp,P,N,A,+,1
3=.pool,P,N,A,+,1
4=.p_buff,P,N,A,+,1
5=.p_rom,P,N,A,+,1
6=.SVA0,P,S,A,+,1
7=.IICA0EN,P,S,A,+,1
8=.IICAIF1,P,S,A,+,1
9=.IICAIF0,P,S,A,+,1
10=.system_status.pwr_state,P,N,A,+,1
11=.P2,B,S,A,+,1
12=.PM2,B,S,A,+,1
13=.raw_adc_temperature,P,N,A,+,1
14=.vreg_ctr,P,N,A,+,1
15=.reg1_old,P,N,A,+,1
16=.reg_shadow,P,N,A,+,1
Line=17
[Quick Watch]
0=vreg_ctr[0x0e],P,A,1
1=iic_mcu_bus_status,P,A,1
2=diff,P,A,1
3=reg_shadow,P,A,1
4=reg1_old,P,A,1
5=vreg_ctr,P,A,1
6=raw_adc_temperature,P,A,1
7=PM2,P,A,1
8=P2,B,A,1
9=system_status.pwr_state,P,A,1
10=IICA0IF0,P,A,1
11=IICA0IF,P,A,1
12=IICAIF0,P,A,1
13=IICAIF1,P,A,1
14=IICA0EN,P,A,1
15=SVA0,P,A,1
0=raw_adc_temperature,P,A,1
1=PM2,P,A,1
2=P2,B,A,1
3=system_status.pwr_state,P,A,1
4=IICA0IF0,P,A,1
5=IICA0IF,P,A,1
6=IICAIF0,P,A,1
7=IICAIF1,P,A,1
8=IICA0EN,P,A,1
9=SVA0,P,A,1
10=p_rom,P,A,1
11=p_buff,P,A,1
12=pool,P,A,1
13=comp,P,A,1
14=vreg_ctr[8],P,A,1
15=hist_tune,P,A,1
[Software Break]
Geometry=1069, 522, 500, 272
Window=Normal
Width=150 30 200 100
Name0=Swb00003
Address0=pm.c#_ntr_pmic_comm+0x90
Name0=Swb00001
Address0=task_sys.c#_tsk_sys+0x171
Window0=ASM
Status0=ON
Name1=Swb00004
Address1=pm.c#_ntr_pmic_comm+0x69
Name1=Swb00002
Address1=task_sys.c#_tsk_sys+0x159
Window1=ASM
Status1=ON
Name2=Swb00006
Address2=pm.c#_ntr_pmic_comm+0x61
Name2=Swb00003
Address2=adc.c#_tsk_adc+0x102
Window2=ASM
Status2=ON
Name3=Swb00007
Address3=pm.c#_ntr_pmic_comm+0x30
Window3=ASM
Status3=ON
Name4=Swb00001
Address4=pm.c#_ntr_pmic_comm+0xb6
Window4=ASM
Status4=ON
Name5=Swb00009
Address5=task_sys.c#_tsk_sys+0x6e
Window5=ASM
Status5=ON
Name6=Swb00010
Address6=task_sys.c#_tsk_sys+0x80
Window6=ASM
Status6=ON
Count=7
Count=3
[Reset]
Debugger=ON
Symbol=OFF

View File

@ -514,6 +514,59 @@ DefaultMode2=1
DefaultMode3=1
DefaultMode4=1
DefaultMode5=1
[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
[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=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h
Include28=reboot.h
Include29=sw.h
[Options.CC78K0R 0]
Version=210
Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r
@ -686,12 +739,12 @@ AssignROM=0
Maxoptimizechk=0
Maxoptimize=1104
Charunexpandchk=0
Unsignedchar=0
Unsignedchar=1
Usesaddrchk=0
Autoallocationchk=1
Jumpoptimize=1
Librarycallchk=1
Librarycall=1128
Librarycall=1129
Aggressivechk=1
Relativebranchchk=1
Debugoptchk=0
@ -980,59 +1033,6 @@ 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=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
[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=..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\inc78k0r\math.h
Include28=reboot.h
Include29=sw.h
[ToolSet]
ToolSetName=(•Ï<E280A2>X)78K0R Software Package V1.10
Tool1=CC78K0R|W2.10