Ðề tài: ngắt timer CCS
View Single Post
Old 22-03-2010, 03:37 PM   #1
hunter800
Nhập môn đệ tử
 
Tham gia ngày: Mar 2010
Bài gửi: 10
:
ngắt timer CCS

hix ai giải thích dùm mình chương trình ngắt này với!Mình thực sự rất cố gắng đọc nhưng chuă hiểu lắm!thanks

#include <16F877A.h>
#fuses NOWDT,PUT,XT,NOPROTECT
#use delay(clock=4000000)
#byte PORTB = 0x06

int16 count;
int8 a;
//Chuong trinh ngat TMR0
#int_timer0
void interrupt_timer0()
{
set_timer0(6);
++count;
if(count == 2000) // 2000*500us = 500000us = 1s
{
count=0;
rotate_left(&a,1);
}
}
//Chuong trinh chinh
void main(void)
{
set_tris_b(0);
enable_interrupts(int_timer0);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2);
enable_interrupts(global);
set_timer0(6);// T_dinhthi = 2*(256 - 6)*1us = 500us
a = 0x01;

while(true)
{
PORTB = a;
}
}
hunter800 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn