久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
main.c(404): error C141: syntax error near 'unsigned'新人求教
[打印本頁]
作者:
梵夫珟子
時間:
2017-5-2 17:50
標題:
main.c(404): error C141: syntax error near 'unsigned'新人求教
main.c(404): error C141: syntax error near 'unsigned'
找不到錯誤啊,求大神幫忙
程序如下:
#include <reg52.h>
#include <string.h>
#include <intrins.h>
#define uchar unsigned cha
#define uint unsigned int
#define dim(x) sizeof(x)
#define WRITE_SECOND 0x80
#define WRITE_MINUTE 0x82
#define WRITE_HOUR 0x84
#define WRITE_DAY 0x86
#define WRITE_MONTH 0x88
#define WRITE_WEEK 0x8a
#define WRITE_YEA 0x8c
sbit ACC_7 = ACC^7;
#define READ_SECOND 0x81
#define READ_MINUTE 0x83
#define READ_HOUR 0x85
#define READ_DAY 0x87
#define READ_MONTH 0x89
#define READ_WEEK 0x8b
#define READ_YEA 0x8d
#define WRITE_PROTECT 0x8E
sbit SCLK = P3^5;
sbit DIO = P3^6;
sbit CE = P3^7;
sbit key_mode = P1^0;
sbit key_jia = P1^1;
sbit key_jian = P1^2;
sbit key_ok = P1^3;
sbit key_dao = P1^4;
sbit led = P2^4;
sbit Beep_P=P2^7;
unsigned char time[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00};
void Read_time(void);
void Writeds1302 ( uchar addr,dat); //DS1302Ö¸¶¨μØÖ·£¬D′êy¾Y
unsigned char Read1302 ( uchar addr ); //DS1302Ö¸¶¨μØÖ·£¬¶áêy¾Y
unsigned char Read1302_yuanshi(uchar addr); //DS1302¶áÔ-ê¼êy¾Yoˉêy
void Read_time(void); //DS1302¶áê±¼äèÕÆúoˉêy
void DS1302_init(void);
void AT24C02_delay(uint n); //Ñóê±40*n΢Ãî
void AT24C02_start(); //¿aê¼DÅoÅ
void AT24C02_stop(); //í£Ö1DÅoÅ
void AT24C02_respons(); //ó|′eDÅoÅ
void AT24C02_write(uchar date); //D′êy¾Y
unsigned char AT24C02_read(); //¶áêy¾Y
void AT24C02_write_date(uchar address,uchar date);//ÏòaddressμØÖ·D′êädateêy¾Y
unsigned char AT24C02_read_date(uchar address); //Ïòaddress¶á3öêy¾Y2¢·μ»Ø
void Read_time(void)
{
time[0]=Read1302(0x81);
time[1]=Read1302(0x83);
time[2]=Read1302(0x85);
time[3]=Read1302(0x87);
time[4]=Read1302(0x89);
time[5]=Read1302(0x8b);
time[6]=Read1302(0x8d);
}
uchar set_f=0; //éèÖÃÑ¡Ôñ±ê¼Ç£¬=0·ÇéèÖã¬=1éèÖÃÄ꣬=2éèÖÃÔ£¬=3éèÖÃèÕ¡£=4éèÖÃê±£¬=5éèÖ÷Ö£¬=6éèÖÃÃë
// =7éèÖÃÄÖÖó-ê±£¬=8éèÖÃÄÖÖó-·Ö¡£=9éèÖÃÄÖÖóÃ룬=10éèÖÃÄÖÖó-¿a1Ø
uchar set_dao=0; //μ1¼Æê±éèÖñê¼Ç
uchar num; //¼Æêy±äá¿
uchar naozhong[5]; //ÄÖÖó-Ãë¡¢ÄÖÖó-·Ö¡¢ÄÖÖó-걡¢ÄÖÖó-¿a1Ø¡¢òôàÖDòoÅ
bit naozhong_f=0; //ÄÖÖó¿aê¼±ê¼Ç룬=1ÄÖÖó¿aê¼£¬=0ÄÖÖóÎ′¿aê¼
//òÔÏÂòôàÖóD1رäá¿
uchar gSong; // gSong′ú±íμ±Ç°2¥·Åμ½μú¼¸ê׸è
uchar gTone; // gTone′ú±íμ±Ç°òa2¥·ÅμÄòôμ÷
bit gPlayStatus; // gPlayStatus′ú±íμ±Ç°μÄ2¥·Å×′쬣¬0êÇÔYí££¬1êÇ2¥·Å
/* ¶¨ê±Æ÷3õÖμ μí1 μí2 μí3 μí4 μí5 μí6 μí7 ÖD1 ÖD2 ÖD3 ÖD4 ÖD5 ÖD6 ÖD7 ¸ß1 ¸ß2 ¸ß3 ¸ß4 ¸ß5 ¸ß6 ¸ß7 */
uchar code ArrTh0[]={ 0xF8,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC,0xFC,0xFC,0xFD,0xFD,0xFD,0xFD,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF };
uchar code ArrTl0[]={ 0x8C,0x5B,0x15,0x67,0x04,0x90,0x0C,0x43,0xAC,0x09,0x34,0x82,0xC8,0x06,0x22,0x56,0x85,0x9A,0xC1,0xE4,0x03 };
/* ¡¶Ë®êÖ¡·μÄàÖÆ× */
uchar code ArrMusic1[]={
5,4, 9,2, 8,2, 9,4, 8,2, 9,2,
10,3, 11,1, 10,2, 8,2, 9,8, 9,1,
10,2, 10,1, 9,1, 8,2, 7,1, 7,1, 8,2, 7,1, 7,1, 8,2, 9,2,
7,2, 6,2, 5,2, 7,2, 6,8,
5,4, 9,2, 8,2, 9,4, 8,2, 9,2,
10,2, 10,1, 11,1, 9,2, 8,2, 9,8,
10,3, 9,1, 8,2, 7,2, 8,2, 8,1, 7,1, 8,2, 8,1, 9,1,
6,2, 6,2, 5,2, 4,2, 5,8,
8,3, 8,1, 8,2, 8,2, 10,2, 10,1, 9,1, 8,2, 7,1, 7,1,
9,3, 8,1, 7,2, 8,1, 7,1, 5,8,
8,3, 8,1, 8,2, 8,2, 8,2, 8,1, 8,1, 8,2, 7,1, 8,1,
9,2, 9,2, 9,1, 8,1, 7,1, 8,1, 9,8,
8,3, 8,1, 8,2, 8,2, 10,2, 9,2, 8,2, 8,2,
9,2, 8,2, 7,2, 8,1, 7,1, 5,7, 5,1,
8,3, 8,1, 8,2, 8,1, 8,1, 8,2, 8,2, 7,2, 8,2,
9,2, 9,2, 8,2, 7,2, 9,4, 9,2, 11,2,
12,4, 11,4, 9,4, 8,2, 7,2,
8,2, 9,1, 8,1, 7,2, 6,2, 5,4, 5,2, 6,2,
7,4, 7,2, 9,2, 8,4, 6,1, 5,1, 4,2,
5,3, 5,1, 7,2, 8,2, 9,4, 9,2, 11,2,
12,4, 11,4, 9,4, 8,2, 7,2,
8,2, 9,1, 8,1, 7,2, 6,2, 5,4, 5,2, 6,2,
7,4, 7,2, 9,2, 8,4, 7,2, 6,2, 5,12
};
/* ¡¶»ó×Å3á°òμÄÅ®o¢¡·μÄàÖÆ× */
uchar code ArrMusic2[]={
9,4, 9,2, 10,2, 11,4, 7,2, 8,2,
9,2, 9,2, 9,2, 10,2, 11,4, 8,2, 9,2,
10,4, 10,2, 9,2, 7,4, 10,2, 9,2,
10,4, 5,2, 7,2, 8,4, 7,2, 8,2,
9,4, 9,2, 10,2, 11,4, 12,2, 13,2,
14,2, 14,2, 9,2, 10,2, 11,4, 8,2, 9,2,
10,2, 9,2, 10,2, 14,2, 14,4, 8,2, 9,2,
10,2, 9,2, 10,2, 15,2, 15,4, 14,2, 13,2,
14,6, 15,2, 16,2, 15,2, 14,2, 13,2,
14,6, 14,2, 13,2, 11,2, 11,2, 7,2,
12,6, 12,2, 11,2, 7,2, 7,2, 9,2,
8,6, 9,1, 10,1, 10,2, 11,2, 14,2, 13,2,
14,6, 15,2, 16,2, 15,2, 14,2, 13,2,
14,6, 14,2, 13,2, 11,2, 11,2, 7,2,
12,6, 12,2, 11,2, 11,2, 14,2, 13,2,
14,16 };
/* ¡¶üÔàò»¨¡·μÄàÖÆ× */
uchar code ArrMusic3[]={
9,4, 9,2, 11,2, 12,2, 14,2, 14,2, 12,2,
11,4, 11,2, 12,2, 11,8,
9,4, 9,2, 11,2, 12,2, 14,2, 14,2, 12,2,
11,4, 11,2, 12,2, 11,8,
11,4, 11,4, 11,4, 9,2, 11,2,
12,4, 12,4, 11,8,
9,4, 8,2, 9,2, 11,4, 9,2, 8,2,
7,4, 7,2, 8,2, 7,8,
9,2, 8,2, 7,2, 9,2, 8,6, 9,2,
11,4, 12,2, 14,2, 11,8,
8,4, 9,2, 11,2, 8,2, 9,2, 7,2, 5,2,
4,8, 5,4, 7,4,
8,6, 9,2, 7,2, 8,2, 7,2, 5,2,
4,12 };
/*********************************************************/
// oáÃë¼¶μÄÑóê±oˉêy£¬timeêÇòaÑóê±μÄoáÃëêy
/*********************************************************/
void Delay_Ms(uint time)
{
uint i,j;
for(i=time;i>0;i--)
for(j=110;j>0;j--);
}
/*********************************************************/
// ¶¨ê±Æ÷13õê¼»ˉoˉêy
/*********************************************************/
void TimerInit()
{
TMOD|=0x10; // ¶¨ê±Æ÷1£¬1¤×÷·½ê½1
ET1=1; // ¿aÆô¶¨ê±Æ÷1ÖD¶Ï
EA=1; // ¿aÆô×üÖD¶Ï
}
/*********************************************************/
// ·¢3öÖ¸¶¨òôμ÷¼°Æä½úÅÄμÄéùòô£¬tone′ú±íòôμ÷£¬beat′ú±í½úÅÄ
/*********************************************************/
void PlayTone(uchar tone,float beat)
{
int i;
TH1 = ArrTh0[tone]; // ×°èë¶¨ê±Æ÷TH0μÄ3õÖμ
TL1 = ArrTl0[tone]; // ×°èë¶¨ê±Æ÷TL0μÄ3õÖμ
TR1=1; // Æô¶ˉ¶¨ê±Æ÷
beat=(int)beat*4;
for(i=0;i<beat;i++)
{
Delay_Ms(47);
}
TR1=0; // í£Ö1¶¨ê±Æ÷
}
/*********************************************************/
// 2¥·ÅÄúÖÃμÄòôàÖ
// arr[]êÇòa2¥·ÅμÄàÖÆ×êy×飬numêÇêy×éàïÃæμÄÔaËØ¸öêy
/*********************************************************/
void PlayMusic(uchar arr[],uint num)
{
uint i=0;
while(i<num)
{
if(gPlayStatus==1) // ÅD¶Ï2¥·Å×′ì¬êÇ·ñÎa2¥·Å»1êÇÔYí£
{
gTone=arr[i]; // ¸øè«¾Ö±äá¿gTone¸3Ö죬·½±ãÖD¶Ïoˉêyê1óÃ
PlayTone(arr[i],arr[i+1]); // ¿aê¼ÑY×àò»¸ö½úÅÄ
i+=2; // ½øèëÏÂò»¸ö½úÅÄ£¬òòÎaÿ2¸öêyÎa1×飬ËùòÔÿ′Îòa¼ó2
if(i==num) // ÅD¶Ï¸èÇúêÇ·ñ2¥·ÅíêáË
gPlayStatus=0; // 2¥·ÅíêáËμÄ»°£¬Ôò°Ñ2¥·Å×′쬸ÄÎaÔYí££¬·ñÔò»áÑ-»·2¥·Å
}
if(key_ok==0) // ÅD¶Ï2¥·Å1y3ìÖDêÇ·ñ°′ÏÂáË¡°¿aê¼/ÔYí£¡±¼ü
{
Delay_Ms(10); // Ïû3y°′¼ü°′ÏÂμͶ¶ˉ
while(!key_ok); // μè′y°′¼üêí·Å
i=num;
gPlayStatus=0;//íË3öÄÖáå2¥·Å
Beep_P=1;//1رÕà®°è
led=1; //1رÕÖ¸ê¾μÆ
}
}
}
/********************************************************
oˉêyÃû3Æ:void delayms(uint ms)
oˉêy×÷óÃ:oáÃëÑóê±oˉêy
2ÎêyËμÃ÷:
********************************************************/
void delayms(uint ms)
{
unsigned char i=100,j;
for(;ms;ms--)
{
while(--i)
{
j=10;
while(--j);
}
}
}
/********************************************************
oˉêyÃû3Æ:void display(void)
oˉêy×÷óÃ:Õy3£ÏÔê¾èÕÆú¡¢ê±¼äoˉêy
2ÎêyËμÃ÷:
********************************************************/
void LCD_init(void); //3õê¼»ˉoˉêy
void LCD_write_command(uchar command); //D′Ö¸áîoˉêy
void LCD_write_data(uchar dat); //D′êy¾Yoˉêy
void LCD_disp_char(uchar x,uchar y,uchar dat); //ÏÔê¾ò»¸ö×Ö·û, X(0-16),y(1-2)¡£
void lcd1602_write_character(uchar x,uchar y,uchar *p);//ÏÔê¾ò»¸ö×Ö·û′®,X(0-16),y(1-2)¡£
void lcd1602_write_pic(uchar add,uchar *pic_num); //D′èë×Ô¶¨òå×Ö·û
void delay_n40us(uint n)
{
uint i;
uchar j;
for(i=n;i>0;i--)
for(j=0;j<2;j++);
}
void delay_n40us(uint n);
/********************************************************
oˉêyÃû3Æ:bit YearFlag(uchar cYear)
oˉêy×÷óÃ:¼ÆËãêÇ·ñèòÄê
2ÎêyËμÃ÷:êäèë£o1£oèòÄ꣬0£oƽÄê
********************************************************/
bit YearFlag(uchar cYear)
{
if (((!(cYear%4)) && (cYear%100)) || !(cYear%400))
return 1;
else
return 0;
}
void display(void)
{
uchar xq; //′æ′¢DÇÆú
uchar temp2[2]; //′æ′¢ÄÖÖó½áêøê±¼ä
//¼ÆËãÄÖÖó½áêø¡¾ê±¼ä¡¿
if(naozhong[1]!=59) //ÄÖÖó-·Ö 2»μèóú59·Ö ¡¾ày£o11:11¡¿
{
temp2[0]=naozhong[2]; //ÄÖÖó½áêøê±¼äÎa£oD¡ê±2»±ä£¬·ÖÖó+1
temp2[1]=naozhong[1]+1;
}
else //ÄÖÖó-·Ö μèóú59·Ö
{
if(naozhong[2]!=23) //ÄÖÖó-ê± 2»μèóú23ê± ¡¾ày£o11:59¡¿
{
temp2[0]=naozhong[2]+1;//ÄÖÖó½áêøê±¼äÎa£oD¡ê±¼ó1£¬·ÖÖó=0
temp2[1]=0;
}
else //ÄÖÖó-ê± μèóú23ê± ¡¾ày£o23:59¡¿
{
temp2[0]=0; //ÄÖÖó½áêøê±¼äÎa£oD¡ê±=0£¬·ÖÖó=0
temp2[1]=0;
}
}
if(time[2]==naozhong[2]&&time[1]==naozhong[1]&&time[0]==naozhong[0]&&naozhong[3]%2==1)
{
led=0; //¿aÆôÄÖáåLEDμÆμãáá
gPlayStatus=1; //½øèë2¥·Å
naozhong_f=1; //±ê¼ÇÄÖÖó¿aÆô
LCD_write_command(0x01);
delay_n40us(100);
lcd1602_write_character(0,1,"The alarm clock ");
lcd1602_write_character(0,2," It's time to ");
switch(naozhong[4]) //2¥·Å¶Ôó|μĸèÇú
{
case 0 : PlayMusic(ArrMusic1,dim(ArrMusic1)); break;
case 1 : PlayMusic(ArrMusic2,dim(ArrMusic2)); break;
case 2 : PlayMusic(ArrMusic3,dim(ArrMusic3)); break;
}
LCD_write_command(0x01);
delay_n40us(100);
}
else if(time[2]==00&&time[1]==00&&time[0]==10%2==1)
{
led=0; //¿aÆôÄÖáåLEDμÆμãáá
gPlayStatus=1; //½øèë2¥·Å
naozhong_f=1; //±ê¼ÇÄÖÖó¿aÆô
LCD_write_command(0x01);
delay_n40us(100);
lcd1602_write_character(0,1,"The alarm clock ");
lcd1602_write_character(0,2," It's time to ");
switch(naozhong[4]) //2¥·Å¶Ôó|μĸèÇú
{
case 0 : PlayMusic(ArrMusic1,dim(ArrMusic1)); break;
case 1 : PlayMusic(ArrMusic2,dim(ArrMusic2)); break;
case 2 : PlayMusic(ArrMusic3,dim(ArrMusic3)); break;
}
LCD_write_command(0x01);
delay_n40us(100);
}
else if(time[2]==00&&time[1]==00&&time[0]==11%2==1)
{
led=0; //¿aÆôÄÖáåLEDμÆμãáá
gPlayStatus=1; //½øèë2¥·Å
naozhong_f=1; //±ê¼ÇÄÖÖó¿aÆô
LCD_write_command(0x01);
delay_n40us(100);
lcd1602_write_character(0,1,"The alarm clock ");
lcd1602_write_character(0,2," It's time to ");
switch(naozhong[4]) //2¥·Å¶Ôó|μĸèÇú
{
case 0 : PlayMusic(ArrMusic1,dim(ArrMusic1)); break;
case 1 : PlayMusic(ArrMusic2,dim(ArrMusic2)); break;
case 2 : PlayMusic(ArrMusic3,dim(ArrMusic3)); break;
}
LCD_write_command(0x01);
delay_n40us(100);
}
else if(time[2]==00&&time[1]==00&&time[0]==12%2==1)
//ÅD¶Ïμ±Ç°êÇ·ñÎaÄÖÖóê±¼ä
{
led=0; //¿aÆôÄÖáåLEDμÆμãáá
gPlayStatus=1; //½øèë2¥·Å
naozhong_f=1; //±ê¼ÇÄÖÖó¿aÆô
LCD_write_command(0x01);
delay_n40us(100);
lcd1602_write_character(0,1,"The alarm clock ");
lcd1602_write_character(0,2," It's time to ");
switch(naozhong[4]) //2¥·Å¶Ôó|μĸèÇú
{
case 0 : PlayMusic(ArrMusic1,dim(ArrMusic1)); break;
case 1 : PlayMusic(ArrMusic2,dim(ArrMusic2)); break;
case 2 : PlayMusic(ArrMusic3,dim(ArrMusic3)); break;
}
LCD_write_command(0x01);
delay_n40us(100);
}
if(time[2]==naozhong[2]&&time[1]==naozhong[1]&&time[0]==naozhong[0]&&naozhong[3]%2==1)
{
led=1;
naozhong_f=0; //ÖØÖÃÄÖÖó¿aÆô±êÖ¾
}
else if(time[2]==00&&time[1]==00&&time[0]==10%2==1)
{
led=1;
naozhong_f=0; //ÖØÖÃÄÖÖó¿aÆô±êÖ¾
}
else if(time[2]==00&&time[1]==00&&time[0]==11%2==1)
{
led=1;
naozhong_f=0; //ÖØÖÃÄÖÖó¿aÆô±êÖ¾
}
else if(time[2]==00&&time[1]==00&&time[0]==12%2==1)
{
led=1;
naozhong_f=0;
}
/********************************************************
oˉêyÃû3Æ:uchar GetWeekDay(uchar cYear,uchar cMon,uchar cDay)
oˉêy×÷óÃ:¼ÆËãÑôàúèÕÆú¶Ôó|μÄDÇÆúêy
2ÎêyËμÃ÷:êäèë£oÑôàúGreYear£¨Ä꣩,GreMon£¨Ô£©,GreDay£¨èÕ£©
êä3ö£oDÇÆú¼¸
********************************************************/
unsigned char GetWeekDay(uchar cYear,uchar cMon,uchar cDay)
{
char i;
int Sum=0,tmpyear=2000+cYear;
for(i=1;i<=cMon-1;i++)
Sum+=Mon1[YearFlag(cYear)][i];
Sum+=cDay-1;
return (((tmpyear-1)+(tmpyear-1)/4-(tmpyear-1)/100+(tmpyear-1)/400+Sum)%7)+1;
}
xq=GetWeekDay(time[6],time[4],time[3]);//»ñè¡DÇÆú
//ÏÔê¾DÇÆú
switch(xq)
{
case 1:lcd1602_write_character(11,2,"Mon"); break;
case 2:lcd1602_write_character(10,2,"Tues"); break;
case 3:lcd1602_write_character(9,2,"Wednes"); break;
case 4:lcd1602_write_character(10,2,"Thurs"); break;
case 5:lcd1602_write_character(10,2,"Frid"); break;
case 6:lcd1602_write_character(10,2,"Satur"); break;
case 7:lcd1602_write_character(11,2,"Sun"); break;
default: break;
}
//ÏÔê¾ê±¼ä
//12D¡ê±ÖÆ
/*LCD_disp_char(0,2,ASCII[time[2]%12/10]);//ÏÔê¾ê±¡¾0£o±íê¾μú1áD£¬2£o±íê¾μú2DD£¬ËùóD1ØóúÏÔê¾¶¼ò»Ñù¡¿
LCD_disp_char(1,2,ASCII[time[2]%12%10]);//*/
//24D¡ê±ÖÆ
LCD_disp_char(0,2,ASCII[time[2]/10]);//ÏÔê¾ê±¡¾0£o±íê¾μú1áD£¬2£o±íê¾μú2DD£¬ËùóD1ØóúÏÔê¾¶¼ò»Ñù¡¿
LCD_disp_char(1,2,ASCII[time[2]%10]); //*/
LCD_disp_char(2,2,':');
LCD_disp_char(3,2,ASCII[time[1]/10]); //ÏÔê¾·Ö
LCD_disp_char(4,2,ASCII[time[1]%10]);
LCD_disp_char(5,2,':');
LCD_disp_char(6,2,ASCII[time[0]/10]); //ÏÔê¾Ãë
LCD_disp_char(7,2,ASCII[time[0]%10]);
if(time[2]/12==0) //D¡óú12D¡ê±£¬ÅD¶ÏÎaéÏÎç
lcd1602_write_character(11,1,"AM");
else //·ñÕߣ¬ÏÂÎç
lcd1602_write_character(11,1,"PM");
//ÏÔê¾èÕÆú
LCD_disp_char(0,1,ASCII[time[6]/10]);//ÏÔê¾Äê
LCD_disp_char(1,1,ASCII[time[6]%10]);
LCD_disp_char(2,1,'/');
LCD_disp_char(3,1,ASCII[time[4]/10]);//ÏÔê¾ÔÂ
LCD_disp_char(4,1,ASCII[time[4]%10]);
LCD_disp_char(5,1,'/');
LCD_disp_char(6,1,ASCII[time[3]/10]);//ÏÔê¾èÕ
LCD_disp_char(7,1,ASCII[time[3]%10]);
}
/********************************************************
oˉêyÃû3Æ:void display2(void)
oˉêy×÷óÃ:ÏÔê¾μ÷ÕûèÕÆú¡¢ê±¼äoˉêy
2ÎêyËμÃ÷:
********************************************************/
void display2()
{
num++;
lcd1602_write_character(1,1,"Date:");
lcd1602_write_character(1,2,"Time:");
if(num%2==0) //żêy′ÎÏÔê¾£¬Ææêy′Î2»ÏÔ꾡£ÕaÑù¾í»áóDéá˸D§1û£¬¿éòÔÇå3t¿′μ½μ±Ç°éèÖÃμÄêÇÄĸöÖμ
{
LCD_disp_char(6,1,ASCII[time[6]/10]); //ÏÔê¾Äê
LCD_disp_char(7,1,ASCII[time[6]%10]);
LCD_disp_char(8,1,'/');
LCD_disp_char(9,1,ASCII[time[4]/10]); //ÏÔê¾ÔÂ
LCD_disp_char(10,1,ASCII[time[4]%10]);
LCD_disp_char(11,1,'/');
LCD_disp_char(12,1,ASCII[time[3]/10]);//ÏÔê¾èÕ
LCD_disp_char(13,1,ASCII[time[3]%10]);
LCD_disp_char(6,2,ASCII[time[2]/10]); //ÏÔê¾ê±
LCD_disp_char(7,2,ASCII[time[2]%10]);
LCD_disp_char(8,2,':');
LCD_disp_char(9,2,ASCII[time[1]/10]); //ÏÔê¾·Ö
LCD_disp_char(10,2,ASCII[time[1]%10]);
LCD_disp_char(11,2,':');
LCD_disp_char(12,2,ASCII[time[0]/10]);//ÏÔê¾Ãë
LCD_disp_char(13,2,ASCII[time[0]%10]);
}
else //Ææêy′Î2»ÏÔê¾
{
switch(set_f)//¸ù¾Yμ±Ç°éèÖÃμÄÄúèY£¬¶Ôó|λÖÃéá˸
{
case 1: lcd1602_write_character(6,1," "); break;
case 2: lcd1602_write_character(9,1," "); break;
case 3: lcd1602_write_character(12,1," "); break;
case 4: lcd1602_write_character(6,2," "); break;
case 5: lcd1602_write_character(9,2," "); break;
case 6: lcd1602_write_character(12,2," "); break;
default: break;
}
}
}
/********************************************************
oˉêyÃû3Æ:void display3(void)
oˉêy×÷óÃ:ÏÔê¾μ÷ÕûÄÖÖóoˉêy
2ÎêyËμÃ÷:
********************************************************/
void display3()
{
num++;
lcd1602_write_character(3,1,"Alarm clock");
if(num%2==0) //żêy′ÎÏÔê¾£¬Ææêy′Î2»ÏÔ꾡£ÕaÑù¾í»áóDéá˸D§1û£¬¿éòÔÇå3t¿′μ½μ±Ç°éèÖÃμÄêÇÄĸöÖμ
{
LCD_disp_char(1,2,ASCII[naozhong[2]/10]);//ÏÔê¾ÄÖÖó-ê±
LCD_disp_char(2,2,ASCII[naozhong[2]%10]);
LCD_disp_char(3,2,':');
LCD_disp_char(4,2,ASCII[naozhong[1]/10]);//ÏÔê¾ÄÖÖó-·Ö
LCD_disp_char(5,2,ASCII[naozhong[1]%10]);
LCD_disp_char(6,2,':');
LCD_disp_char(7,2,ASCII[naozhong[0]/10]);//ÏÔê¾ÄÖÖó-Ãë
LCD_disp_char(8,2,ASCII[naozhong[0]%10]);
if(naozhong[3]%2==0)
lcd1602_write_character(10,2,"OFF"); //ÏÔê¾ÄÖÖó-¿a/1Ø
else
lcd1602_write_character(10,2,"ON");
LCD_disp_char(14,2,ASCII[naozhong[4]%10+1]);
}
else //Ææêy′Î2»ÏÔê¾
{
switch(set_f)//¸ù¾Yμ±Ç°éèÖÃμÄÄúèY£¬¶Ôó|λÖÃéá˸
{
case 7: lcd1602_write_character(1,2," "); break;
case 8: lcd1602_write_character(4,2," "); break;
case 9: lcd1602_write_character(7,2," "); break;
case 10: lcd1602_write_character(10,2," "); break;
case 11: lcd1602_write_character(14,2," "); break;
default: break;
}
}
}
/********************************************************
oˉêyÃû3Æ:void scan(void)
oˉêy×÷óÃ:°′¼ü2éÑˉ′|àíoˉêy
2ÎêyËμÃ÷:
********************************************************/
void scan(void)
{
//éèÖüü
if(key_mode==0) //°′¼ü°′ÏÂ
{
delayms(7); //Ñóê±Ïû¶¶
if(key_mode==0) //Ôù′Îè·èϰ′¼ü°′ÏÂ
{
led=1;
if(set_f==0||set_f==6||set_f==10) //½øèëéèÖÃÏèÇå3yÆáÄ»£¬ÏÔê¾éèÖÃ2¿·Ö
{
Writeds1302 (WRITE_PROTECT,0X00); //½ûÖ1DS1302D′±£»¤
LCD_write_command(0x01); //Çå3yÆáÄ»ÏÔê¾
delay_n40us(100); //Ñóê±μè′yè«2¿Çå3yíê±Ï
}
set_f++; //éèÖñäá¿+1
if(set_f>11) //è«2¿éèÖÃíê3飬íË3öéèÖÃ
{
set_f=0; //ÖØÖÃéèÖñäá¿
AT24C02_write_date(0,naozhong[0]);//D′è롾ÄÖÖó-Ãë¡¿êy¾Y±£′æ
AT24C02_write_date(1,naozhong[1]);//D′è롾ÄÖÖó-·Ö¡¿êy¾Y±£′æ
AT24C02_write_date(2,naozhong[2]);//D′è롾ÄÖÖó-걡¿êy¾Y±£′æ
AT24C02_write_date(3,naozhong[3]);//D′è롾ÄÖÖó-¿a1Ø¡¿êy¾Y±£′æ
AT24C02_write_date(4,naozhong[4]);//D′è롾òôàÖDòoÅ¡¿êy¾Y±£′æ
Writeds1302 (WRITE_MINUTE,(time[1]/10)*16+time[1]%10);//½«éèÖÃoÃμÄê±¼äD′èëDS1302
Writeds1302 (WRITE_SECOND,(time[0]/10)*16+time[0]%10);
LCD_write_command(0x01); //Çå3yÆáÄ»ÏÔê¾
delay_n40us(100); //Ñóê±μè′yè«2¿Çå3yíê±Ï
}
}
else //·ñÔò£¬Ãë±íģ꽻òÕßμ1¼Æê±Ä£ê½
{
if(set_dao==0) //èç1û£¬·Çμ1¼Æê±éèÖÃÆeê¼ê±¼ä×′ì¬ÏÂ
TR0=~TR0; //ÇD»» Ãë±í¼Æê±»òμ1¼Æê±-¿aê¼/ÔYí£
}
}
while(!key_mode); //μè′y°′¼üËé¿a
//è·¶¨
if(key_ok==0&&set_f!=0)//Ôù′Îè·èϰ′¼ü°′Ï£¬2¢Çòμ±Ç°′|óúéèÖÃÄ£ê½
{
set_f=0; //ÖØÖÃéèÖñäá¿
AT24C02_write_date(0,naozhong[0]);//D′è롾ÄÖÖó-Ãë¡¿êy¾Y±£′æ
AT24C02_write_date(1,naozhong[1]);//D′è롾ÄÖÖó-·Ö¡¿êy¾Y±£′æ
AT24C02_write_date(2,naozhong[2]);//D′è롾ÄÖÖó-걡¿êy¾Y±£′æ
AT24C02_write_date(3,naozhong[3]);//D′è롾ÄÖÖó-¿a1Ø¡¿êy¾Y±£′æ
AT24C02_write_date(4,naozhong[4]);//D′è롾òôàÖDòoÅ¡¿êy¾Y±£′æ
Writeds1302 (WRITE_MINUTE,(time[1]/10)*16+time[1]%10);//½«éèÖÃoÃμÄê±¼äD′èëDS1302
Writeds1302 (WRITE_SECOND,(time[0]/10)*16+time[0]%10);
LCD_write_command(0x01); //Çå3yÆáÄ»ÏÔê¾
delay_n40us(100); //Ñóê±μè′yè«2¿Çå3yíê±Ï
}
else
if(key_ok==0&&naozhong_f==1) //·ñÔò£¬μ±Ç°ÄÖÖóÏìÆe£¬½øèëÔYí£ÄÖÖó
led=1; //ϨÃeLEDμÆ
else
if(key_ok==0&&set_f==0&&dao_f==0)//·ñÕߣ¬ÇD»»Ãë±íÄ£ê½oíÕy3£Ä£ê½
{
LCD_write_command(0x01); //Çå3yÆáÄ»ÏÔê¾
delay_n40us(100); //Ñóê±μè′yè«2¿Çå3yíê±Ï
if(miaobiao_f==0) //íË3öÃë±íÄ£ê½ê±£¬1رÕÃë±í¼Æê±
{
TR0=0; //1رն¨ê±Æ÷
T0_num=0; //ÖØÖÃËùóDÃë±íμÄê±¼ä
times=0;
fens=0;
}
AT24C02_write_date(5,miaobiao_f);//D′è롾Ãë±í±êÖ¾¡¿êy¾Y±£′æ
}
else
if(dao_f==1) //·ñÕߣ¬μ1¼Æê±Ä£ê½
{
if(set_dao==0||set_dao==3)
{
LCD_write_command(0x01);//Çå3yÆáÄ»ÏÔê¾
delay_n40us(100); //Ñóê±μè′yè«2¿Çå3yíê±Ï
}
set_dao++; //μ1¼Æê±Æeê¼ê±¼äéèÖñêÖ¾+1
if(set_dao==4) //è«2¿éèÖÃíê3é
set_dao=0; //ÖØÖÃμ1¼Æê±Æeê¼ê±¼äéèÖñêÖ¾
}
while(!key_ok); //μè′y°′¼üËé¿a
{
//¼ó¼ü
if(key_jia==0)
{
delayms(7);
if(key_jia==0&&set_f!=0)
{
if(set_f==1) //éèÖÃÄê
{
time[6]++; //Äê·Y+1
time[6]=(time[6]/10)*16+time[6]%10; //½«Äê·Y×a»»3é16½øÖÆ£¬àyèç£o16Äê-->0x16
if(time[6]>0x79) //ÅD¶ÏêÇ·ñ′ïμ½×î′óÄê·Y79Äê
time[6]=0x00; //ÖØD»Øμ½00Äê
Writeds1302 (WRITE_YEA,time[6]); //½«éèÖÃoÃμÄÄê·YD′èëμ½DS1302′æ′¢Æeà′
time[6]=Read1302(0x8d); //¶áè¡μ±Ç°Äê·Y
}
if(set_f==2) //éèÖÃÔÂ
{
time[4]++; //Ô·Y+1
time[4]=(time[4]/10)*16+time[4]%10; //½«Ô·Y×a»»3é16½øÖÆ£¬àyèç£o08ÔÂ-->0x08
if(time[4]>0x12) //ÅD¶ÏêÇ·ñ′ïμ½×î′óÔ·Y12ÔÂ
time[4]=0x01; //ÖØD»Øμ½01ÔÂ
Writeds1302 (WRITE_MONTH,time[4]); //½«éèÖÃoÃμÄÔ·YD′èëμ½DS1302′æ′¢Æeà′
}
if(set_f==3) //éèÖÃèÕ
{
time[3]++; //èÕ·Y+1
time[3]=(time[3]/10)*16+time[3]%10; //½«èÕ·Y×a»»3é16½øÖÆ£¬àyèç£o15èÕ-->0x15
if(time[4]==1||time[4]==3||time[4]==5||time[4]==7||time[4]==8||time[4]==10||time[4]==12)//1,3,5,7,8,10,12Îa′óÔ£¬Ã¿ÔÂ31ìì
{
if(time[3]>0x31) //ÅD¶ÏêÇ·ñ′ïμ½×î′óèÕ·Y31èÕ
time[3]=0x01; //ÖØD»Øμ½01èÕ
}
else //·ñÕß2,4,6,9,11ÎaD¡ÔÂ
{
if(time[4]==0x02) //èç1ûêÇ2Ô£¬DèòaÇø·Öèò¡¢ƽÄê
{
if(((!(time[6]%4) && (time[6]%100)) || !(time[6]%400))==0)//èç1ûèòÄê
{
if(time[3]>0x28) //ÅD¶ÏêÇ·ñ′ïμ½×î′óèÕ·Y28èÕ
time[3]=0x01; //ÖØD»Øμ½01èÕ
}
else //·ñÕ߯½Äê
{
if(time[3]>0x29) //ÅD¶ÏêÇ·ñ′ïμ½×î′óèÕ·Y29èÕ
time[3]=0x01; //ÖØD»Øμ½01èÕ
}
}
else //·ñÕßÎaê£ÏÂμÄÔ·Y
{
if(time[3]>0x30) //ÅD¶ÏêÇ·ñ′ïμ½×î′óèÕ·Y30èÕ
time[3]=0x01; //ÖØD»Øμ½01èÕ
}
}
Writeds1302 (WRITE_DAY,time[3]); //½«éèÖÃoÃμÄèÕ·YD′èëμ½DS1302′æ′¢Æeà′
}
if(set_f==4) //éèÖÃê±£¬í¬éÏ
{
time[2]++;
time[2]=(time[2]/10)*16+time[2]%10;
if(time[2]>0x23)
time[2]=0x00;
Writeds1302 (WRITE_HOUR,time[2]);
}
if(set_f==5) //éèÖ÷Ö£¬í¬éÏ
{
time[1]++;
time[1]=(time[1]/10)*16+time[1]%10;
if(time[1]>0x59)
time[1]=0x00;
Writeds1302 (WRITE_MINUTE,time[1]);
}
if(set_f==6) //éèÖÃÃ룬í¬éÏ
{
time[0]++;
time[0]=(time[0]/10)*16+time[0]%10;
if(time[0]>0x59)
time[0]=0x00;
Writeds1302 (WRITE_SECOND,time[0]);
}
if(set_f==7) //éèÖÃÄÖÖó-ê±
{
naozhong[2]++; //ÄÖÖó-ê± +1
if(naozhong[2]>23) //ÅD¶ÏÄÖÖó-ê± êÇ·ñ′óóú23ê±
naozhong[2]=0; //èç1ûêÇ£¬»Øμ½0ê±
}
if(set_f==8) //éèÖÃÄÖÖó-·Ö
{
naozhong[1]++; //ÄÖÖó-·Ö +1
if(naozhong[1]>59) //ÅD¶ÏÄÖÖó-·Ö êÇ·ñ′óóú59ê±
naozhong[1]=0; //èç1ûêÇ£¬»Øμ½0·Ö
}
if(set_f==9) //éèÖÃÄÖÖó-Ãë
{
naozhong[0]++; //ÄÖÖó-Ãë +1
if(naozhong[0]>59) //ÅD¶ÏÄÖÖó-Ãë êÇ·ñ′óóú59Ãë
naozhong[0]=0; //èç1ûêÇ£¬»Øμ½0Ãë
}
if(set_f==10) //éèÖÃÄÖÖó-¿a/1Ø
{
naozhong[3]++; //ÇD»»ÄÖÖó¿a/1Ø£¬Ö»Dèòa0±íê¾1Ø£¬1±í꾿a¾í¿éòÔ¡£
if(naozhong[3]==2)
naozhong[3]=0;
}
if(set_f==11) //éèÖÃòôàÖ
{
naozhong[4]++; //ÇD»»ÄÖÖó¿a/1Ø£¬Ö»Dèòa0±íê¾1Ø£¬1±í꾿a¾í¿éòÔ¡£
if(naozhong[4]==3)
naozhong[4]=0;
}
}
if(key_jia==0&&miaobiao_f==1)//Ãë±íÄ£ê½ÏÂ
{
T0_num=0; //¸′λÃë±íê±¼ä
times=0;
fens=0;
}
if(key_jia==0&&set_dao!=0&&set_f==0)//éèÖÃμ1¼Æê±Æeê¼ê±¼ä
{
if(set_dao==1) //éèÖÃμ1¼Æê±Æeê¼ê±¼ä-·Ö
{
if(fens!=255)
fens++;
}
if(set_dao==2) //éèÖÃμ1¼Æê±Æeê¼ê±¼ä-Ãë
{
if(times==59)
{
fens++;
times=0;
}
else
times++;
}
if(set_dao==3) //éèÖÃμ1¼Æê±Æeê¼ê±¼ä-·ÖÃë
{
if(T0_num==18)
{
times++;
T0_num=0;
}
else
T0_num=T0_num+2;
}
}
}
//¼õ¼ü
if(key_jian==0)
{
delayms(7);
if(key_jian==0&&set_f!=0)
{
if(set_f==1) //éèÖÃÄê
{
if(time[6]==0) //ÅD¶Ïμ±Ç°êÇ·ñÎa00Äê
time[6]=79; //èç1ûêÇ»Øμ½×î′óÄê·Y£o79Äê
else
time[6]--; //·ñÕߣ¬Äê·Y-1
time[6]=(time[6]/10)*16+time[6]%10;//½«Äê·Y×a»»3é16½øÖÆ£¬àyèç£o16Äê-->0x16
Writeds1302 (WRITE_YEA,time[6]); //½«éèÖÃoÃμÄÄê·YD′èëμ½DS1302′æ′¢Æeà′
}
if(set_f==2) //éèÖÃÔ£¬í¬éÏ
{
if(time[4]==1)
time[4]=12;
else
time[4]--;
time[4]=(time[4]/10)*16+time[4]%10;
Writeds1302 (WRITE_MONTH,time[4]);
}
if(set_f==3) //éèÖÃèÕ£¬í¬éÏ
{
time[3]--;
time[3]=(time[3]/10)*16+time[3]%10;
if(time[4]==1||time[4]==3||time[4]==5||time[4]==7||time[4]==8||time[4]==10||time[4]==12)
{
if(time[3]<0x01)
time[3]=0x31;
}
else
{
if(time[4]==0x02)
{
if(((!(time[6]%4) && (time[6]%100)) || !(time[6]%400))==0)
{
if(time[3]<0x01)
time[3]=0x28;
}
else
{
if(time[3]<0x01)
time[3]=0x29;
}
}
else
{
if(time[3]<0x01)
time[3]=0x30;
}
}
Writeds1302 (WRITE_DAY,time[3]);
}
if(set_f==4) //éèÖÃê±£¬í¬éÏ
{
if(time[2]==0)
time[2]=23;
else
time[2]--;
time[2]=(time[2]/10)*16+time[2]%10;
Writeds1302 (WRITE_HOUR,time[2]);
}
if(set_f==5) //éèÖ÷Ö£¬í¬éÏ
{
if(time[1]==0)
time[1]=59;
else
time[1]--;
time[1]=(time[1]/10)*16+time[1]%10;
Writeds1302 (WRITE_MINUTE,time[1]);
}
if(set_f==6) //éèÖÃÃ룬í¬éÏ
{
if(time[0]==0)
time[0]=59;
else
time[0]--;
time[0]=(time[0]/10)*16+time[0]%10;
Writeds1302 (WRITE_SECOND,time[0]);
}
if(set_f==7) //éèÖÃÄÖÖó-ê±£¬í¬éÏ
{
if(naozhong[2]==0)
naozhong[2]=23;
else
naozhong[2]--;
}
if(set_f==8) //éèÖÃÄÖÖó-·Ö£¬í¬éÏ
{
if(naozhong[1]==0)
naozhong[1]=59;
else
naozhong[1]--;
}
if(set_f==9) //éèÖÃÄÖÖó-Ã룬í¬éÏ
{
if(naozhong[0]==0)
naozhong[0]=59;
else
naozhong[0]--;
}
if(set_f==10) //éèÖÃÄÖÖó-¿a/1Ø£¬í¬éÏ
{
naozhong[3]++;
if(naozhong[3]==2)
naozhong[3]=0;
}
if(set_f==11) //éèÖÃòôàÖDòoÅ
{
if(naozhong[4]==0)
naozhong[4]=2;
else
naozhong[4]--;
}
}
if(key_jian==0&&miaobiao_f==1)//Ãë±íÄ£ê½
{
T0_num=0; //¸′λÃë±íê±¼ä
times=0;
fens=0;
}
if(key_jian==0&&set_dao!=0&&set_f==0)//éèÖÃμ1¼Æê±Æeê¼ê±¼ä
{
if(set_dao==1)
{
if(fens!=0)
fens--;
}
if(set_dao==2) //éèÖÃμ1¼Æê±Æeê¼ê±¼ä-Ãë
{
if(times!=0)
times--;
}
if(set_dao==3) //éèÖÃμ1¼Æê±Æeê¼ê±¼ä-·ÖÃë
{
if(T0_num!=0)
T0_num=T0_num-2;
}
}
}
//μ1¼Æê±
}
}
/********************************************************
oˉêyÃû3Æ:void mian()
oˉêy×÷óÃ:Ö÷oˉêy
2ÎêyËμÃ÷:
********************************************************/
void AT24C02_delay(uint n); //Ñóê±40*n΢Ãî
void AT24C02_start(); //¿aê¼DÅoÅ
void AT24C02_stop(); //í£Ö1DÅoÅ
void AT24C02_respons(); //ó|′eDÅoÅ
void AT24C02_write(uchar date); //D′êy¾Y
unsigned char AT24C02_read(); //¶áêy¾Y
void AT24C02_write_date(uchar address,uchar date);//ÏòaddressμØÖ·D′êädateêy¾Y
unsigned char AT24C02_read_date(uchar address); //Ïòaddress¶á3öêy¾Y2¢·μ»Ø
void main()
{
uchar i;
if(key_dao==0)
{
delayms(100);
if(key_dao==0)
{
for(i=0;i<7;i++)
{
AT24C02_write_date(i,0);//D′èëêy¾Y±£′æ
}
}
}
naozhong[0]=AT24C02_read_date(0);//¶áè¡′æ′¢μÄ¡¾ÄÖÖó-Ãë¡¿êy¾Y
naozhong[1]=AT24C02_read_date(1);//¶áè¡′æ′¢μÄ¡¾ÄÖÖó-·Ö¡¿êy¾Y
naozhong[2]=AT24C02_read_date(2);//¶áè¡′æ′¢μÄ¡¾ÄÖÖó-걡¿êy¾Y
naozhong[3]=(bit)AT24C02_read_date(3);//¶áè¡′æ′¢μÄ¡¾ÄÖÖó-¿a1Ø¡¿êy¾Y
naozhong[4]=AT24C02_read_date(4);//¶áè¡′æ′¢μÄ¡¾òôàÖDòoÅ¡¿êy¾Y
T0_init(); //¶¨ê±Æ÷3õê¼»ˉ
TimerInit(); //¶¨ê±Æ÷13õê¼»ˉ£¬2úéúòôàÖóÃ
LCD_init(); //LCD16023õê¼»ˉ
Read_time(); //Õa±ß3õê¼»ˉÏè¶áè¡ò»′ÎèÕÆú걼䣬êÇÎaáË·àÖ1ģ꽼Çòäμ½μ1¼Æê±»òÃë±íê±íË3öÃë±í»òμ1¼Æê±ê±»áÎóèÏÎaêÇÕûμã½øDD±¨ê±¡£
}
/*********************************************************/
// 1|Äü£o¶¨ê±Æ÷1ÖD¶Ï′|àíoˉêy
/*********************************************************/
void time1() interrupt 3
{
Beep_P=!Beep_P; // ½«¿ØÖÆÑïéùÆ÷μÄ1ü½Åè¡·′
TH1=ArrTh0[gTone];
TL1=ArrTl0[gTone];
}
復制代碼
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
亚洲小视频在线观看
|
日韩免费成人
|
av不卡在线观看
|
欧美视频在线一区
|
国产一区在线播放
|
中文字幕免费在线观看
|
白浆在线
|
成人在线国产
|
欧美成人精品一区二区三区在线看
|
五月天视频
|
国产一级网站
|
亚洲精品1区
|
成人在线观看视频网站
|
日本毛片在线观看
|
免费av播放
|
黄色片网站在线观看
|
91久久久久久久久
|
国产欧美一区二区三区视频在线观看
|
国产精品黄色
|
欧美日韩亚洲综合
|
青青草在线播放
|
在线观看国产小视频
|
欧美视频免费在线观看
|
亚洲天堂网在线观看
|
免费av不卡
|
亚洲aaaaaa
|
国产成人一区
|
国产精品入口夜色视频大尺度
|
亚洲精品伦理
|
免费在线黄色网址
|
一区二区欧美日韩
|
亚洲精品一区二区三区在线观看
|
你懂的在线网站
|
夜夜操天天
|
国产日韩精品一区二区
|
午夜视频免费在线观看
|
成人av资源
|
91在线精品秘密一区二区
|
国产一级黄
|
精品日韩一区二区三区
|
亚洲天天干
|