ctr_mcu/branches/0.15(sdk0.9_E3_fix_vol)/reboot.c

25 lines
634 B
C

/********************************************************//*
むりやりリブート
ファイル中にインラインアセンブラがあると、
そのモジュール全部最適化が聞かなくなるため追い出した
**********************************************************/
#pragma SFR
#include "incs_loader.h"
void my_reboot(){
#asm
MOV PSW,#06H ; ダミーのPSWをセット
MOVW AX,#000d0h ; リセットのベクタ値を取り込んでいます。
PUSH PSW
PUSH AX ; これでRETIのためのスタックを準備
RETI ; これでリセット・ベクタに分岐
#endasm
}