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

📄 timesr.c

📁 2410一些基本试验的源码
💻 C
字号:
#include "2410addr.h"
#include "2410lib.h"
#include "timer.h"
int l=0;

void __irq timer1(void);

void time1nit(void)
{
	        
	 rTCFG0=0x64; //prescaler = 100,预分频值
	 rTCFG1=0x10;//divider = 1/8,定时器多路选择

	 rTCNTB1=5000;//rTCNTB0=PCLK/{(prescaler+1) * divider *freq

	//rTCFG0= rTCFG0 & ~0xff|(255<<0); //prescaler = 15,????
	//rTCFG1= rTCFG1 & ~0xf0|(1<<4);//divider = 1/8,???????

	//rTCNTB1 =0xfd9c;//rTCNTB0=PCLK/{(prescaler+1) * divider *freq
	rTCON|=(11<<8);//10010000 1011 0000 0000        
	// rSRCPND|=(BIT_TIMER1);
	 //rINTMSK=~(BIT_TIMER1);
	// rINTPND|=(BIT_TIMER1);
	 rINTMOD=0x0;  	//all irq
	 rINTMSK=0xffffffff; 	 //disable all interrupt source
	 rINTSUBMSK=0xffff; 		//disable all sub interrupt source
		    
	
	//rINTMSK=0xffffffff; 	 //disable all interrupt source
	//rINTSUBMSK=0xffff; 		//disable all sub interrupt source
}
void timenable(void)
{
	 rINTMSK=~(BIT_TIMER1);
	 rTCON&=0x9ff; //clear manual update bit
}

int Main()
{
	   SetClockDivider(1, 1);
	   SetSysFclk(DFT_FCLK_VAL);
	   Port_Init();
			
	   Uart_Select(0);
	   Uart_Init(0, UART_BAUD);
		
	   rGPFCON=0x5500;//GPF4--GPF7设置为output
	   rGPFUP=0;   //disable GPF pull up
	   rGPFDAT=0xff;
	   
	   time1nit();
	   
	   pISR_TIMER1=(unsigned)timer1;
	   
	   timenable();
	    
	   while(1)
	    {
		    if(l==25)
		    {
		    	rGPFDAT=~rGPFDAT;
		    	l=0;
		    }
		}
	      
}
void __irq timer1(void)
{
		l++;
		Uart_Printf("TIMER1 is occurred.\n");
	    ClearPending(BIT_TIMER1);   
}
 

⌨️ 快捷键说明

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