Time0
Code mẫu để thiết lập Time0
////main
setup_timer_0(RTCC_DIV_2);
enable_interrupts(int_timer0);
enable_interrupts(global);
set_timer0(6);
////////////
#INT_TIMER0
void TIME0_src()
{
//Dividing = 2
//frenquency xtal is 20MHz
//time for overflow interupt: value = (256-set_num )*DIV*4/f (us)
//set_num=6 then value=100us
CLEAR_INTERRUPT(INT_TIMER0);
DISABLE_INTERRUPTS(GLOBAL);
counter++;
if(counter==100000) // 1s
{
counter=0;
if(counter==0) read_time=1; //doc du lieu DS1307
}
SET_TIMER0(6);
ENABLE_INTERRUPTS(GLOBAL);
}