timer1_main.c

来自「ADC图形图像例子」· C语言 代码 · 共 99 行

C
99
字号

#include "int.h"
#include "register.h"
#include "io.h"
#include "uart.h"


volatile vgBOOL LedFlage=vgTRUE;volatile int count=0;

void led_init(){    long val;    
	    /* Set the pin45 to be PIO27 */    val = readl( REG_PMCR1 );	
	writel( REG_PMCR1 , val | 0x400 );        /* Set the PIO27 to be Output (OC) mode */	
	val = readl( REG_PIOMOD );	
	writel( REG_PIOMOD , 0x00);}void led_on(void){    int val;        /* Turn on LED */    
	val = readl( REG_PIOLDAT );	
	writel( REG_PIOLDAT , 0x08000000);}
void led_off(void){    int val;        /* Turn off LED */     
	val = readl( REG_PIOLDAT );	
	writel( REG_PIOLDAT , 0);}


void LedEvent(void)
{		if(count ==15)	{		count=0;	}	else 	{		count++;		return;	}	
	if(vgTRUE == LedFlage)
	{
		led_on();
		LedFlage = vgFALSE;
	}
	else
	{
		led_off();
		LedFlage = vgTRUE;
	}

	UartPrintfCh1("15 Timer1 interrupt happened! \r\n");
}


int main(void)
{
	U32 Freq;
	
	// Disable Cache
	_vgSDK_Cache_Flag = 0;
	
	// initialize for DebugPrintf
	UartConfigCh1(DATABIT8, BPS115200); 
	
	// Initialize Interrupt
	InitInterrupt();	
		// Get System Frequency	Freq = vgGetSysFreq();
		// Initialize Timer1
	vgInitTimer1( TIMER1, Freq );
	led_init();			vgSetTimer1( 65535);
	UartPrintfCh1("Timer1 interrupt start! \r\n");
	
	while(1);

	return 0;
}

⌨️ 快捷键说明

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