?? main.c
字號:
/****************************************************************************
* 名稱:main.c
* 功能:通過外部中斷0,外部中斷1和外部中斷2實現加減計數,并輸出數碼管顯示
****************************************************************************/
#include "config.h"
#define CON 0x000000ff
uint8 temp=0x00;
/****************************************************************************
* 名稱:eint0()
* 功能:外部中斷0處理函數,實現加計數
****************************************************************************/
void __irq eint0(void)
{
temp++;
while(EXTINT&(1<<0))
EXTINT=1<<0;
IOCLR=CON;
IOSET=temp;
VICVectAddr=0;
}
/****************************************************************************
* 名稱:eint1()
* 功能:外部中斷1處理函數,實現加計數
****************************************************************************/
void __irq eint1(void)
{
temp--;
while(EXTINT&(1<<1))
EXTINT=1<<1;
IOCLR=CON;
IOSET=temp;
VICVectAddr=0;
}
/****************************************************************************
* 名稱:eint2()
* 功能:外部中斷2處理函數,清零
****************************************************************************/
void __irq eint2(void)
{
temp=0;
while(EXTINT&(1<<2))
EXTINT=1<<2;
IOCLR=CON;
IOSET=temp;
VICVectAddr=0;
}
/****************************************************************************
* 名稱:main()
* 功能:初始化外部中斷0,外部中斷1及I/O連接
****************************************************************************/
int main(void)
{
PINSEL0=0xa0000000;
PINSEL1=0x00000001;
IODIR=CON;
IOCLR=CON;
IOSET=temp;
VICIntSelect=0;
VICIntEnable=0x0001c000;
VICVectCntl0=0x0000002e;
VICVectCntl1=0x0000002f;
VICVectCntl2=0x00000030;
VICVectAddr0=(int)eint0;
VICVectAddr1=(int)eint1;
VICVectAddr2=(int)eint2;
EXTINT=0x07;
while(1);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -