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

📄 main.c

📁 ND-Tech DSP6713 Timer Source
💻 C
字号:
/* ======================================================================== */
/* Project Name: Timer                                                      */
/*                                                                          */
/* 夯 橇肺弊伐篮 Timer甫 捞侩窍咯 1檬付促 interrupt甫 惯积矫难辑 LED俊 矫埃 */
/* 儒抚阑 钎矫窍绰 橇肺弊伐捞促.                                            */ 
/* ======================================================================== */
/*          Copyright (C) 2000 - 2006 ND-Tech. Co., Ltd.                    */
/*                          All Rights Reserved.                            */
/* ======================================================================== */
#include 	"c6000.h"
#include 	"dsxio.h"

extern cregister volatile unsigned int IER;
extern cregister volatile unsigned int CSR;

int		count=0;

void PLL6713()
{
	int i;
	// CPU Clock Input : 50MHz
	
	PLLCSR	 = PLLCSR & 0xfffffffe;
	for(i=0;i<4;i++);
	PLLCSR	 = PLLCSR | 0x08;
	PLLDIV0  = 0x08001;  // 50MHz/2 = 25MHz
 	PLLM     = 0x0c;     // 25MHz * 12 = 300MHz
	PLLDIV1  = 0x08000;  // SYSCLK1 = 300MHz/1 = 300MHz
	PLLDIV2  = 0x08001;  // SYSCLK2 = 300MHz/2 = 150MHz // Peripheral Clock
	PLLDIV3  = 0x08003;  // SYSCLK3 = 300MHz/4 =  75MHz // SDRAM Clock
	for(i=0;i<4;i++);
	PLLCSR	 = PLLCSR & 0xfffffff7;
	for(i=0;i<4;i++);
	PLLCSR	 = PLLCSR | 0x01;
}

void intr_enable(int num)
{
	IER = IER | (1<<num) | 0x3;
	CSR = CSR | 0x1;
}

void timer_init(void)
{
	CTL0 = 0x380;     // Clock Mode
	PRD0 = 37500000;  // Timer of 1 sec
}

interrupt void c_int14()
{
	LED = count++;
	if(count>=256) count=0;
}

void main()
{
	PLL6713();
	timer_init();
	intr_enable(14);
	count = 0;
	while(1);
} 	

⌨️ 快捷键说明

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