|
// инициализация DS1305
#define onRTC PORTD|=0x80;
#define offRTC PORTD&=~0x80;
#define wSPI while (!(SPSR & 0x80))
{// онициялизация регистров управления
onRTC;
wait1;
SPCR = 0x5f; //0x5C; //вкл SPI
SPDR=0x8f; //адрес CR
wSPI; //
SPDR=j; //вкл OSC, off WR, потом вкл реж прерывания INT0
wSPI; //
SPCR = 0x00; //выкл SPI
offRTC;
wait50;
};
//--------Прочитаем время, чтобы сбросить прерывание--------------
onRTC;
wait1;
SPCR = 0x5f; //0x5C; //вкл SPI
SPDR=0; //адрес чтения часов
wSPI; //
for (j=0;j<=18;j++){
SPDR = 0xFF; // ложная запись
wSPI; //
i = SPDR; //
};
E-mail: info@telesys.ru