📄 main.c
字号:
#define GLOBALS
#include "Main.h"
void detect_AM29LV160(void);
void Main(void)
{
char last_key;
DisableInterrupts;
initialize();
EnbleInterrupts;
//detect_AM29LV160();
//Program_AM29LV160(receive_text_buffer,Point_program_address,8192*2);
for(;;)
{
if(IOPDATA&8) IOPDATA&=0x07;
else IOPDATA|=8;
BootLoader(&last_key);
delay(5000);
//printp("\nThis is a test,IOPDATA = %X",IOPDATA);
}
}
/*********************************************************
* 名称:
* 功能: 中断程序初始化
*********************************************************/
void Init_interrupts(void)
{
INTMODE=0x10;
IOPCON = 0x12;
Enable_Int(nEXT0_INT);
pISR_EINT0=(unsigned int)ex_interrupt0;
pISR_IRQ=(unsigned int)ISR_IrqHandler;
pISR_FIQ=(unsigned int)ISR_FiqHandler;
pISR_TIMER0=(unsigned int)Time0_interrupt;
pISR_UART0_R=(unsigned int)Uart0_R_interrupt;
//writer_register((unsigned int *)&INTMASK,MASKALL,0);
//writer_register((unsigned int *)&INTMASK,10,0);//time0
}
/*********************************************************
* 名称: ISR_IrqHandler
* 功能: 中断处理函数
*********************************************************/
void ISR_IrqHandler(void)
{
unsigned int IntOffSet;
unsigned int *pINT;
void (*interrupt)(void);
IntOffSet = (unsigned int)INTOFFSET; // 获取中断源
Clear_PendingBit(INTOFFSET>>2);
pINT=(unsigned int *)(_ISR_STARTADDRESS+0x20+IntOffSet);
interrupt = (void (*)(void))(*pINT);
(*interrupt)(); //调用中断函数
}
/*********************************************************
* 名称: ISR_FiqHandler
* 功能: 快速中断处理函数
*********************************************************/
void ISR_FiqHandler(void)
{
unsigned int IntOffSet;
unsigned int *pINT;
void (*interrupt)(void);
IntOffSet = (unsigned int)INTOFFSET; // 获取中断源
Clear_PendingBit(INTOFFSET>>2);
pINT=(unsigned int *)(_ISR_STARTADDRESS+0x20+IntOffSet);
interrupt = (void (*)(void))(*pINT);
(*interrupt)(); //调用中断函数
}
/*********************************************************
* 名称: ISR_PreHandler
* 功能: 预取错误中断处理函数
*********************************************************/
void ISR_PreHandler(void)
{
printp("Prefetch_Handler error!\n");
}
/*********************************************************
* 名称: ISR_AbtHandler
* 功能: 中止模式中断处理函数
*********************************************************/
void ISR_AbtHandler(void)
{
printp("Abort_Handler error!\n");
}
/*********************************************************
* 名称: ISR_UdefHandler
* 功能: 未定义指令中断处理函数
*********************************************************/
void ISR_UdefHandler(void)
{
printp("Undefined_Handler error!\n");
}
/*********************************************************
* 名称: ISR_SwiHandler
* 功能: 用户软中断处理函数
*********************************************************/
void ISR_SwiHandler(void)
{
printp("SWI_Handler error!\n");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -