ctr_mcu/trunk/main.c
n2232 7eb9f6bdae 1.08
自己アップデート関数、データの転送が途中で打ち切られたときに不正ファームを書き込み、正常判定、煉瓦になることがあった。
関数名が不適なのを修正 tski_を付けた
起動時のポートなど設定コードの順番がよろしくなかった loader.c
マジックコードを書く場所をちょっと追加 たぶん役に立つ日は来ないが
 ROMがどうにも足りなくなったらあるいは… 多段アップデートしてもらって…
 1.00、1.06から/へ 更新できるのは確認した
違うファイル中で同じ変数名、違う中身を設定していた。怖いのでユニークに magic.c


git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@239 013db118-44a6-b54f-8bf7-843cb86687b1
2010-09-30 01:22:06 +00:00

74 lines
1.7 KiB
C

/* ========================================================
MCU CTR BSR
2008,2009 nintendo
開発技術部 藤田
======================================================== */
// ========================================================
#include "incs_loader.h"
#include "WDT.h"
#include "rtc.h"
#include "pm.h"
#include "accero.h"
#include "led.h"
#include "adc.h"
#include "pool.h"
// ========================================================
system_status_ system_status;
uni_pool pool;
/* ========================================================
本当のエントリ関数は loader.c にあります
======================================================== */
void main_loop( void )
{
// 電池投入時、ファームアップデート後のみ
RTC_init( ); // 内部でリブートか判定しています
renge_init( );
iic_mcu_start( );
EI( );
BT_chk();
system_status.pwr_state = OFF_TRIG;
if( system_status.reboot )
{
// リブート時は電源onに上書き
if( PM_chk_LDSW() != 0 )
{
system_status.pwr_state = ON_TRIG;
}
vreg_ctr[VREG_C_BT_REMAIN] = 100;
}
vreg_ctr_init( );
clear_hosu_hist(); // 履歴クリア
renge_task_interval_run_force = true;
RTCIMK = 0; /* 割り込み(アラーム&インターバル)許可 */
// メインループ //
while( 1 )
{ // システムtick、または割り込みで廻ります。
WDT_Restart( );
renge_task_interval_run( ); // 内部で、システムtickまたは強制起動します
renge_task_immed_run();
HALT( );
}
}