⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 周立功2103开发板CD资料
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               Guangzhou ZHIYUAN electronics Co.,LTD.
**                                 http://www.zyinside.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name:           main.c
** Last modified Date:  2006-02-22
** Last Version:        1.0
** Descriptions:        header file of the specific codes for LPC2200 target boards
**              Every project should include a copy of this file, user may modify it as needed
**------------------------------------------------------------------------------------------------------
** Modified by: 
** Modified date:
** Version: 
** Descriptions: 
**
********************************************************************************************************/

#define IN_MAIN
#include "config.h"
#include "Time.h"
#include "ISR.h"
#pragma import(__use_no_semihosting_swi)        //don't delete this line
/* 
	Fcclk = Fosc*4 = 11.0592MHz*4 = 44.2368MHz
 	Fpclk = Fcclk/4 = 44.2368MHz/4 = 11.0592MHz
*/
#define		Tn_n		0			// 定时器0,Tn_n=0
									// 定时器1,Tn_n=1
									// 定时器2,Tn_n=2
									// 定时器3,Tn_n=3

#define		BEEP		(1 << 7)	// P0.7引脚控制蜂鸣器,低电平蜂鸣器鸣叫
#define		Tn_time		110592/2	// 定时0.5S
#define		Tn_PR		99			// 预分频100
#define		Tn_MODE		0			// 匹配时,定时器复位
#define		Tn_EXT_MODE	0			// 匹配时,不执行任何动作
#define		Tn_MAT		0			// 匹配通道0
#define		Tn_INT_En	1			// 匹配时,产生中断
#define		Tn_slot		0			// 定时器中断通道0

/*********************************************************************************************************
** 函数名称:Tn_Int()
** 函数功能:定时器中断服务程序。
********************************************************************************************************/
void  Tn_Int(void)
{
#if(Tn_n == 0)		//定时器0
	T0IR = 0x01;	// 清除中断标志 
#endif

#if(Tn_n == 1)		//定时器1
	T1IR = 0x01;	// 清除中断标志 
#endif	

#if(Tn_n == 2)		//定时器2
	T2IR = 0x01;	// 清除中断标志 
#endif	

#if(Tn_n == 3)		//定时器3
	T3IR = 0x01;	// 清除中断标志 
#endif	

	if( (IO0SET & BEEP) == 0 ) 	IO0SET = BEEP;	// 控制蜂鸣器鸣叫
	else						IO0CLR = BEEP;	// 控制蜂鸣器停止鸣叫	
	VICVectAddr = 0x00;
}

/*********************************************************************************************************
** Function name:	IRQ_Exception
** Descriptions:	interrupt exceptional handler , change it as needed
**					don't delete this function 
********************************************************************************************************/
void  IRQ_Exception(void)
{
}
/*********************************************************************************************************
** 函数名称:Main()
** 函数功能:控制蜂鸣器鸣叫,中断方式。
** 说明:JP9短接,JP4断开。
********************************************************************************************************/
void  Main(void)
{
    TargetInit(VPBDIV_DATA, PLLCFG_DATA, MAMTIM_DATA);      // don't delete
    while((PLLSTAT & (1 << 10)) == 0);                      // can delete

	PINSEL0 = 0x00000000;	// 设置所有管脚连接GPIO
	PINSEL1 = 0x00000000;
	IO0DIR = BEEP;			// 设置蜂鸣器控制口为GPIO输出模式
   	// 定时器0初始化
#if(Tn_n == 0)
   	T0MAT_Init(Tn_time,Tn_PR,Tn_MODE,Tn_EXT_MODE,Tn_MAT,Tn_INT_En);
	SetISR(TIMER0_INT,Tn_slot,(uint32)Tn_Int);
#endif

#if(Tn_n == 1)	
   	// 定时器1初始化
	T1MAT_Init(Tn_time,Tn_PR,Tn_MODE,Tn_EXT_MODE,Tn_MAT,Tn_INT_En);
	SetISR(TIMER1_INT,Tn_slot,(uint32)Tn_Int);
#endif

#if(Tn_n == 2)	
   	// 定时器2初始化
	T2MAT_Init(Tn_time,Tn_PR,Tn_MODE,Tn_EXT_MODE,Tn_MAT,Tn_INT_En);
	SetISR(TIMER2_INT,Tn_slot,(uint32)Tn_Int);
#endif

#if(Tn_n == 3)	
   	// 定时器3初始化
	T3MAT_Init(Tn_time,Tn_PR,Tn_MODE,Tn_EXT_MODE,Tn_MAT,Tn_INT_En);
	SetISR(TIMER3_INT,Tn_slot,(uint32)Tn_Int);
#endif

	IRQEnable();
	
	VICVectAddr = 0x00;
	
   	while(1);   			//等待中断
}
/*********************************************************************************************************
**                            End Of File
********************************************************************************************************/

⌨️ 快捷键说明

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