twi_init();
twi_set_addr_slave( TWI_ADDR_DS1307 );
u8 temp = twi_read_byte( DS1307_OSCILLATOR_EN_REG );
if( temp & (1 << 7) )
{ // часы не запущены и не выставлены
twi_write_byte( DS1307_OSCILLATOR_EN_REG, DS1307_OSCILLATOR_ENABLE );
twi_write_byte( DS1307_ADDR_CONTROL, DS1307_OUT_L | DS1307_SQWE_OFF );
// 14 апреля 2008 года. 16:50
twi_write_byte( DS1307_ADDR_YEAR, 0x08 );
twi_write_byte( DS1307_ADDR_MONTH, 0x04 );
twi_write_byte( DS1307_ADDR_DATE, 0x14 );
twi_write_byte( DS1307_ADDR_HOURS, 0x16 );
twi_write_byte( DS1307_ADDR_MINUTES, 0x50 );
}