resetprg.c

来自「低价位瑞萨单片机的水表程序」· C语言 代码 · 共 72 行

C
72
字号
/***********************************************************************/
/*                                                                     */
/*  FILE        :resetprg.c                                            */
/*  DATE        :Wed, Nov 19, 2008                                     */
/*  DESCRIPTION :initialize for C language.                            */
/*  CPU GROUP   :1B                                                    */
/*                                                                     */
/*  This file is generated by Renesas Project Generator (Ver.4.8).     */
/*                                                                     */
/***********************************************************************/

/*******************************************************************
 *  COMPILER for R8C/Tiny
 *  Copyright(c) 2004 Renesas Technology Corp.
 *  And Renesas Solutions Corp.,All Rights Reserved. 
 *
 *  resetprg.c : startup file 
 *
 *  Function:initialize each function
 *
 * $Date: 2006/09/29 05:57:30 $
 * $Revision: 1.9 $
 *******************************************************************/
#include "sfr_r81b.h"
#include "typedefine.h"
#include "resetprg.h"

DEF_SBREGISTER;
extern _UINT	_stack_top,_istack_top;
#pragma entry start
void start(void);
extern void initsct(void);
extern void _init(void);
void exit(void);
void main(void);

#pragma section program interrupt 

void start(void)
{
	_isp_	= &_istack_top; 	// set interrupt stack pointer
	prcr	= 0x02;		// change protect mode register
	pm0	= 0x00;		// set processor mode register
	prcr	= 0x00;		// change protect mode register
	_flg_	= __F_value__;	// set flag register
#if __STACKSIZE__!=0
	_sp_	= &_stack_top; 	// set user stack pointer
#endif
	_sb_	= 0x400;	// 400H fixation (Do not change)
	_intbh_ = 0x00; 	// set variable vector's address
	_asm("	ldc	#(topof vector)&0FFFFh,INTBL");

	initsct();		// initlalize each sections

#if __HEAPSIZE__ != 0
	heap_init();		// initialize heap 
#endif
#if __STANDARD_IO__ != 0
	_init();			// initialize standard I/O
#endif
	_fb_ = 0;		// initialize FB registe for debugger
	main();			// call main routine

	exit();		// call exit
}

void exit(void)
{
	while(1);		//infinite loop
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?