![]() |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Jul 2012
Bài gửi: 2
: |
sửa lỗi timer0 giúp mình
Mình muốn dùng interrupt timer0 để tạo delay 1 giây , sau 1 giây thì sẽ đảo port RB1,nhưng mình gặp vấn đề ở chỗ dường như nó không ngắt sau 1 giây, mình cũng ko hiểu code mình sai ở đâu nữa , mong các bạn xem giúp
#include<htc.h> __CONFIG(XT & WDTDIS & PWRTEN & UNPROTECT & LVPDIS & DEBUGDIS); #define _XTAL_FREQ 4000000 void init_port() { //ANSEL=0; //ANSELH=0; TRISB1=0; RB1=0; } void init_timer() { T0CS=0; PSA=0; PS2=1; PS1=1; PS0=1; TMR0=0; } void main() { init_port(); init_timer(); GIE=1; T0IF=0; T0IE=1; while(1){} } void interrupt isr() { int unsigned count=0; if(T0IF) { ++count; if(count>=15) {RB1^=1;count=0;} T0IF=0; TMR0=0; } } nếu không dùng biến count thì có thể ngắt được, nhưng mình muốn nó thực hiện sau 1 giây , và các bạn cho mình hỏi lun tại sao mình dùng dùng 2 thanh ghi ANSEL và ANSELH thì nó báo lỗi undefine zay |
![]() |
![]() |
|
|