chương trình ngắt ngoài cứ 10ms thì ngắt 1 lần.
dem là một biến kiểu interger.
mình dùng thạch anh 8Mhz, timer0 hoạt động ở chế độ 2 là 1Mhz thì 1 lần tăng giá trị của timer0 là 1us, giá trị đặt trước là 50 thì 1 lần ngắt xảy ra sau 50us.như vậy cứ 90*50us thì led sẽ sáng lên.nhưng thực tế thì ko như vậy.ko có led nào sáng hết.giúp mình với.
Code:
interrupt [EXT_INT0] void ext_int0_isr(void) { // Place your code here dem=0; TCCR0=0x02;//cho timer0 chạy OCR0=50; // giá trị đặt trước. } interrupt [TIM0_COMP] void timer0_comp_isr(void) { // Place your code here if (dem>=90) { dem=0; TCCR0=0x00; // cho timer dừng PORTC=0x01; // xuất ra led } ++dem; }
mình dùng thạch anh 8Mhz, timer0 hoạt động ở chế độ 2 là 1Mhz thì 1 lần tăng giá trị của timer0 là 1us, giá trị đặt trước là 50 thì 1 lần ngắt xảy ra sau 50us.như vậy cứ 90*50us thì led sẽ sáng lên.nhưng thực tế thì ko như vậy.ko có led nào sáng hết.giúp mình với.
Comment