View Single Post
Old 20-04-2013, 09:14 PM   #1
hauceuit
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
hauceuit vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn