µç×ÓÍòÄêÀúµÄÉè¼Æ±ÏÒµÂÛÎÄ ÏÂÔØ±¾ÎÄ

ºþ±±ÎÄÀíѧԺÀí¹¤Ñ§Ôº ¸½Â¼1£º³ÌÐò

CE = 1; //·¢Ë͵ØÖ·

for ( i=8; i>0; i-- ) //Ñ­»·8´ÎÒÆÎ» {

SCLK = 0; temp = addr;

DIO = (bit)(temp&0x01); //ÿ´Î´«ÊäµÍ×Ö½Ú addr >>= 1; //ÓÒÒÆÒ»Î» SCLK = 1; }

//¶ÁÈ¡Êý¾Ý

for ( i=8; i>0; i-- ) {

ACC_7=DIO; SCLK = 1; ACC>>=1; SCLK = 0; } CE=0; dat1=ACC;

dat2=dat1/16; //Êý¾Ý½øÖÆ×ª»» //Ê®Áù½øÖÆ×ªÊ®½øÖÆ dat1=dat1; dat1=dat1+dat2*10; return (dat1); }

//³õʼ»¯ DS1302

void Initial(void) //³õʼ»¯1302 2010Äê09ÔÂ30ÈÕ23µã58·Ö56Ãë ÐÇÆÚÒ»

{

ºþ±±ÎÄÀíѧԺÀí¹¤Ñ§Ôº ¸½Â¼1£º³ÌÐò

write_1302 (0x8e,0x00); //ÔÊÐíд±£»¤ write_1302 (0x80,0x56);

//Ãëλ³õʼ»¯

write_1302 (0x82,0x58); //·ÖÖÓ³õʼ»¯ write_1302 (0x84,0x23); //Сʱ³õʼ»¯ write_1302 (0x86,0x30); //ÈÕ³õʼ»¯

write_1302 (0x88,0x09); //Ô³õʼ»¯ write_1302 (0x8c,0x10); //Äê³õʼ»¯ write_1302 (0x8a,0x01); //ÈÕÆÚʼ»¯ write_1302 (0x8e,0x80); //½ûֹд±£»¤

}

void di()//·äÃùÆ÷Ï캯Êý {

beep=0; delay(100); beep=1; }

void write_sfm(uchar add,uchar date) {

uchar shi,ge; shi=date/10; ge=date;

write_com(0x80+0x40+add); write_data(0x30+shi); write_data(0x30+ge); }

void write_nyrz(uchar add,uchar date)//ÏÔʾÄ꣬Ô£¬ÈÕ£¬ÖÜ{

uchar shi,ge; shi=date/10; ge=date;

ºþ±±ÎÄÀíѧԺÀí¹¤Ñ§Ôº ¸½Â¼1£º³ÌÐò

write_com(0x80+add); write_data(0x30+shi); write_data(0x30+ge); }

void display_week(uchar we) {

write_com(0x80+12); switch(we) {

case 1: write_data('M');delay(5);

write_data('O');delay(5); write_data('N'); break;

case 2: write_data('T');delay(5);

write_data('U');delay(5); write_data('E'); break;

case 3: write_data('W');delay(5);

write_data('E');delay(5); write_data('D'); break;

case 4: write_data('T');delay(5);

write_data('H');delay(5); write_data('U'); break;

case 5: write_data('F');delay(5);

write_data('R');delay(5); write_data('T'); break;

case 6: write_data('S');delay(5);

ºþ±±ÎÄÀíѧԺÀí¹¤Ñ§Ôº ¸½Â¼1£º³ÌÐò

write_data('A');delay(5); write_data('T'); break;

case 7: write_data('S');delay(5);

write_data('U');delay(5); write_data('N'); break;

} }

void keyscan()//°´¼üÉèÖà {

if(key3==0)//¹¦Äܼü°´Ï {

flag=0; delay(5); if(key3==0) {

s1num++; while(!key3); di();

switch(s1num)//¹â±êÉÁ˸¶¨Î» {

case 1:write_com(0x80+0x40+7);//¶¨Î»µ½ÃëµÄλÖÃ

write_com(0x0f); tempchange();

for(i=10;i>0;i--) { } break;

dis_temp(get_temp());