📄 target.c
字号:
#define IN_TARGET
#include "config.h"
#include "lpc213x.h"
/*********************************************************************************************************
** 函数名称: IRQ_Exception
** 功能描述: 中断异常处理程序,用户根据需要自己改变程序
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
** 作 者:
** 日 期:
********************************************************************************************************/
void __irq IRQ_Exception(void)
{
while(1); // 这一句替换为自己的代码
}
/*********************************************************************************************************
** 函数名称: FIQ_Exception
** 功能描述: 快速中断异常处理程序,用户根据需要自己改变程序
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
** 作 者:
** 日 期:
********************************************************************************************************/
void FIQ_Exception(void)
{
while(1); // 这一句替换为自己的代码
}
/*********************************************************************************************************
** 函数名称: TargetInit
** 功能描述: 目标板初始化代码,在需要的地方调用,根据需要改变
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
** 作 者:
** 日 期:
********************************************************************************************************/
void TargetInit(void)
{
/* 添加自己的代码 */
}
/*********************************************************************************************************
** 函数名称: TargetResetInit
** 功能描述: 调用main函数前目标板初始化代码,根据需要改变,不能删除
** 输 入: 无
** 输 出: 无
** 全局变量: 无
** 调用模块: 无
** 作 者:
** 日 期:
********************************************************************************************************/
void TargetResetInit(void)
{
/*
//设置存储器映射方式
#ifdef __DEBUG_RAM //如果在片内RAM调试
MEMMAP = 0x02; //映射到片内RAM
#endif
#ifdef __DEBUF_FLASH //如果在片内Flash调试
MEMMAP = 0x01; //映射到片内RAM
#endif
#ifdef __IN_CHIP //如果在片内Flash调试()
MEMMAP = 0x01; //映射到片内RAM
#endif
// 设置系统各部分时钟
//设置外设时钟(VPB时钟PCLK)与系统时钟(cclk)的分频比
PLLCON = 1; //设置激活但未连接PLL
#if ((Fcclk / 4) / Fpclk) == 1
VPBDIV = 0;
#endif
#if ((Fcclk / 4) / Fpclk) == 2
VPBDIV = 2;
#endif
#if ((Fcclk / 4) / Fpclk) == 4
VPBDIV = 1;
#endif
//设定PLL的乘因子M程除因子P的的值
//Fclk/Fosc = M
//Fcco/Fcclk = 2 * p
#if (Fcco / Fcclk) == 2
PLLCFG = ((Fcclk / Fosc) - 1) | (0 << 5);
#endif
#if (Fcco / Fcclk) == 4
PLLCFG = ((Fcclk / Fosc) - 1) | (1 << 5);
#endif
#if(Fcco / Fcclk) == 8
PLLCFG = ((Fcclk / Fosc) - 1) | (2 << 5);
#endif
#if(Fcco / Fcclk) == 16
PLLCFG = ((Fcclk / Fosc) - 1) | (3 << 5);
#endif
PLLFEED = 0xaa;
PLLFEED = 0x55;
while((PLLSTAT & (1 << 10)) == 0); //等待PLL锁定
PLLCON = 3; //设置激活并连接PLL
PLLFEED = 0xaa;
PLLFEED = 0x55;
// 设置存储器加速模块
MAMCR = 2;
#if Fcclk < 20000000
MAMTIM = 1;
#else
#if Fcclk < 40000000
MAMTIM = 2;
#else
MAMTIM = 3;
#endif
#endif
*/
}
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -