main.c

来自「HID-Ukey底层源码实现(st72651芯片) windows上层驱动」· C语言 代码 · 共 96 行

C
96
字号
/**************** (c) 2000  STMicroelectronics **********************

PROJECT : MP3 Playback with 2K-page flash

VERSION :  v 0.96

CREATION DATE :  01/07/2003

AUTHOR : MCU Competence Center Shanghai

-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-

MODIFICATIONS : 

******************************************************************************/

#include "mcu_conf.h"
#include "usb_lib.h"

#include "appli.h"
#include "bot.h"
#include "MAL_Func.h"
#include "UARTT0.h"
#include "HID_usb.h"

void Init_RAM()
{
	// To initialize the DEFAULT_RAM
	unsigned int	Addr;

	asm {
		ld		A, #$02
		ld		Addr, A
		clr		A
		ld		Addr:1, A
loop:
		clr		X
loop1:
		ld		([Addr.w],X), A
		inc		X
		jrne	loop1

		inc		Addr
		ld		X, Addr
		cp		X, #$01A
		jrne	loop
	}

	asm {
		ld		X, #$052
loop0:
		clr		(X)
		inc		X
		jrne	loop0
	}
}

/*-----------------------------------------------------------------------------
ROUTINE NAME : main
INPUT/OUTPUT : None
DESCRIPTION  : The reset vector points on main().
-----------------------------------------------------------------------------*/
void main(void)
{
	extern unsigned int Reset_point;

	Init_RAM();
	asm	SIM;				// Disable Interrupt
	USER_init();
	Init_USB();
	Reset_point = Set_Label();    
	asm	RIM;				// Enable Interrupt

	MAL_Init();

	Crd_Initiate();			//@jin	

	while(1) {
#ifdef	USB_POLLING_MODEL
		USB_Polling();
#endif
	if (vUSB_Configuration) {  
			USER_Application();
			HID_XfrApdu();								// process USB Report data for Ekey
			IFD_XfrT0();
			BOT_Action();									// process BOT protocol
		}
	}
}


/**************** (c) 2000  STMicroelectronics **********************/



⌨️ 快捷键说明

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