⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 51单片机
💻 C
字号:
#include <at89x52.h>
#include <stdio.h>
#include "da1302.h"
#include "lcd1602.h"
#include "18B20.H"
#include "voice.h"



unsigned char keytemp;
unsigned char hourf,minutef;


void Delay1ms(unsigned int count)
{
	unsigned int i,j;
	for(i=0;i<count;i++)
	for(j=0;j<120;j++);
}

void Init_Com(void)
{
     TMOD = 0x20;
     PCON = 0x00;
     SCON = 0x50;			
     TH1 = 0xFd;
     TL1 = 0xFd;
     TR1 = 1;				
}
SYSTEMTIME CurrentTime;
void main(void)
{ 
unsigned int i,a;
uchar time[8]={0x00,0x46,0x20,0x22,0x08,0x03,0x07,0x00};  //1302的时间预设值
LCD_initial(); 
Initial_DS1302();
	set_time(time);	/*									   //设置1302的初始值
DS1302_SetTime(DS1302_SECOND, 10);
DS1302_SetTime(DS1302_MINUTE, 52);
DS1302_SetTime(DS1302_HOUR, 10);
DS1302_SetTime(DS1302_WEEK, 2);
DS1302_SetTime(DS1302_DAY, 24);
DS1302_SetTime(DS1302_MONTH, 8);
DS1302_SetTime(DS1302_YEAR, 7);	*/
LCD_set_position(0x00);
LCD_prints("D: ");
LCD_set_position(0x40);;
LCD_prints("T: ");
i=ReadTemperature(3); //读温度
a=i;                  //  继续当前温度
IntToStr(i,&TempBuffer[0],3);
LCD_set_position(0x0B);
LCD_printc(TempBuffer[0]); 
LCD_printc(TempBuffer[1]);
LCD_printc('.');
LCD_printc(TempBuffer[2]);
//LCD_printc(' ');
LCD_printc(0xDF);
LCD_printc('C');


while(1)												   
	{unsigned char week;
	i=ReadTemperature(3); 
    if (i!=a )	  //如果有变化
	 {	 a=i;
  	IntToStr(i,&TempBuffer[0],3);
    LCD_set_position(0x0B);
    LCD_printc(TempBuffer[0]); 
	LCD_printc(TempBuffer[1]);
	LCD_printc('.');
	LCD_printc(TempBuffer[2]);
	//LCD_printc(' ');
	LCD_printc(0xDF);
	LCD_printc('C');
	} 
       /* DS1302_GetTime(&CurrentTime);
		DateToStr(&CurrentTime);
		TimeToStr(&CurrentTime);
		LCD_set_position(0x06);
		LCD_prints(CurrentTime.DateString);
		LCD_set_position(0x46);
		LCD_prints(CurrentTime.TimeString);
*/
		Initial_DS1302();
		DS1302_GetTime(&CurrentTime);
        if((CurrentTime.Hour==7)&&(CurrentTime.Minute==15)&&(CurrentTime.Second==0))
	    { 
		 LCD_initial();
		 LCD_set_position(0x00);
         LCD_prints("time to get up");
		 Time0_Init();
		 Play_Song(0);		//播放
		}
        week=CurrentTime.Week+'0'; 
        Delay1ms(1);
		DateToStr(&CurrentTime);
		TimeToStr(&CurrentTime);
		LCD_set_position(0x02);
		LCD_prints(CurrentTime.DateString);
		LCD_set_position(0x42);
		LCD_prints(CurrentTime.TimeString);
        LCD_set_position(0x4c);
        LCD_printc(week);
        Delay1ms(100);
}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -