?? yinli.h
字號:
#define uchar unsigned char
/***************************************************
* 標題:公歷與陰歷、星期轉換 *
* 作者:Wujieflash *
* 日期:2008年1月18日 *
* 說明:陰歷日期與星期隨公歷變化 *
***************************************************/
uchar code info[]=
{0x0c,0x96,0x45,//2000
0x4d,0x4a,0xb8,//2001
0x0d,0x4a,0x4c,//2002
0x0d,0xa5,0x41,//2003
0x25,0xaa,0xb6,//2004
0x05,0x6a,0x49,//2005
0x7a,0xad,0xbd,//2006
0x02,0x5d,0x52,//2007
0x09,0x2d,0x47,//2008
0x5c,0x95,0xba,//2009
0x0a,0x95,0x4e,//2010
0x0b,0x4a,0x43,//2011
0x4b,0x55,0x37,//2012
0x0a,0xd5,0x4a,//2013
0x95,0x5a,0xbf,//2014
0x04,0xba,0x53,//2015
0x0a,0x5b,0x48,//2016
0x65,0x2b,0xbc,//2017
0x05,0x2b,0x50,//2018
0x0a,0x93,0x45,//2019
0x47,0x4a,0xb9,//2020
0x06,0xaa,0x4c,//2021
0x0a,0xd5,0x41,//2022
0x24,0xda,0xb6,//2023
0x04,0xb6,0x4a,//2024
0x69,0x57,0x3d,//2025
0x0a,0x4e,0x51,//2026
0x0d,0x26,0x46,//2027
0x53,0x93,0x3a,//2028
0x0d,0x53,0x4d,//2029
0x05,0xaa,0x43,//2030
0x36,0xb5,0x37,//2031
0x09,0x6d,0x4b,//2032
0xb4,0xae,0xbf,//2033
0x04,0xad,0x53,//2034
0x0a,0x4d,0x48,//2035
0x6d,0x25,0xbc,//2036
0x0d,0x25,0x4f,//2037
0x0d,0x52,0x44,//2038
0x5d,0xaa,0x38,//2039
0x0b,0x5a,0x4c,//2040
0x05,0x6d,0x41,//2041
0x24,0xad,0xb6,//2042
0x04,0x9b,0x4a,//2043
0x7a,0x4b,0xbe,//2044
0x0a,0x4b,0x51,//2045
0x0a,0xa5,0x46,//2046
0x5b,0x52,0xba,//2047
0x06,0xd2,0x4e,//2048
0x0a,0xda,0x42,//2049
0x35,0x5b,0x37,//2050
0x09,0x37,0x4b,//2051
0x84,0x97,0xc1,//2052
0x04,0x97,0x53,//2053
0x06,0x4b,0x48,//2054
0x66,0xa5,0x3c,//2055
0x0e,0xa5,0x4f,//2056
0x06,0xb2,0x44,//2057
0x4a,0xb6,0x38,//2058
0x0a,0xae,0x4c,//2059
0x09,0x2e,0x42,//2060
0x3c,0x97,0x35,//2061
0x0c,0x96,0x49,//2062
0x7d,0x4a,0xbd,//2063
0x0d,0x4a,0x51,//2064
0x0d,0xa5,0x45,//2065
0x55,0xaa,0xba,//2066
0x05,0x6a,0x4e,//2067
0x0a,0x6d,0x43,//2068
0x45,0x2e,0xb7,//2069
0x05,0x2d,0x4b,//2070
0x8a,0x95,0xbf,//2071
0x0a,0x95,0x53,//2072
0x0b,0x4a,0x47,//2073
0x6b,0x55,0x3b,//2074
0x0a,0xd5,0x4f,//2075
0x05,0x5a,0x45,//2076
0x4a,0x5d,0x38,//2077
0x0a,0x5b,0x4c,//2078
0x05,0x2b,0x42,//2079
0x3a,0x93,0xb6,//2080
0x06,0x93,0x49,//2081
0x77,0x29,0xbd,//2082
0x06,0xaa,0x51,//2083
0x0a,0xd5,0x46,//2084
0x54,0xda,0xba,//2085
0x04,0xb6,0x4e,//2086
0x0a,0x57,0x43,//2087
0x45,0x27,0x38,//2088
0x0d,0x26,0x4a,//2089
0x8e,0x93,0x3e,//2090
0x0d,0x52,0x52,//2091
0x0d,0xaa,0x47,//2092
0x66,0xb5,0x3b,//2093
0x05,0x6d,0x4f,//2094
0x04,0xae,0x45,//2095
0x4a,0x4e,0xb9,//2096
0x0a,0x4d,0x4c,//2097
0x0d,0x15,0x41,//2098
0x2d,0x92,0xb5,//2099
};
//計算公歷日離元旦的天數
int Numdate(uchar year,uchar month,uchar date)
{
uchar i;
int numday=0;
for(i=1;i<month;i++)
{
if((i!=2)&&(i<8)&&(i%2==1))numday=numday+31;
if((i>7)&&(i%2==0))numday=numday+30;
if(i==2)
{
if(year/4==0)numday=numday+29;
else numday=numday+28;
}
}
numday=numday+date;
return(numday);
}
//公歷轉換陰歷的子程序
void YangToYin(uchar year,uchar month,uchar date)
{
uchar numdate1,numdate2,chunjie_yue,chunjie_date,num;
uchar runyue,num_month=0,i,flag,bitmonth,ri_ge,ri_shi;
numdate1=Numdate(year,month,date);
chunjie_yue=info[year*3+2]&0x60;
chunjie_yue=chunjie_yue>>4;
chunjie_date=info[year*3+2]&0x1f;
numdate2=Numdate(year,chunjie_yue,chunjie_date);
num=numdate1-numdate2;
runyue=info[year*3]&0xf0;
runyue=runyue>>4;
if(num>0)
{
bitmonth=info[year*3]&0x0f;
bitmonth=bitmonth<<4;
for(i=4;i>0;i++)
{
//temp=num;
flag=bitmonth&0x80;
if(flag==1)
{
if((num-30)>0)
{
if(num_month==runyue)
{
if(info[year*3+2]&0x80==1)
{
num=num-30;
}
else
{
num=num-29;
}
}
num_month++;
num=num-30;
}
else
{
ri_ge=num%10;
ri_shi=num/10;
}
}
else
{
if((num-29)>0)
{
if(num_month==runyue)
{
if(info[year*3+2]&0x80==1)
{
num=num-30;
}
else
{
num=num-29;
}
}
num_month++;
num=num-29;
}
else
{
ri_ge=num%10;
ri_shi=num/10;
}
}
bitmonth=bitmonth<<1;
}
bitmonth=info[year*3+1];
for(i=8;i>0;i++)
{
//temp=num;
flag=bitmonth&0x80;
if(flag==1)
{
if((num-30)>0)
{
if(num_month==runyue)
{
if(info[year*3+2]&0x80==1)
{
num=num-30;
}
else
{
num=num-29;
}
}
num_month++;
num=num-30;
}
else
{
ri_ge=num%10;
ri_shi=num/10;
}
}
else
{
if((num-29)>0)
{
if(num_month==runyue)
{
if(info[year*3+2]&0x80==1)
{
num=num-30;
}
else
{
num=num-29;
}
}
num_month++;
num=num-29;
}
else
{
ri_ge=num%10;
ri_shi=num/10;
}
}
bitmonth=bitmonth<<1;
}
// ChangeToLCD6(4,64,num_month);
// ChangeToLCD7(4,111,ri_ge);
// ChangeToLCD8(4,95,ri_shi-1);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -