Em xin trình bày ngắn gọn như này thôi ạ:
Em đang tìm hiểu ngắt ngoài của LPC2103. Vậy anh nào đã khởi tạo ngắt xung cạnh xuống (rising edge) cho EINT1 rồi xem hộ em cái đoạn này của em đã đúng chưa mà sao chạy proteus mãi mà không đúng:
P/S: Em đã thử xóa cả hai dòng PINSEL đi rồi mà nó vẫn cứ ngắt như thường mới ảo chứ! Không biết em còn thiếu chỗ nào không? Các anh bớt chút time xem hộ em cái, em mới tìm hiểu con này không lâu mà!
Chúc các anh ăn tết vui vẻ!
Em đang tìm hiểu ngắt ngoài của LPC2103. Vậy anh nào đã khởi tạo ngắt xung cạnh xuống (rising edge) cho EINT1 rồi xem hộ em cái đoạn này của em đã đúng chưa mà sao chạy proteus mãi mà không đúng:
Code:
unsigned char i = 0; void ngat1(void) __irq { i++; EXTINT = 2; VICVectAddr = 0; } int main (void) { PINSEL0 = 0x20000000; PINSEL1 = 0; SCS = 0; VICIntEnClr = (1<<15); EXTMODE = 2; //EINT0 is edge sensitive EXTPOLAR = 2; //EINT0 falling edge VICIntSelect = 0; VICVectCntl0 = 0x2f; VICVectAddr0 = (unsigned)ngat1; VICIntEnable = (1<<15); //Enable EINT1 IODIR = 0xff; lcd_init(); while(1) { lcd_gotoxy(0, 0); lcd_putnum(i); }; }
Chúc các anh ăn tết vui vẻ!
Comment