📄 interrupt.c
字号:
#include "s3c2410.h"#include "machine.h"#include "uart.h"/* gpio init */void board_init(void){ GPFCON = vGPFCON; GPFUP = vGPFUP; GPHCON = vGPHCON; GPHUP = vGPHUP; EXTINT0 = vEXTINT0; EXTINT1 = vEXTINT1;}/* irq init */void init_irq(void){ SRCPND = SRCPND; INTPND = INTPND; GPFCON = (GPFCON & 0xffcc) | (1<<5) | (1<<1); GPGCON = (GPGCON & 0xff3fff3f) | (1<<23) | (1<<7); EINTPEND = 0xffffff; SRCPND = (1<<0 | 1<<5); INTPND = (1<<0 | 1<<5); EINTMASK &= (~(1<<11)); INTMSK &= (~(1<<0 | 1<<5));}/* irq handle */void int_handle(void){ unsigned long key = INTOFFSET; switch (key) { case 0: putstr("EINT0, SB1202 pressed!\n\r"); break; case 5: putstr("EINT11, SB1203 pressed!\n\r"); break; default: putstr("Interrupt unknown!\n\r"); break; } if (key == 5) { EINTPEND = 1<<11; } SRCPND = 1 << key; INTPND = INTPND;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -