📄 main.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 + -