V0.3 final

V0.4でレジスタなどがらっと変えてしまうつもりで、#ifdef ではつらいため、
きれいにしてしまいます。

git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@10 013db118-44a6-b54f-8bf7-843cb86687b1
This commit is contained in:
fujita_ryohei 2009-09-16 06:41:53 +00:00
parent 218026b2e2
commit 4f86e7aa2d
18 changed files with 345 additions and 340 deletions

View File

@ -1,8 +1,6 @@
#ifndef __bsr_system__ #ifndef __bsr_system__
#define __bsr_system__ #define __bsr_system__
#include "jhl_defs.h"
// イベントループのステート // イベントループのステート
enum pwr_state_{ enum pwr_state_{
OFF_TRIG = 0, OFF_TRIG = 0,
@ -24,9 +22,9 @@ enum poweron_reason_{
typedef struct{ typedef struct{
enum pwr_state_ pwr_state; enum pwr_state_ pwr_state;
enum poweron_reason_ poweron_reason; enum poweron_reason_ poweron_reason;
u8 dipsw0 :1; unsigned char dipsw0 :1;
u8 dipsw1 :1; unsigned char dipsw1 :1;
u8 dipsw2 :1; unsigned char dipsw2 :1;
}system_status_; }system_status_;
extern system_status_ system_status; extern system_status_ system_status;

View File

@ -8,7 +8,16 @@
// u16 tot; // u16 tot;
#ifndef _PMIC_CTR_
#define IRQ0_neg { PM3.0 = 1; }
#else
#define IRQ0_neg { PM7.6 = 1; }
#endif
#ifdef _MCU_BSR_ #ifdef _MCU_BSR_
#ifdef 1
//#ifdef _MODEL_WM0_ //#ifdef _MODEL_WM0_
// ワーキングモデルはI2Cが逆 // ワーキングモデルはI2Cが逆
@ -37,9 +46,10 @@
#define SVA SVA1 #define SVA SVA1
#define WREL WREL1 #define WREL WREL1
#define WTIM WTIM1 #define WTIM WTIM1
#define TRC TRC1
//#else #else
#define ACKD ACKD0 #define ACKD ACKD0
#define ACKE ACKE0 #define ACKE ACKE0
@ -67,7 +77,7 @@
#define WREL WREL0 #define WREL WREL0
#define WTIM WTIM0 #define WTIM WTIM0
//#endif #endif
#endif #endif
@ -100,9 +110,22 @@ __interrupt void int_iic_ctr(){
return; return;
} }
// 読み出し終了
if( !ACKD ){ if( !ACKD ){
LREL = 1;
state = IIC_IDLE; state = IIC_IDLE;
SPIE = 0;
LREL = 1;
rtc_unlock();
// IRQレジスタリードで、割り込みピンの設定
IRQ0_neg;
if(! (( vreg_ctr[ VREG_C_IRQ0 ] == 0 )
&& ( vreg_ctr[ VREG_C_IRQ1 ] == 0 )
&& ( vreg_ctr[ VREG_C_IRQ2 ] == 0x02 )) ){ // 暫定
IRQ0_ast;
}
return; return;
} }
@ -111,8 +134,8 @@ __interrupt void int_iic_ctr(){
case( IIC_IDLE ): case( IIC_IDLE ):
// 自局呼び出しに応答。 // 自局呼び出しに応答。
// 初期化など // 初期化など
WREL = 1; // ウェイト解除
SPIE = 1; SPIE = 1;
WREL = 1; // ウェイト解除
state = IIC_RCV_REG_ADRS; state = IIC_RCV_REG_ADRS;
break; break;
@ -126,36 +149,38 @@ __interrupt void int_iic_ctr(){
break; break;
case( IIC_TX_OR_RX ): case( IIC_TX_OR_RX ):
if( TRC ){ // if( TRC ){ // 送信方向フラグ
// if( STD ){ if( STD ){ // スタートコンディション検出フラグ
// リードされる // リードされる
if( COI ){ if( COI ){ // アドレス一致フラグ
state = IIC_TX; state = IIC_TX;
// no break, no return //
}else{ }else{
// リスタートで違うデバイスが呼ばれた! // リスタートで違うデバイスが呼ばれた!
WREL = 1; // ウェイト解除?
state = IIC_IDLE; // 終了処理 state = IIC_IDLE; // 終了処理
SPIE = 0; SPIE = 0;
LREL = 1; // ウェイト解除?
return; return;
} }
}else{ }else{
state = IIC_RX; state = IIC_RX; // データ1バイト受信の割り込みだった
// no break, no return //
} }
// no break; //
default: default:
if( state == IIC_TX ){ if( state == IIC_TX ){ // 送信
IICA = trx_buf; IICA = trx_buf;
vreg_ctr_after_read( reg_adrs ); // 読んだらクリアなどの処理 vreg_ctr_after_read( reg_adrs ); // 読んだらクリアなどの処理
}else{ }else{
// RX
trx_buf = IICA; trx_buf = IICA;
WREL = 1;
vreg_ctr_write( reg_adrs, trx_buf ); vreg_ctr_write( reg_adrs, trx_buf );
WREL = 1;
} }
reg_adrs += 1; reg_adrs += 1;
// reg_adrs_internal = adrs_table_ctr_ext2int( reg_adrs ); // reg_adrs_internal = adrs_table_ctr_ext2int( reg_adrs );
if( state == IIC_TX ){ if( state == IIC_TX ){
trx_buf = vreg_ctr_read( reg_adrs ); trx_buf = vreg_ctr_read( reg_adrs );
// temp = vreg_ctr[ reg_adrs ]; // temp = vreg_ctr[ reg_adrs ];
} }
break; break;

View File

@ -65,11 +65,14 @@ u8 iic_mcu_bus_status; //
======================================================== */ ======================================================== */
u8 iic_mcu_read_a_byte( u8 SLA, u8 adrs ){ u8 iic_mcu_read_a_byte( u8 SLA, u8 adrs ){
u8 dat; u8 dat;
if( iic_mcu_initialized == 0 ){
#ifdef _debug_ #ifdef _debug_
iic_mcu_start(); iic_mcu_start();
#else #else
while(1){}; while(1){};
#endif #endif
}
while( iic_mcu_busy ){ while( iic_mcu_busy ){
NOP(); NOP();
@ -183,7 +186,6 @@ err iic_mcu_read( u8 slave, u8 adrs, u8 len, u8* dest ){
IICIF10 = 0; IICIF10 = 0;
iic_mcu_busy = 0; iic_mcu_busy = 0;
return( ERR_SUCCESS ); return( ERR_SUCCESS );
} }
@ -205,13 +207,13 @@ err iic_mcu_write_a_byte( u8 SLA, u8 adrs, u8 dat ){
while(1){}; while(1){};
#endif #endif
} }
while( iic_mcu_busy ){ while( iic_mcu_busy ){
NOP(); NOP();
} }
iic_mcu_busy = 1; iic_mcu_busy = 1;
#if 0 #if 0
temp = dat; temp = dat;
return( iic_mcu_write( SLA, adrs, 1, &temp ) ); return( iic_mcu_write( SLA, adrs, 1, &temp ) );
} }
#else #else
// スタートコンディションとスレーブの呼び出し... // スタートコンディションとスレーブの呼び出し...
@ -267,48 +269,48 @@ err iic_mcu_write( u8 slave, u8 adrs, u8 len, u8* src ){
return( 3 ); return( 3 );
} }
//*/ //*/
iic_mcu_busy = 1; iic_mcu_busy = 1;
// スタートコンディションとスレーブの呼び出し... // スタートコンディションとスレーブの呼び出し...
IICMK10 = 1; IICMK10 = 1;
if( iic_mcu_call_slave( slave ) != 0 ){ if( iic_mcu_call_slave( slave ) != 0 ){
iic_mcu_busy = 0; iic_mcu_busy = 0;
EI();
return( ERR_NAK ); return( ERR_NAK );
} }
if( !iic_mcu_wo_dma ){ if( !iic_mcu_wo_dma ){
// DMAを使用する通常 // DMAを使用する通常
// レジスタアドレスを送り、データの準備 // レジスタアドレスを送り、データの準備
memcpy( iic_send_work, src, 4 ); //バッファとして4バイトしか用意して無いため。 memcpy( iic_send_work, src, 4 ); //バッファとして4バイトしか用意して無いため。
// DMAセット // DMAセット
while( DST1 ){;}; while( DST1 ){;};
DEN1 = 1; DEN1 = 1;
DSA1 = (u8)( &SIO10 ); DSA1 = (u8)( &SIO10 );
DRA1 = (u16)iic_send_work; DRA1 = (u16)iic_send_work;
DBC1 = len; DBC1 = len;
DMC1 = DRS | 8; // RAM -> SFR, 8bit, IRQ, IIC10 DMC1 = DRS | 8; // RAM -> SFR, 8bit, IRQ, IIC10
DMAIF1 = 0; DMAIF1 = 0;
DMAMK1 = 0; DMAMK1 = 0;
DST1 = 1; DST1 = 1;
SIO10 = adrs; // 書きっぱなし! 割り込みが発生してDMAスタート SIO10 = adrs; // 書きっぱなし! 割り込みが発生してDMAスタート
// 残りは割り込みルーチン内で // 残りは割り込みルーチン内で
}else{ }else{
// DMAを使用しない // // DMAを使用しない //
// レジスタアドレスの送信 // レジスタアドレスの送信
IICIF10 = 0; IICIF10 = 0;
SIO10 = adrs; SIO10 = adrs;
IICMK10 = 0; IICMK10 = 0;
iic_send_wo_dma_len = len; iic_send_wo_dma_len = len;
p_iic_send_wo_dma_dat = src; p_iic_send_wo_dma_dat = src;
// 残りは割り込みルーチン内で // 残りは割り込みルーチン内で
} }
return( ERR_SUCCESS ); return( ERR_SUCCESS );
} }
@ -320,10 +322,14 @@ err iic_mcu_write( u8 slave, u8 adrs, u8 len, u8* src ){
DMA転送が終わっただけでI2Cの転送は終わってません DMA転送が終わっただけでI2Cの転送は終わってません
======================================================== */ ======================================================== */
__interrupt void int_dma1(){ __interrupt void int_dma1(){
u8 hoge;
hoge = IICIF10;
DMAMK1 = 1; DMAMK1 = 1;
DEN1 = 0; DEN1 = 0;
IICMK10 = 0; IICMK10 = 0;
while( SSR02 & ( 1 << TSF0 )){;} while(( SSR02 & TSF0 ) != 0 ){
NOP();
}
// 最後のバイト転送後、I2C割り込みが発生する // 最後のバイト転送後、I2C割り込みが発生する
} }
@ -333,7 +339,6 @@ __interrupt void int_dma1(){
IIC MCUのバイト送出完了割り込み IIC MCUのバイト送出完了割り込み
======================================================== */ ======================================================== */
__interrupt void int_iic10(){ __interrupt void int_iic10(){
EI();
if( iic_mcu_wo_dma ){ if( iic_mcu_wo_dma ){
// DMA使用せず、転送途中 // DMA使用せず、転送途中
if( iic_send_wo_dma_len != 0 ){ if( iic_send_wo_dma_len != 0 ){

View File

@ -10,7 +10,9 @@
extern u8 vreg_twl[]; extern u8 vreg_twl[];
#ifdef _MCU_BSR_ #ifdef _MCU_BSR_
//#ifdef _MODEL_WM0_ //#ifdef _MODEL_WM0_
#ifdef 1
// ワーキングモデルはI2Cが逆 // ワーキングモデルはI2Cが逆
#define ACKD ACKD0 #define ACKD ACKD0
@ -39,7 +41,7 @@ extern u8 vreg_twl[];
#define WREL WREL0 #define WREL WREL0
#define WTIM WTIM0 #define WTIM WTIM0
//#else #else
#define ACKD ACKD1 #define ACKD ACKD1
#define ACKE ACKE1 #define ACKE ACKE1
@ -67,7 +69,7 @@ extern u8 vreg_twl[];
#define WREL WREL1 #define WREL WREL1
#define WTIM WTIM1 #define WTIM WTIM1
//#endif #endif
#endif #endif
#ifndef _MCU_BSR_ #ifndef _MCU_BSR_

View File

@ -64,6 +64,9 @@ void LED_init(){
#ifdef _MODEL_WM0_ #ifdef _MODEL_WM0_
TOL0 = 0b0000000000000010; TOL0 = 0b0000000000000010;
#else #else
#ifdef _MODEL_TS0_
TOL0 = 0b0000000000000110;
#endif
TOL0 = 0b0000000000000110; TOL0 = 0b0000000000000110;
#endif #endif
TO0 = 0; // タイマー動作中で、タイマー出力にしてないときのピンのラッチ。タイマー出力を使わないなら0 TO0 = 0; // タイマー動作中で、タイマー出力にしてないときのピンのラッチ。タイマー出力を使わないなら0

View File

@ -58,7 +58,7 @@ void hdwinit(void);
void power_save(); void power_save();
extern void main_loop(); extern void main_loop();
extern u8 chk_bootCluster(); extern void chk_bootCluster();
// ======================================================== // ========================================================

View File

@ -214,7 +214,7 @@ void PM_init(){
iic_mcu_write( IIC_SLA_BT_GAUGE, iic_mcu_write( IIC_SLA_BT_GAUGE,
BT_GAUGE_REG_MODE, BT_GAUGE_REG_MODE,
2, 2,
BT_GAUGE_QUICK_START[0] ); BT_GAUGE_QUICK_START );
// 電池固有パラメータの書き込み下準備 // 電池固有パラメータの書き込み下準備
iic_mcu_write( IIC_SLA_BT_GAUGE, iic_mcu_write( IIC_SLA_BT_GAUGE,
@ -611,7 +611,6 @@ task_interval tsk_batt(){
// 電源周りのステータスが変化? // 電源周りのステータスが変化?
set_bit( PM_EXTDC, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_POW_SUPPLY ); set_bit( PM_EXTDC, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_POW_SUPPLY );
set_bit( !BT_CHG_ERR_n, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_BATT_CHARGE_ERR );
set_bit( !BT_CHG_n, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_BATT_CHARGE ); set_bit( !BT_CHG_n, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_BATT_CHARGE );
// →割り込み。miscの中でよろしくやってくれている。 // →割り込み。miscの中でよろしくやってくれている。

View File

@ -24,6 +24,9 @@ bit renge_task_interval_run_force;
extern task_info tasks[]; extern task_info tasks[];
#include "..\bsr_system.h"
extern system_status_ system_status;
//****************************************************************************** //******************************************************************************
static void renge_task_immed_init(); static void renge_task_immed_init();
static void renge_task_immed_del( u8 ); static void renge_task_immed_del( u8 );
@ -268,10 +271,21 @@ static void renge_task_immed_del( u8 task_id ){
**************************************/ **************************************/
err renge_task_immed_run(){ err renge_task_immed_run(){
u8 task_id; u8 task_id;
u8 i;
do{
i = 0;
for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){ for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){
if( tasks_immed[ task_id ] != 0 ){ if( tasks_immed[ task_id ] != 0 ){
if( tasks_immed[ task_id ]() == ERR_FINISED ){ if( tasks_immed[ task_id ]() == ERR_FINISED ){
// ƒgƒ‰ƒbƒv
if( system_status.pwr_state == OFF_TRIG ){
u8 i = 0;
while( i == 0 ){
NOP();
}
}
DI(); DI();
renge_task_immed_del( task_id ); renge_task_immed_del( task_id );
EI(); EI();
@ -279,6 +293,15 @@ err renge_task_immed_run(){
} }
} }
for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){
if( tasks_immed[ task_id ] != 0 ){
i += 1;
}
}
}while( i != 0 );
#if 0 #if 0
for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){ for( task_id = 0; task_id < IMMED_RSV_TASKS_NUM; task_id += 1 ){

View File

@ -112,7 +112,7 @@ err firm_update(){
0x4800 - 0x7FFF ( 18 - 27) 0x4800 - 0x7FFF ( 18 - 27)
*/ */
p_rom = (u8*)0x2000; p_rom = (__far u8*)0x2000;
// 書き込み先ブロックの数だけ繰り返す // 書き込み先ブロックの数だけ繰り返す
for( target_block = ( FIRM_TOP + FIRM_SIZE ); for( target_block = ( FIRM_TOP + FIRM_SIZE );
target_block < ( FIRM_TOP + FIRM_SIZE + FIRM_SIZE ); target_block < ( FIRM_TOP + FIRM_SIZE + FIRM_SIZE );
@ -263,7 +263,7 @@ err firm_restore(){
0x2000 - 0x47FF ( 8 - 17) 0x2000 - 0x47FF ( 8 - 17)
*/ */
p_rom = (u8*)0x4800; p_rom = (__far u8*)0x4800;
// 転送先ブロックの数だけ繰り返す // 転送先ブロックの数だけ繰り返す
for( target_block = FIRM_TOP; for( target_block = FIRM_TOP;
target_block <= UPDATE_BLOCK_LAST; target_block <= UPDATE_BLOCK_LAST;
@ -310,7 +310,7 @@ err firm_restore(){
} }
u8 chk_bootCluster(){ void chk_bootCluster(){
u8 data_buffer[ SELF_UPDATE_BUFF_SIZE ]; u8 data_buffer[ SELF_UPDATE_BUFF_SIZE ];
u8 err; u8 err;

View File

@ -32,7 +32,7 @@ task_interval tsk_misc_stat(){
SHELL_CLOSE_P = 1; SHELL_CLOSE_P = 1;
set_bit( EXT_OPT_DET, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_EXT_OPT_LOCK ); set_bit( EXT_OPT_DET, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_EXT_OPT_LOCK );
set_bit( SHELL_CLOSE, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_SHELL_CLOSE ); set_bit( SHELL_CLOSE, vreg_ctr[ VREG_C_STATUS0 ], REG_BIT_ST_SHELL_CLOSED );
SHELL_CLOSE_P = 0; SHELL_CLOSE_P = 0;
// ステータスレジスタ関係 → 割り込み // // ステータスレジスタ関係 → 割り込み //
@ -48,7 +48,7 @@ task_interval tsk_misc_stat(){
break; break;
case SLEEP_TRIG: case SLEEP_TRIG:
case SLEEP: case SLEEP:
if( (( state_old & REG_BIT_SHELL_CLOSE ) != 0 ) if( (( state_old & REG_BIT_ST_SHELL_CLOSED ) != 0 )
&& ( !SHELL_CLOSE ) ){ && ( !SHELL_CLOSE ) ){
// 蓋開けた のみ通知 // 蓋開けた のみ通知
if( ( vreg_ctr[ VREG_C_IRQ_MASK1 ] & REG_BIT_STAT_CHANGE ) == 0 ){ if( ( vreg_ctr[ VREG_C_IRQ_MASK1 ] & REG_BIT_STAT_CHANGE ) == 0 ){
@ -101,7 +101,7 @@ task_interval tsk_debug2(){
str[1] = vreg_ctr[ VREG_C_STATUS0 ]; str[1] = vreg_ctr[ VREG_C_STATUS0 ];
str[0] = vreg_ctr[ VREG_C_ACC_YH ]; str[0] = vreg_ctr[ VREG_C_ACC_YH ];
iic_mcu_write( IIC_SLA_DBG_MONITOR, 0, 4, str ); iic_mcu_write( IIC_SLA_DBG_MONITOR, 0, 4, &str );
// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 2, vreg_ctr[ VREG_C_IRQ1 ] ); // iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 2, vreg_ctr[ VREG_C_IRQ1 ] );
// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, boot_ura ); // iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, boot_ura );
// iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, vreg_ctr[ VREG_C_SND_VOL ] ); // iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 1, vreg_ctr[ VREG_C_SND_VOL ] );
@ -226,14 +226,14 @@ task_status_immed do_command0(){
} }
// 液晶電源など // 液晶電源など
if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_BL_ON ){ if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_CMD_BL_ON ){
renge_task_immed_add( tski_PM_BL_on ); renge_task_immed_add( tski_PM_BL_on );
}else if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_BL_OFF ){ }else if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_CMD_BL_OFF ){
renge_task_immed_add( tski_PM_BL_off ); renge_task_immed_add( tski_PM_BL_off );
} }
if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_LCD_ON ){ if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_CMD_LCD_ON ){
renge_task_immed_add( tski_PM_LCD_on ); renge_task_immed_add( tski_PM_LCD_on );
}else if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_LCD_OFF ){ }else if( vreg_ctr[ VREG_C_COMMAND0 ] & REG_BIT_CMD_LCD_OFF ){
renge_task_immed_add( tski_PM_LCD_off ); renge_task_immed_add( tski_PM_LCD_off );
} }

View File

@ -164,8 +164,8 @@ task_interval tsk_sys(){
} }
#endif #endif
vreg_ctr[ VREG_C_ACC_CONFIG_HOSU ] = 0x00; // デバッグ目的 // vreg_ctr[ VREG_C_ACC_CONFIG_HOSU ] = 0x00; // デバッグ目的
// vreg_ctr[ VREG_C_ACC_CONFIG_HOSU ] = 0x01; // デバッグ目的 vreg_ctr[ VREG_C_ACC_CONFIG_HOSU ] = 0x01; // デバッグ目的
renge_task_immed_add( acc_hosu_set ); renge_task_immed_add( acc_hosu_set );
system_status.poweron_reason = PWSW; system_status.poweron_reason = PWSW;

View File

@ -222,13 +222,14 @@ void vreg_ctr_after_read( u8 adrs ){
case( VREG_C_IRQ1 ): vreg_ctr[ VREG_C_IRQ1 ] = 0; break; case( VREG_C_IRQ1 ): vreg_ctr[ VREG_C_IRQ1 ] = 0; break;
case( VREG_C_IRQ2 ): vreg_ctr[ VREG_C_IRQ2 ] = 0x02; break; // 暫定 case( VREG_C_IRQ2 ): vreg_ctr[ VREG_C_IRQ2 ] = 0x02; break; // 暫定
} }
/*
if(( adrs == VREG_C_IRQ0 ) || ( adrs == VREG_C_IRQ1 ) || ( adrs == VREG_C_IRQ2 )){ if(( adrs == VREG_C_IRQ0 ) || ( adrs == VREG_C_IRQ1 ) || ( adrs == VREG_C_IRQ2 )){
IRQ0_neg; IRQ0_neg;
if(! (( vreg_ctr[ VREG_C_IRQ0 ] == 0 ) && ( vreg_ctr[ VREG_C_IRQ1 ] == 0 ) && ( vreg_ctr[ VREG_C_IRQ2 ] == 0x02 )) ){ // 暫定 if(! (( vreg_ctr[ VREG_C_IRQ0 ] == 0 ) && ( vreg_ctr[ VREG_C_IRQ1 ] == 0 ) && ( vreg_ctr[ VREG_C_IRQ2 ] == 0x02 )) ){ // 暫定
IRQ0_ast; IRQ0_ast;
} }
} }
*/
return; return;
} }

View File

@ -2,14 +2,22 @@
#define __vreg_ctr__ #define __vreg_ctr__
#include "config.h"
#if MCU_VER_MINOR <= 3
#include "vreg_ctr_03.h"
#else
#define REG_BIT_RTC_BLACKOUT 0b00000001 #define REG_BIT_RTC_BLACKOUT 0b00000001
#define REG_BIT__SYS_MODE0 0b01000000 #define REG_BIT__SYS_MODE0 0b01000000
#define REG_BIT_MCU_FIRMBROKEN 0b10000000 #define REG_BIT_MCU_FIRMBROKEN 0b10000000
// VREG_C_IRQ0 // VREG_C_IRQ0
#define REG_BIT_VR_SNDVOL_CHANGE ( 1 << 7 ) #define REG_BIT_VR_TUNE_CHANGE ( 1 << 7 )
#define REG_BIT_VR_TUNE_CHANGE ( 1 << 6 ) #define REG_BIT_VR_SNDVOL_CHANGE ( 1 << 6 )
#define REG_BIT_SW_TUNE_CLICK ( 1 << 5 ) #define REG_BIT_SW_TUNE_CLICK ( 1 << 5 )
#define REG_BIT_SW_WIFI_CLICK ( 1 << 4 ) #define REG_BIT_SW_WIFI_CLICK ( 1 << 4 )
#define REG_BIT_SW_POW_HOLD ( 1 << 3 ) #define REG_BIT_SW_POW_HOLD ( 1 << 3 )
@ -18,34 +26,52 @@
#define REG_BIT_SW_HOME_CLICK ( 1 << 0 ) #define REG_BIT_SW_HOME_CLICK ( 1 << 0 )
// VREG_C_IRQ1 // VREG_C_IRQ1
#define REG_BIT_TWL_OFF_REQ ( 1 << 7 )
#define REG_BIT_TWL_RESET_REQ ( 1 << 6 )
#define REG_BIT_WDT_DET ( 1 << 5 ) #define REG_BIT_WDT_DET ( 1 << 5 )
#define REG_BIT_ACC_DAT_RDY ( 1 << 4 ) #define REG_BIT_ACC_DAT_RDY ( 1 << 4 )
#define REG_BIT_ACC_ACK ( 1 << 3 ) #define REG_BIT_ACC_ACK ( 1 << 3 )
#define REG_BIT_RTC_ALARM ( 1 << 2 ) #define REG_BIT_RTC_ALARM ( 1 << 2 )
#define REG_BIT_BT_REMAIN ( 1 << 1 ) #define REG_BIT_BT_REMAIN ( 1 << 1 )
#define REG_BIT_STAT_CHANGE ( 1 << 0 )
// VREG_C_IRQ2
#define REG_BIT_BT_CHG_START ( 1 << 7 )
#define REG_BIT_BT_CHG_STOP ( 1 << 6 )
#define REG_BIT_BT_DC_CONNECT ( 1 << 5 )
#define REG_BIT_BT_DC_DISC ( 1 << 4 )
#define REG_BIT_EXTOPT_OPEN ( 1 << 3 )
#define REG_BIT_EXTOPT_LOCK ( 1 << 2 )
#define REG_BIT_SHELL_OPEN ( 1 << 1 )
#define REG_BIT_SHELL_CLOSE ( 1 << 0 )
// VREG_C_IRQ3
#define REG_BIT_TWL_BL_ON ( 1 << 7 )
#define REG_BIT_TWL_BL_OFF ( 1 << 6 )
#define REG_BIT_TWL_OFF_REQ ( 1 << 5 )
#define REG_BIT_TWL_RESET_REQ ( 1 << 4 )
#define REG_BIT_LCD_ON ( 1 << 3 )
#define REG_BIT_LCD_OFF ( 1 << 2 )
#define REG_BIT_BL_ON ( 1 << 1 )
#define REG_BIT_BL_OFF ( 1 << 0 )
// VREG_C_STATUS0, // VREG_C_STATUS0,
#define REG_BIT_BATT_CHARGE_ERR ( 1 << 5 ) #define REG_BIT_LCD_POW ( 1 << 7 )
#define REG_BIT_BL ( 1 << 6 )
// #define REG_BIT_BATT_CHARGE_ERR ( 1 << 5 )
#define REG_BIT_BATT_CHARGE ( 1 << 4 ) #define REG_BIT_BATT_CHARGE ( 1 << 4 )
#define REG_BIT_POW_SUPPLY ( 1 << 3 ) #define REG_BIT_POW_SUPPLY ( 1 << 3 )
#define REG_BIT_EXT_OPT_LOCK ( 1 << 2 ) #define REG_BIT_EXT_OPT_LOCK ( 1 << 2 )
#define REG_BIT_SHELL_CLOSE ( 1 << 1 ) #define REG_BIT_ST_SHELL_CLOSED ( 1 << 1 )
#define REG_BIT_BL ( 1 << 6 )
#define REG_BIT_LCD_POW ( 1 << 7 )
// VREG_C_COMMAND0 // VREG_C_COMMAND0
#define REG_BIT_CMD_LCD_ON ( 1 << 7 )
#define REG_BIT_CMD_LCD_OFF ( 1 << 6 )
#define REG_BIT_CMD_BL_ON ( 1 << 5 )
#define REG_BIT_CMD_BL_OFF ( 1 << 4 )
#define REG_BIT_FCRAM_RESET_REQ ( 1 << 3 ) #define REG_BIT_FCRAM_RESET_REQ ( 1 << 3 )
#define REG_BIT_RESET2_REQ ( 1 << 2 ) #define REG_BIT_RESET2_REQ ( 1 << 2 )
#define REG_BIT_RESET1_REQ ( 1 << 1 ) #define REG_BIT_RESET1_REQ ( 1 << 1 )
#define REG_BIT_OFF_REQ ( 1 << 0 ) #define REG_BIT_OFF_REQ ( 1 << 0 )
#define REG_BIT_BL_ON ( 1 << 5 )
#define REG_BIT_BL_OFF ( 1 << 4 )
#define REG_BIT_LCD_ON ( 1 << 7 )
#define REG_BIT_LCD_OFF ( 1 << 6 )
// VREG_C_COMMAND1 // VREG_C_COMMAND1
#define REG_BIT_SEND_TWL_BATT_EMPTY ( 1 << 4 ) #define REG_BIT_SEND_TWL_BATT_EMPTY ( 1 << 4 )
@ -56,8 +82,14 @@
// VREG_C_WIFI_LED // VREG_C_WIFI_LED
#define REG_BIT_WIFI_BLINK_ENA ( 1 << 1 ) enum{
#define REG_BIT_WIFI_ON ( 1 << 0 ) WIFI_LED_OFF = 0,
WIFI_LED_ON,
WIFI_LED_TXAUTO,
WIFI_LED_PTN0,
WIFI_LED_PTN1
};
// command2 // command2
@ -97,92 +129,93 @@ extern u8 vreg_ctr[];
/*============================================================================*/ /*============================================================================*/
enum VREG_C{ // 未定義アドレスへ書き込んだ際の動作は不定 enum VREG_C{ // 未定義アドレスへ書き込んだ際の動作は不定
VREG_C_IRQ0, VREG_C_MCU_VER_MAJOR = 0x00,
VREG_C_IRQ1,
VREG_C_IRQ2,
VREG_C_STATUS0,
VREG_C_STATUS1,
VREG_C_IRQ_MASK0,
VREG_C_IRQ_MASK1,
VREG_C_IRQ_MASK2,
VREG_C_TUNE = 0x08,
VREG_C_SND_VOL,
VREG_C_BT_REMAIN,
VREG_C_COMMAND0,
VREG_C_COMMAND1,
VREG_C_LED_BRIGHT,
VREG_C_LED_POW_ILUMI,
VREG_C_WIFI_LED,
VREG_C_CAM_LED,
VREG_C_MCU_VER_MAJOR = 0x11,
VREG_C_MCU_VER_MINOR, VREG_C_MCU_VER_MINOR,
VREG_C_MCU_STATUS, VREG_C_MCU_STATUS,
VREG_C_VCOM_T, VREG_C_VCOM_T = 0x03,
VREG_C_VCOM_B, VREG_C_VCOM_B,
VREG_C_PM_INFO, // ¢Žg—p
VREG_C_BT_INFO, // ¢Žg—p
VREG_C_DBG1 = 0x05,
VREG_C_DBG2,
VREG_C_DBG3,
VREG_C_TUNE = 0x08,
VREG_C_SND_VOL,
VREG_C_BT_REMAIN,
VREG_C_BT_TEMP, VREG_C_BT_TEMP,
VREG_C_RESERVED1, VREG_C_STATUS = 0x0F,
VREG_C_RTC_SEC = 0x1A, VREG_C_IRQ0 = 0x10,
VREG_C_IRQ1,
VREG_C_IRQ2,
VREG_C_IRQ3,
VREG_C_IRQ_MASK0 = 0x18,
VREG_C_IRQ_MASK1,
VREG_C_IRQ_MASK2,
VREG_C_IRQ_MASK3,
VREG_C_COMMAND0 = 0x20,
VREG_C_COMMAND1,
VREG_C_FREE0 = 0x24,
VREG_C_FREE1,
VREG_C_FREE2,
VREG_C_FREE3,
VREG_C_LED_BRIGHT = 0x28,
VREG_C_LED_POW_ILUMI,
VREG_C_WIFI_LED,
// LED0
VREG_C_CAM_LED,
// LED1
VREG_C_RTC_SEC = 0x30,
VREG_C_RTC_MIN, VREG_C_RTC_MIN,
VREG_C_RTC_HOUR, VREG_C_RTC_HOUR,
VREG_C_RTC_YOBI, VREG_C_RTC_YOBI,
VREG_C_RTC_DAY, VREG_C_RTC_DAY,
VREG_C_RTC_MONTH, VREG_C_RTC_MONTH,
VREG_C_RTC_YEAR, VREG_C_RTC_YEAR,
VREG_C_RESERVED2, // ¢Žg—p
VREG_C_RTC_ALARM_MIN, VREG_C_RTC_COMP,
VREG_C_RTC_ALARM_MIN = 0x38,
VREG_C_RTC_ALARM_HOUR, VREG_C_RTC_ALARM_HOUR,
VREG_C_RTC_ALARM_DAY, VREG_C_RTC_ALARM_DAY,
VREG_C_RTC_ALARM_MONTH, VREG_C_RTC_ALARM_MONTH,
VREG_C_RTC_ALARM_YEAR, VREG_C_RTC_ALARM_YEAR,
VREG_C_RTC_COMP,
VREG_C_ACC_CONFIG_HOSU = 0x28, VREG_C_ACC_CONFIG = 0x40,
VREG_C_ACC_CONFIG,
VREG_C_ACC_R_ADRS, VREG_C_ACC_R_ADRS,
VREG_C_RESERVED5, VREG_C_RESERVED5,
VREG_C_ACC_W_ADRS, VREG_C_ACC_W_ADRS,
VREG_C_ACC_W_BUF, VREG_C_ACC_W_BUF,
VREG_C_ACC_XL, VREG_C_ACC_XL = 0x45,
VREG_C_ACC_XH, VREG_C_ACC_XH,
VREG_C_ACC_YL, VREG_C_ACC_YL,
VREG_C_ACC_YH, VREG_C_ACC_YH,
VREG_C_ACC_ZL, VREG_C_ACC_ZL,
VREG_C_ACC_ZH, VREG_C_ACC_ZH,
VREG_C_ACC_HOSU_L = 0x34, VREG_C_ACC_HOSU_L = 0x4B,
VREG_C_ACC_HOSU_M, VREG_C_ACC_HOSU_M,
VREG_C_ACC_HOSU_H, VREG_C_ACC_HOSU_H,
VREG_C_ACC_HOSU_HIST, VREG_C_ACC_HOSU_HIST = 0x4E,
VREG_C_DIAG,
VREG_C_FREE0 = 0x39,
VREG_C_FREE1,
VREG_C_FREE2,
VREG_C_FREE3,
VREG_C_DBG0,
VREG_C_DBG1,
VREG_C_DBG2,
VREG_C_DBG3,
VREG_C_ENDMARK_ VREG_C_ENDMARK_
}; };
/*
VREG_C_PM_INFO, // ¢Žg—p
VREG_C_BT_INFO, // ¢Žg—p
*/
#define VREG_C_ACC_CONFIG_HOSU VREG_C_ACC_CONFIG
#endif
/*============================================================================*/ /*============================================================================*/
void vreg_ctr_init(); void vreg_ctr_init();

View File

@ -1,18 +1,6 @@
C:\WINDOWS\system32\cmd.exe /c echo touch magic.c C:\WINDOWS\system32\cmd.exe /c echo touch magic.c
touch magic.c touch magic.c
"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\bin\cc78k0r.exe" -cF100964 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff -irenge -i"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r" -ms -qcvjl1wt -sainter_asm -zp -w2 -no rtc.c
user_define.h(13) : CC78K0R warning W0816: Redefined macro name '_debug_'
bsr_system.h(30) : CC78K0R warning W0851: Data aligned in 'struct tag'
renge\renge_defs.h(47) : CC78K0R warning W0851: Data aligned in 'struct tag'
rtc.c(134) : CC78K0R warning W0851: Data aligned in '@@DATA section'
Compilation complete, 0 error(s) and 4 warning(s) found.
"C:\Program Files\NEC Electronics Tools\RA78K0R\W1.31\bin\ra78k0r.exe" -cF100964 -y"C:\Program Files\NEC Electronics Tools\DEV" -_msgoff inter_asm\rtc.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_k0r.lmf "..\..\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r\s0rm.rel" -go85h,0FC00h,1024 -gi0FFFFFFFFFFFFFFFFFFFFh -pbsr_k0r.map -nkd -kp -gb6EFBFFh -b"C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib" -bcl0rdm.lib -bcl0rm.lib -bcl0rmf.lib -i"C:\Program Files\NEC Electronics Tools\CC78K0R\W2.10\lib78k0r" -dbsr_mcu.dr -s -w0 loader.rel pm.rel i2c_ctr.rel main.rel magic.rel WDT.rel i2c_mcu.rel i2c_twl.rel ini_VECT.rel led.rel rtc.rel vreg_ctr.rel vreg_twl.rel tasks.rel adc.rel renge.rel tasks_sys.rel accero.rel self_flash.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_k0r.lmf
Object Conversion Complete, 0 error(s) and 0 warning(s) found.
C:\WINDOWS\system32\cmd.exe /c ruby C:\Cygwin\home\fujita_ryohei\ctr\nec_s_2_bsrbin.rb bsr.hex C:\WINDOWS\system32\cmd.exe /c ruby C:\Cygwin\home\fujita_ryohei\ctr\nec_s_2_bsrbin.rb bsr.hex
C:/Cygwin/home/fujita_ryohei/ctr/nec_s_2_bsrbin.rb:2: warning: variable $KCODE is no longer effective; ignored C:/Cygwin/home/fujita_ryohei/ctr/nec_s_2_bsrbin.rb:2: warning: variable $KCODE is no longer effective; ignored
Build Total error(s) : 0 Total warning(s) : 4 Build Total error(s) : 0 Total warning(s) : 0

View File

@ -22,7 +22,7 @@ SubClock=None
[Mapping] [Mapping]
Count=0 Count=0
[Main] [Main]
Geometry=286, 286, 1200, 882 Geometry=242, 242, 1200, 882
Window=Max Window=Max
MDI_MAX=OFF MDI_MAX=OFF
Button=ON Button=ON
@ -78,10 +78,10 @@ Symbol Type=OFF
Language=C Language=C
Kanji=SJIS Kanji=SJIS
[Source] [Source]
Geometry=441, 2, 691, 1110 Geometry=0, 0, 832, 980
Window=Normal Window=Normal
DispStart=121 DispStart=120
CaretPos=161,0 CaretPos=121,0
Mode=Normal Mode=Normal
DispFile= DispFile=
Address1= Address1=
@ -140,25 +140,17 @@ SaveStart=
SaveEnd= SaveEnd=
Accumulative=ON Accumulative=ON
[Source1] [Source1]
Geometry=75, 75, 691, 1035 Geometry=75, 75, 832, 980
Window=Normal Window=Normal
DispStart=103 DispStart=170
CaretPos=104,0 CaretPos=171,0
Mode=Normal Mode=Normal
DispFile=vreg_ctr.c DispFile=tasks_sys.c
Accumulative=ON
[Source2]
Geometry=100, 100, 691, 1010
Window=Normal
DispStart=58
CaretPos=59,0
Mode=Normal
DispFile=rtc.c
Accumulative=ON Accumulative=ON
[Assemble] [Assemble]
Geometry=0, 0, 0, 0 Geometry=0, 0, 0, 0
Window=Hide Window=Hide
DispStart=864688128 DispStart=864338944
CaretPos=0,0 CaretPos=0,0
Address1= Address1=
Address2= Address2=
@ -201,7 +193,7 @@ SaveRange=Screen
SaveStart= SaveStart=
SaveEnd= SaveEnd=
[Memory] [Memory]
Geometry=0, 0, 550, 400 Geometry=0, 0, 0, 0
Window=Hide Window=Hide
Boundary=0 Boundary=0
Format=Hex Format=Hex
@ -266,13 +258,13 @@ Destination=0
[I/O Port] [I/O Port]
Line=0 Line=0
[Stack] [Stack]
Geometry=50, 50, 400, 300 Geometry=0, 0, 0, 0
Window=Normal Window=Hide
Boundary=13762687 Boundary=0
Mode=Proper Mode=Proper
[Sfr] [Sfr]
Geometry=50, 50, 400, 985 Geometry=0, 0, 0, 0
Window=Normal Window=Hide
Address1= Address1=
Address2= Address2=
Address3= Address3=
@ -289,13 +281,13 @@ Address13=
Address14= Address14=
Address15= Address15=
Address16= Address16=
Boundary=202, 89 Boundary=0, 0
Mode=Hex Mode=Hex
Attribute=Show Attribute=Show
Sort=Unsort Sort=Unsort
Pickup=OFF Pickup=OFF
SelectSort=Address SelectSort=Address
Last Name=IICBSY Last Name=
Line=506 Line=506
L1=P0 L1=P0
L2=P1 L2=P1
@ -804,9 +796,9 @@ L504=C1EN
L505=C1RVM L505=C1RVM
L506=C1VRE L506=C1VRE
[Local Variable] [Local Variable]
Geometry=1194, 857, 400, 248 Geometry=0, 0, 0, 0
Window=Normal Window=Hide
Boundary=13041851 Boundary=0
Mode=Proper Mode=Proper
[Trace View] [Trace View]
Geometry=0, 0, 0, 0 Geometry=0, 0, 0, 0
@ -856,22 +848,22 @@ SaveRange=Screen
SaveStart= SaveStart=
SaveEnd= SaveEnd=
[Register] [Register]
Geometry=25, 25, 250, 400 Geometry=0, 0, 0, 0
Window=Hide Window=Hide
Mode=Hex Mode=Hex
Boundary=62 Boundary=62
Pickup=OFF Pickup=OFF
Name=Functional Name=Functional
Register Bank=0 Register Bank=0
RP0=1 RP0=3
RP1=1 RP1=3
RP2=1 RP2=3
RP3=1 RP3=3
PC=1 PC=3
SP=1 SP=3
PSW=1 PSW=3
ES=1 ES=3
CS=1 CS=3
[Event Manager] [Event Manager]
Geometry=0, 0, 0, 0 Geometry=0, 0, 0, 0
Window=Hide Window=Hide
@ -884,7 +876,17 @@ Manager=ON
Sort by=Unsort Sort by=Unsort
Detail=OFF Detail=OFF
Last Name= Last Name=
Count=0 Name0=syste001
Status0=W
Access Size0=B
Address Range0=EQ
Address0=<system_status.pwr_state> - <>
Mask Address0=00000000
Data Range0=NC
Data0=<00000000> - <00000000>
Mask Data0=FFFFFFFF
Pass0=0001
Count=1
[Event Link] [Event Link]
Geometry=0, 0, 0, 0 Geometry=0, 0, 0, 0
Window=Hide Window=Hide
@ -900,7 +902,10 @@ Manager=ON
Sort by=Unsort Sort by=Unsort
Detail=OFF Detail=OFF
Last Name= Last Name=
Count=0 Name0=syste002
Element0=syste001
Set0=ON
Count=1
[Trace] [Trace]
Geometry=0, 0, 0, 0 Geometry=0, 0, 0, 0
Window=Hide Window=Hide
@ -947,121 +952,38 @@ Detail=OFF
Last Name= Last Name=
Count=0 Count=0
[Variable] [Variable]
Geometry=1134, 10, 440, 846 Geometry=1148, 7, 440, 686
Window=Normal Window=Normal
Boundary=13762700 Boundary=16777386
0=.temp,P,N,A,+,1 0=.system_status.pwr_state,P,N,A,+,1
1=.ALARMWM,P,S,A,+,1 1=.SMC,P,S,A,+,1
2=.ALARMWH,P,S,A,+,1 Line=2
3=.ALARMWW,P,S,A,+,1
4=.SEC,P,S,A,+,1
5=.MIN,P,S,A,+,1
6=.HOUR,P,S,A,+,1
7=.DAY,P,S,A,+,1
8=.MONTH,P,S,A,+,1
9=.YEAR,P,S,A,+,1
10=.rtc_lock,P,N,A,+,1
11=.rtc_dirty,P,N,A,+,1
12=.rtcc1,P,S,A,+,1
13=.WAFG,P,S,A,+,1
14=.RIFG,P,S,A,+,1
15=.system_status.poweron_reason,P,N,A,+,1
16=.system_status.pwr_state,P,N,A,+,1
17=.PM15,B,S,A,+,1
18=.PU14,B,S,A,+,1
19=.P15,B,S,A,+,1
20=.PM14,B,S,A,+,1
21=.P14,B,S,A,+,1
22=.PM12,B,S,A,+,1
23=.PU12,B,S,A,+,1
24=.P12,B,S,A,+,1
25=.PM8,B,S,A,+,1
26=.P8,B,S,A,+,1
27=.PM7,B,S,A,+,1
28=.PU7,B,S,A,+,1
29=.P7,B,S,A,+,1
30=.PM6,B,S,A,+,1
31=.P6,B,S,A,+,1
32=.PM5,B,S,A,+,1
33=.PU5,B,S,A,+,1
34=.P5,B,S,A,+,1
35=.PM4,B,S,A,+,1
36=.PU4,B,S,A,+,1
37=.P4,B,S,A,+,1
38=.PM3,B,S,A,+,1
39=.PU3,B,S,A,+,1
40=.P3,B,S,A,+,1
41=.PM2,B,S,A,+,1
42=.P2,B,S,A,+,1
43=.PM1,B,S,A,+,1
44=.PU1,B,S,A,+,1
45=.P1,B,S,A,+,1
46=.PU0,B,S,A,+,1
47=.PM0,B,S,A,+,1
48=.P0,B,S,A,+,1
49=.lock_del,P,N,A,+,1
50=.lock_add,P,N,A,+,1
51=.IICAIF,P,S,A,+,1
52=.vreg_ctr,P,N,A,+,1
53=.SPD,P,S,A,+,1
54=.state,P,N,A,+,1
55=.IICAIF,P,S,A,+,1
56=.tasks_immed,P,N,A,+,1
57=.task_immed_index,P,N,A,+,1
58=.k,P,N,A,+,1
59=.rtc_work,P,N,A,+,1
60=.rtc_dirty,P,N,A,+,1
Line=61
[Quick Watch] [Quick Watch]
0=SEC,P,A,1 0=SMC,P,A,1
1=MIN,P,A,1 1=system_status.pwr_state,P,A,1
2=HOUR,P,A,1 2=
3=DAY,P,A,1 3=
4=MONTH,P,A,1 4=
5=YEAR,P,A,1 5=
6=ALARMWM,P,A,1 6=
7=ALARMWH,P,A,1 7=
8=ALARMWW,P,A,1 8=
9=vreg_ctr,P,A,1 9=
10=temp,P,A,1 10=
11=IICAIF,P,A,1 11=
12=state,P,A,1 12=
13=SPD,P,A,1 13=
14=rtc_dirty,P,A,1 14=
15=rtc_work,P,A,1 15=
[Software Break] [Software Break]
Geometry=0, 0, 0, 0 Geometry=0, 0, 0, 0
Window=Hide Window=Hide
Width=150 30 200 100 Width=150 30 200 100
Name0=Swb00001 Name0=Swb00002
Address0=pm.c#_tski_PM_LCD_on+0x0 Address0=tasks_sys.c#_tsk_sys+0xce
Window0=ASM Window0=ASM
Status0=ON Status0=ON
Name1=Swb00002 Count=1
Address1=pm.c#_tski_PM_BL_on+0x0
Window1=ASM
Status1=ON
Name2=Swb00003
Address2=pm.c#_tski_PM_BL_off+0x0
Window2=ASM
Status2=ON
Name3=Swb00004
Address3=pm.c#_tski_PM_LCD_off+0x0
Window3=ASM
Status3=ON
Name4=Swb00005
Address4=accero.c#_tsk_cbk_accero+0x7
Window4=ASM
Status4=ON
Name5=Swb00006
Address5=tasks.c#_tsk_soft_int+0x10
Window5=ASM
Status5=ON
Name6=Swb00007
Address6=i2c_ctr.c#_int_iic_ctr+0xa6
Window6=ASM
Status6=ON
Count=7
[Reset] [Reset]
Debugger=ON Debugger=ON
Symbol=OFF Symbol=OFF
@ -1070,7 +992,7 @@ Target CPU=OFF
OnClick Software Break=ON OnClick Software Break=ON
TraceTimetag=x1 TraceTimetag=x1
Redraw=500 Redraw=500
Break When Access Function=OFF Break When Access Function=ON
Break When Access Whole=Select Break When Access Whole=Select
Verify=ON Verify=ON
Break Sound=ON Break Sound=ON

View File

@ -534,32 +534,6 @@ DefaultMode2=1
DefaultMode3=1 DefaultMode3=1
DefaultMode4=1 DefaultMode4=1
DefaultMode5=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
[Options.CC78K0R 0] [Options.CC78K0R 0]
Version=210 Version=210
Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r
@ -1031,3 +1005,30 @@ ToolSetName=(
Tool1=CC78K0R|W2.10 Tool1=CC78K0R|W2.10
Tool2=RA78K0R|W1.31 Tool2=RA78K0R|W1.31
Tool3=ID78K0R-QB|V3.60 Tool3=ID78K0R-QB|V3.60
[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=vreg_ctr_03.h

View File

@ -6,13 +6,18 @@ FrameCX=1375
FrameCY=1183 FrameCY=1183
OpenFile1=vreg_ctr.c,0,260,12,1504,769,120,228,0,0 OpenFile1=vreg_ctr.c,0,260,12,1504,769,120,228,0,0
OpenFile2=pm.c,0,66,66,1310,823,0,343,0,0 OpenFile2=pm.c,0,66,66,1310,823,0,343,0,0
OpenFile3=tasks.c,0,132,132,1376,889,35,147,36,0 OpenFile3=rtc.c,0,198,198,1442,955,3,130,0,0
OpenFile4=ProjectWindow OpenFile4=inter_asm\i2c_ctr.asm,0,242,242,1486,999,4,269,8,0
PrjPos=0,6,758,2,252
OpenFile5=renge\renge.c,0,176,176,1420,933,7,213,43,0 OpenFile5=renge\renge.c,0,176,176,1420,933,7,213,43,0
OpenFile6=OutputWindow OpenFile6=led.c,0,286,286,1530,1043,30,68,30,0
OpenFile7=i2c_ctr.c,0,154,299,1398,1056,0,72,6,0
OpenFile8=i2c_twl.c,0,483,300,1727,1057,0,72,0,0
OpenFile9=tasks.c,0,132,132,1376,889,47,104,36,0
OpenFile10=i2c_mcu.c,0,330,330,1204,1087,0,331,0,0
OpenFile11=ProjectWindow
PrjPos=0,6,758,2,252
OpenFile12=OutputWindow
OutputPos=0,704,1089,701,1562 OutputPos=0,704,1089,701,1562
OpenFile7=i2c_ctr.c,0,154,299,1398,1056,0,220,0,0
ActivePRJ=yav_mcu_bsr.prj ActivePRJ=yav_mcu_bsr.prj
[ProjectWindow] [ProjectWindow]
ProjectWindowDispType=0 ProjectWindowDispType=0

View File

@ -16,7 +16,7 @@ T=4aae01f1
3=led.h 3=led.h
4=pm.h 4=pm.h
[i2c_ctr.c] [i2c_ctr.c]
T=4aae394d T=4aaf55db
1=incs.h 1=incs.h
[main.c] [main.c]
T=4a9e6e71 T=4a9e6e71
@ -31,22 +31,22 @@ T=4aa4d76e
T=4a9e6e71 T=4a9e6e71
1=incs_loader.h 1=incs_loader.h
[i2c_mcu.c] [i2c_mcu.c]
T=4aa62b41 T=4aaf5bf7
1=incs.h 1=incs.h
2=i2c_mcu.h 2=i2c_mcu.h
[i2c_twl.c] [i2c_twl.c]
T=4aa76932 T=4aaf55db
1=incs.h 1=incs.h
2=i2c_twl_defs.h 2=i2c_twl_defs.h
[ini_VECT.c] [ini_VECT.c]
T=4aae33c6 T=4aae33c6
1=config.h 1=config.h
[led.c] [led.c]
T=4aae0405 T=4aaf5378
1=incs.h 1=incs.h
2=led.h 2=led.h
[rtc.c] [rtc.c]
T=4aaddfa3 T=4aaee84a
1=incs.h 1=incs.h
[vreg_ctr.c] [vreg_ctr.c]
T=4aadf96a T=4aadf96a
@ -62,7 +62,7 @@ T=4aa8a1dd
2=jhl_defs.h 2=jhl_defs.h
3=vreg_twl.h 3=vreg_twl.h
[tasks.c] [tasks.c]
T=4aae1647 T=4aaf56f5
1=incs.h 1=incs.h
2=renge\renge.h 2=renge\renge.h
3=pm.h 3=pm.h
@ -73,7 +73,7 @@ T=4aadf487
3=pm.h 3=pm.h
4=led.h 4=led.h
[renge\renge.c] [renge\renge.c]
T=4aae35f4 T=4aae3b80
1=renge\renge_defs.h 1=renge\renge_defs.h
2=renge\renge_task_intval.h 2=renge\renge_task_intval.h
3=renge\renge_task_immediate.h 3=renge\renge_task_immediate.h
@ -112,7 +112,7 @@ T=4a9e6e71
T=4aae0407 T=4aae0407
1=config.h 1=config.h
[config.h] [config.h]
T=4aadef58 T=4aaf54ba
[bsr_system.h] [bsr_system.h]
T=4aaddbc7 T=4aaddbc7
1=jhl_defs.h 1=jhl_defs.h
@ -143,7 +143,7 @@ T=4a7c0777
[pm.h] [pm.h]
T=4aa7a30d T=4aa7a30d
[rtc.h] [rtc.h]
T=4aadcdb0 T=4aaee839
[adc.h] [adc.h]
T=4aa74fb6 T=4aa74fb6
1=jhl_defs.h 1=jhl_defs.h