?? cputimer.c
字號(hào):
/************************************************************************************
版權(quán)(c) 2003- 北京合眾達(dá)電子技術(shù)有限責(zé)任公司 *
* 設(shè)計(jì)者: 戴展波
*************************************************************************************/
#include "DSP28_Device.h"
#include "ext_inf.h"
unsigned int Led_Flag;
unsigned int count=0;
Uint32 countbetween=0;
Uint32 countold=0;
Uint32 countnew=0;
interrupt void ISRTimer2(void);
void main(void)
{
/*初始化系統(tǒng)*/
InitSysCtrl();
/*關(guān)中斷*/
DINT;
IER = 0x0000;
IFR = 0x0000;
Led_Flag = 0;
/*初始化PIE*/
InitPieCtrl();
/*初始化PIE中斷矢量表*/
InitPieVectTable();
/*初始化外設(shè)*/
InitPeripherals();
EALLOW;
PieVectTable.TINT2 = &ISRTimer2;
EDIS;
/*設(shè)置CPU*/
ConfigCpuTimer(&CpuTimer2, 150, 50000);
StartCpuTimer2();
/*開中斷*/
IER |= M_INT14;
EINT; // Enable Global interrupt INTM
ERTM; // Enable Global realtime interrupt DBGM
countold=CpuTimer2.RegsAddr->TPR.all;
for(;;);
}
interrupt void ISRTimer2(void)
{
CpuTimer2.InterruptCount++;
countnew=CpuTimer2.RegsAddr->TIM.all;
countbetween=countold-countnew;
countold=countnew;
if(Led_Flag == 1)
{
countold=CpuTimer2.InterruptCount;
*LED2 = 0;
LED1_ON;
count++;
Led_Flag = 0;
}
else
{
*LED2 = 1;
LED1_OFF;
Led_Flag = 1;
}
}
//===========================================================================
// No more.
//===========================================================================
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -