スタンドアロン試遊台対応(homeに入れてしまうのを回避)

git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@331 013db118-44a6-b54f-8bf7-843cb86687b1
This commit is contained in:
n2232 2011-05-19 07:39:49 +00:00
parent 32651df80e
commit e7456340e9
8 changed files with 77 additions and 60 deletions

Binary file not shown.

View File

@ -15,12 +15,12 @@
//#define _TAIKENDAI_SEISAN_SPECIAL_
// 生産中に体験台向け使用が発症すると、アダプタがないと電源が入らずに検査に支障があるので一時ファーム
//#define _TAIKENDAI_
// #define _TAIKENDAI_
// homeメニューに入れてしまうのを回避する特殊ファームをつくる。ROMが足りないので電池パラメータ周りをパスする
#define MCU_VER_MAJOR 0x01
#define MCU_VER_MINOR 0x33
#define MCU_VER_MINOR 0x34
// ↑改訂の時は↓気をつけないと体験台の生産できないからね!
#ifdef _TAIKENDAI_SEISAN_SPECIAL_
@ -29,7 +29,7 @@
#ifdef _TAIKENDAI_
#define MCU_VER_MINOR 0x90
#define MCU_VER_MINOR 0x92
// 0x90 1.31 相当 HOMEに入れてしまうのをスイッチのマスクで対策
// ROM不足のため、電池パラメータ削除

Binary file not shown.

View File

@ -99,27 +99,24 @@ void tsk_sw( )
task_interval = (u8)( INTERVAL_TSK_SW / SYS_INTERVAL_TICK );
}
// 8ms 毎にきます
// 8ms 毎にきます
switch ( system_status.pwr_state )
{
case ( ON ):
case ( SLEEP ):
case ( OFF ):
case ( ON_CHECK ):
#ifndef _TAIKENDAI_
// 電源スイッチの監視 //
if( SW_pow_count == ( TIME_PWSW_CLICK ) )
if( SW_pow_count == ( TIME_PWSW_CLICK ) ) // クリック時間に到達
{
set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_CLICK );
#ifdef _TAIKENDAI_
// いやなタイミングでPWSWを押すとHOMEメニューに入れてしまうのを回避
SW_pow_count = 0;
sw_pwsw_mukan_time = TIME_MUKAN_PWSW;
#endif
}
else if( SW_pow_count == ( HOLD_THREASHOLD ) )
else if( SW_pow_count == ( HOLD_THREASHOLD ) ) // 長押しに到達
{
set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_HOLD );
if( off_timeout_timer == 0 )
if( off_timeout_timer == 0 ) // 強制電源断カウントダウン開始、何度も発動しないように。
{
off_timeout_timer = vreg_ctr[ VREG_C_OFF_DELAY ] * 16;
}
@ -133,18 +130,33 @@ void tsk_sw( )
system_status.force_off = true;
}
}
{
count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // ボタン押し時間のカウント
}
#else // 試遊台の場合 //
// 電源スイッチの監視 //
if( SW_pow_count == ( TIME_PWSW_CLICK ) )
{
if( sw_pwsw_mukan_time == 0 )
{
set_irq( VREG_C_IRQ0, REG_BIT_SW_POW_CLICK );
// いやなタイミングでPWSWを押すとHOMEメニューに入れてしまうのを回避するためのマスクタイマー
sw_pwsw_mukan_time = TIME_MUKAN_PWSW;
}
}
else if( SW_pow_count == ( HOLD_THREASHOLD ) )
{
system_status.force_off = true;
}
#ifdef _TAIKENDAI_
if( sw_pwsw_mukan_time != 0 )
{
sw_pwsw_mukan_time--;
}
else
count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // ボタン押し時間のカウント
#endif
{
count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // ボタン押し時間のカウント
}
// HOME スイッチ //

View File

@ -503,16 +503,21 @@ static void chk_emergencyExit(){
else if( shirobako_power_control_count == 200 ) // * (sys_tick)[ms]
// デバッガが何かしたいらしい
{
// #ifdef _RVD_
// 白箱は電源を切りたいらしい
system_status.pwr_state = OFF_TRIG;
renge_task_interval_run_force = true;
shirobako_power_control_count = WAIT_SHIROBAKO_POW_CONTROL;
// #endif
}
else
{
if( !RESET1_n )
{
shirobako_power_control_count += 1;
// #ifdef _RVD_
if( shirobako_power_control_count != 255 )
// #endif
shirobako_power_control_count += 1;
}
else
{

View File

@ -194,11 +194,11 @@
//#define 32k_I1 P12.3 // XT1
//#define 32k_I2 P12.4 // XT2
#define DIPSW_0 P4.0 // mini cube ソフトウェアディップスイッチ
#define DIPSW_1 P4.1 // mini cube ソフトウェアディップスイッチ
#define DIPSW_0 P4.0 // mini cube ソフトウェアディップスイッチ TOOL0、L禁止
#define DIPSW_1 P4.1 // mini cube ソフトウェアディップスイッチ TOOL1
#ifndef _MODEL_WM0_
#define SHELL_OPEN P7.1 // INTP5 ふた開閉 (閉じると?)
#define SHELL_OPEN P7.1 // INTP5 ふた開閉 (閉じるとL)
#else
#define SHELL_OPEN 1
#endif

View File

@ -756,37 +756,6 @@ Include32=renge\renge_task_intval.h
Include33=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h
Include34=self_flash.h
Include35=pedo_lpf_coeff.h
[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.LK78K0R 0]
Version=100
O0=bsr_k0r.lmf
@ -1039,6 +1008,37 @@ 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

View File

@ -1,15 +1,15 @@
[ProjectManager]
FrameMax=1
FrameX=2026
FrameY=249
FrameX=304
FrameY=108
FrameCX=1440
FrameCY=850
OpenFile1=config.h,0,442,428,1557,1029,14,18,14,0
OpenFile2=OutputWindow
OutputPos=0,34,740,376,1323
OpenFile3=ProjectWindow
OpenFile1=ProjectWindow
PrjPos=0,0,706,0,291
OpenFile4=batt_params.h,0,300,300,1546,1022,0,28,0,0
OpenFile2=batt_params.h,0,596,19,1842,741,0,19,0,0
OpenFile3=config.h,0,442,428,1557,1029,63,10,0,0
OpenFile4=OutputWindow
OutputPos=0,34,740,376,1323
ActivePRJ=yav_mcu_bsr.prj
[ProjectWindow]
ProjectWindowDispType=0