




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.SW08A15_带温度无字库12864的万年历程序文章来源:网络转载 发布时间:2008-8-22 21:43:01 浏览次数:283 本例程完成了万年历的显示,包括设置时间,农历,温度,1302的初始化以及帮助界面,采用不带字库的12864,所以整体程序比较大,编译完成后,不能在89C52中运行,建议使用89C54。本程序还有很多冗杂之处,未做调整,全做抛砖引玉。#include "reg52.h"#include "sw08a15.h"#include
2、"1302.h"#include "12864.h"#include "intrins.h"uchar num,week;uchar timeNow6;uint LunarCal;uchar SolarCalYear, SolarCalMonth, SolarCalDay;uchar times=0;uchar wendu=0;uchar code dian32=0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00,0x00,0x00,/
3、*:*/;uchar code hz32=0x40,0x20,0x10,0x0C,0xE3,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0x02,0x00,0x00,0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x04,0x00,/*"年",0*/0x00,0x00,0x00,0x00,0x00,0xFF,0x11,0x11,0x11,0x11,0x11,0xFF,0x00,0x00,0x00,0x00,0x00,0x40,0x20,0x10,
4、0x0C,0x03,0x01,0x01,0x01,0x21,0x41,0x3F,0x00,0x00,0x00,0x00,/*"月",1*/0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00,/*"日",2*/0x00,0x00,0x00,0xBE,0x2A,0x2A,0x2A,0xEA,0x
5、2A,0x2A,0x2A,0x2A,0x3E,0x00,0x00,0x00,0x00,0x48,0x46,0x41,0x49,0x49,0x49,0x7F,0x49,0x49,0x49,0x49,0x49,0x41,0x40,0x00,/*"星",3*/0x00,0x04,0xFF,0x54,0x54,0x54,0xFF,0x04,0x00,0xFE,0x22,0x22,0x22,0xFE,0x00,0x00,0x42,0x22,0x1B,0x02,0x02,0x0A,0x33,0x62,0x18,0x07,0x02,0x22,0x42,0x3F,0x00,0x00,/*&
6、quot;期",4*/0x00,0x20,0x18,0x08,0x88,0xE8,0x1F,0x6A,0x88,0x08,0x88,0xC8,0xA8,0x1C,0x08,0x00,0x08,0x04,0x02,0x41,0xFF,0x40,0x20,0x10,0x01,0x02,0x0D,0x18,0x70,0x20,0x20,0x00,/*"农",5*/0x00,0x00,0xFE,0x02,0x22,0x22,0x22,0x22,0xFA,0x22,0x22,0x22,0xE2,0x02,0x02,0x00,0x40,0x30,0x0F,0x00,0x40,
7、0x20,0x18,0x06,0x01,0x00,0x20,0x60,0x3F,0x00,0x00,0x00,/*"历",6*/0x10,0x21,0x86,0x70,0x00,0x7E,0x4A,0x4A,0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00,0x00,0x02,0xFE,0x01,0x40,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x41,0x41,0x7F,0x40,0x00,/*"温",7*/0x00,0x00,0xFC,0x04,0x24,0x24,0xFC,0xA5,0xA6,0x
8、A4,0xFC,0x24,0x24,0x24,0x04,0x00,0x80,0x60,0x1F,0x80,0x80,0x42,0x46,0x2A,0x12,0x12,0x2A,0x26,0x42,0xC0,0x40,0x00,/*"度",8*/0x00,0x02,0x05,0xE2,0x18,0x04,0x02,0x02,0x02,0x02,0x02,0x02,0x04,0x1E,0x00,0x00,0x00,0x00,0x00,0x07,0x18,0x20,0x40,0x40,0x40,0x40,0x40,0x40,0x20,0x18,0x00,0x00,/*"
9、",9*/0x40,0x41,0xCE,0x04,0x00,0x80,0x40,0xBE,0x82,0x82,0x82,0xBE,0xC0,0x40,0x40,0x00,0x00,0x00,0x7F,0x20,0x90,0x80,0x40,0x43,0x2C,0x10,0x10,0x2C,0x43,0xC0,0x40,0x00,/*"设",10*/0x00,0x20,0x2F,0xA9,0xA9,0xAF,0xE9,0xB9,0xA9,0xAF,0xA9,0xA9,0x2F,0x20,0x00,0x00,0x80,0x80,0x80,0xFF,0xAA,0xAA,
10、0xAA,0xAA,0xAA,0xAA,0xAA,0xFF,0x80,0x80,0x80,0x00,/*"置",11*/0x00,0x20,0x2A,0x2A,0xAA,0x7F,0x2A,0x2A,0xAA,0x00,0xFE,0x42,0x9A,0xA6,0x42,0x00,0x00,0x04,0x02,0x01,0x3E,0x02,0x02,0x02,0xFF,0x02,0x13,0x22,0x1E,0x00,0x00,0x00,/*"帮",12*/0x00,0x00,0xFE,0x22,0x22,0x22,0xFE,0x00,0x10,0x10,
11、0xFF,0x10,0x10,0xF0,0x00,0x00,0x10,0x10,0x1F,0x11,0x11,0x09,0x4F,0x28,0x10,0x0C,0x03,0x20,0x40,0x3F,0x00,0x00,/*"助",13*/0x40,0x40,0x42,0xCC,0x00,0x50,0x4E,0xC8,0x48,0x7F,0xC8,0x48,0x48,0x40,0x00,0x00,0x00,0x40,0x20,0x1F,0x20,0x48,0x46,0x41,0x40,0x40,0x47,0x48,0x48,0x4E,0x40,0x00,/*"选&
12、quot;,14*/0x08,0x08,0xFF,0x88,0x48,0x08,0x42,0x46,0x2A,0xD2,0x2A,0x46,0x42,0x80,0x80,0x00,0x42,0x81,0x7F,0x00,0x00,0x08,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x08,0x08,0x00,/*"择",15*/0x20,0x21,0xEE,0x04,0x00,0x00,0xFF,0x29,0xA9,0xBF,0xA9,0xA9,0x01,0xFF,0x00,0x00,0x00,0x00,0x1F,0x88,0x44,0x30,
13、0x0F,0x00,0x0F,0x04,0x04,0x4F,0x80,0x7F,0x00,0x00,/*"调",16*/0x00,0x04,0x74,0xD4,0xFF,0xD4,0x74,0x04,0x10,0x0C,0xB7,0x44,0xB4,0x0C,0x04,0x00,0x00,0x42,0x43,0x7A,0x43,0x42,0x43,0x7E,0x4B,0x4B,0x4A,0x4A,0x42,0x43,0x01,0x00,/*"整",17*/0x00,0x84,0xE4,0x5C,0x44,0xC4,0x10,0xF8,0x97,0x92,
14、0xF2,0x9A,0x96,0xF2,0x00,0x00,0x01,0x00,0x3F,0x08,0x88,0x4F,0x30,0x0F,0x04,0x04,0x3F,0x44,0x84,0x7F,0x00,0x00,/*"确",18*/0x40,0x41,0x42,0xCC,0x04,0x00,0x00,0x00,0x80,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x20,0x90,0x60,0x18,0x07,0x00,0x03,0x0C,0x30,0xC0,0x40,0x00,/*"认&
15、quot;,19*/0x40,0x42,0xDC,0x08,0x00,0x00,0xFE,0x52,0x92,0x12,0x12,0x92,0x73,0x02,0x00,0x00,0x40,0x20,0x1F,0x20,0x48,0x46,0x51,0x50,0x48,0x45,0x42,0x45,0x48,0x50,0x00,0x00,/*"返",20*/0x00,0xFE,0x02,0x02,0xF2,0x12,0x12,0x12,0x12,0x12,0xF2,0x02,0x02,0xFE,0x00,0x00,0x00,0x7F,0x40,0x40,0x47,0x44,
16、0x44,0x44,0x44,0x44,0x47,0x40,0x40,0x7F,0x00,0x00,/*"回",21*/0x00,0x08,0x88,0xC9,0x2E,0x98,0x48,0x00,0x08,0x08,0xF8,0x08,0x08,0xFC,0x08,0x00,0x02,0x01,0x00,0x7F,0x01,0x02,0x44,0x20,0x10,0x0C,0x03,0x20,0x40,0x3F,0x00,0x00,/*"初",22*/0x10,0x90,0x70,0x1F,0x12,0xF0,0x00,0x20,0x70,0x28,
17、0x27,0x22,0x28,0x70,0x20,0x00,0x40,0x21,0x12,0x0C,0x06,0x09,0x30,0x00,0x7F,0x21,0x21,0x21,0x21,0x7F,0x00,0x00,/*"始",23*/0x80,0x40,0x20,0xF8,0x07,0x02,0x00,0x00,0xFF,0xC0,0x60,0x30,0x1C,0x08,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x04,0x02,0x01,0x3F,0x40,0x40,0x40,0x40,0x78,0x00,0x00,/*"化&
18、quot;,24*/;uchar code weekCode32=0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"一",0*/0x00,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x06,0x04,0x00,0x00,0x00,0x00,0x1
19、0,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x18,0x10,0x00,/*"二",1*/0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x04,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,/*"三",2*/0x00,0xFE,0x02,0x02,0x02,0xFE,
20、0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x7F,0x28,0x24,0x23,0x20,0x20,0x20,0x21,0x22,0x22,0x22,0x22,0x7F,0x00,0x00,/*"四",3*/0x00,0x02,0x82,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,0xC2,0x82,0x02,0x00,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x30,0
21、x20,0x00,/*"五",4*/0x10,0x10,0x10,0x10,0x10,0x91,0x12,0x1E,0x94,0x10,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x00,0x00,0x01,0x02,0x0C,0x78,0x30,0x00,0x00,/*"六",5*/0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x0
22、0,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00,/*"日",6*/;uchar code numberCode16=0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,/*"0",0*/0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*"1&
23、quot;,1*/0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,/*"2",2*/0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,/*"3",3*/0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,/*"4&quo
24、t;,4*/0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,/*"5",5*/0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,/*"6",6*/0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,/*"7",
25、7*/0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,/*"8",8*/0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,/*"9",9*/0x00,0x00,0xC0,0x38,0xE0,0x00,0x00,0x00,0x20,0x3C,0x23,0x02,0x02,0x27,0x38,0x20,/*"A",0*/
26、0x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x11,0x0E,0x00,/*"B",11*/0xC0,0x30,0x08,0x08,0x08,0x08,0x38,0x00,0x07,0x18,0x20,0x20,0x20,0x10,0x08,0x00,/*"C",12*/0x08,0xF8,0x08,0x08,0x08,0x10,0xE0,0x00,0x20,0x3F,0x20,0x20,0x20,0x10,0x0F,0x00,/*"D",13*/
27、0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x20,0x23,0x20,0x18,0x00,/*"E",14*/0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x00,0x20,0x3F,0x20,0x00,0x03,0x00,0x00,0x00,/*"F",15*/;/农历数据/uchar code year_code= 0x4d,0x4A,0xB8, /2001 0x0d,0x4A,0x
28、4C, /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
29、; 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,0x
30、BC, /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
31、; 0x69,0x57,0x3d, /2025 0x0A,0x4e,0x51, /2026 0x0d,0x26,0x46, /2027 0x5e,0x93,0x3A, /2028 0x0d,0x53,0x4d, /2029 0x05,0xAA,0x43, /2030 0x36,0xB5,0x37, /2031 0x09,0x6d,0x
32、4B, /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
33、; 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,0x
34、BA, /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
35、; 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,0x
36、49, /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
37、; 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,0x
38、38, /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
39、; 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,0x
40、47, /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;ucha
41、r code day_code19=0x0,0x1f,0x3b,0x5a,0x78,0x97,0xb5,0xd4,0xf3;uint code day_code23=0x111,0x130,0x14e;/农历转换算法bit get_moon_day(uchar month_p,uint table_addr)/bit15-9-year,bit8-5-month,bit4-0-day switch (month_p) case 1: if(year_codetable_addr&0x08)=0) return(0);else return(1
42、); case 2: if(year_codetable_addr&0x04)=0) return(0);else return(1); case 3: if(year_codetable_addr&0x02)=0) return(0);else return(1); case 4: if(year_codetable_addr&0x01)=0) return(0);else return(1); case 5: if(year_codetable_addr+1&0x80)=0) return(0);else re
43、turn(1); case 6: if(year_codetable_addr+1&0x40)=0) return(0);else return(1); case 7: if(year_codetable_addr+1&0x20)=0) return(0);else return(1); case 8: if(year_codetable_addr+1&0x10)=0) return(0);else return(1); case 9: if(year_codetable_addr+1&0x08)=0) retur
44、n(0);else return(1); case 10: if(year_codetable_addr+1&0x04)=0) return(0);else return(1); case 11: if(year_codetable_addr+1&0x02)=0) return(0);else return(1); case 12: if(year_codetable_addr+1&0x01)=0) return(0);else return(1); case 13: if(year_codetable_addr+2&am
45、p;0x80)=0) return(0);else return(1); uint Conversion(uchar year,uchar month,uchar day) uchar temp1,temp2,temp3,month_p; uint temp4,table_addr; uint dat_return,dat_buffer; bit flag_y; table_addr=(year-1)*3;
46、60; temp1=year_codetable_addr+2&0x60; temp1=_cror_(temp1,5); temp2=year_codetable_addr+2&0x1f; if(temp1=0x1) temp3=temp2-1;
47、; else temp3=temp2+0x1f-1; if (month<10) temp4=day_code1month-1+day-1; else
48、0; temp4=day_code2month-10+day-1; if (month>0x2)&&(year%0x4=0) temp4+=1; if (temp4>=temp3) temp4-=temp3; mo
49、nth=0x1; month_p=0x1; flag_y=0; if(get_moon_day(month_p,table_addr)=0)temp1=0x1d; else temp1=0x1e; temp2=year_codetable_addr/16;
50、 while(temp4>=temp1) temp4-=temp1; month_p+=1; if(month=temp2)
51、; flag_y=flag_y; if(flag_y=0)month+=1; else month+=1;
52、 if(get_moon_day(month_p,table_addr)=0)temp1=0x1d; else temp1=0x1e; day=temp4+1; else t
53、emp3-=temp4; year-=1; table_addr-=0x3; month=0xc; temp2=year_codetable_addr/16; if (temp2=0)month_p=0xc; else mon
54、th_p=0xd; flag_y=0; if(get_moon_day(month_p,table_addr)=0)temp1=0x1d; else temp1=0x1e; while(temp3>temp1)
55、0; temp3-=temp1; month_p-=1; if(flag_y=0)month-=1; if(month=temp2)flag_y=flag_y; if(get_moon_day(month
56、_p,table_addr)=0)temp1=0x1d; else temp1=0x1e; day=temp1-temp3+1; dat_buffer=0; dat_return=0; dat_buffer=(uint)year; d
57、at_buffer<<=9; dat_return|=dat_buffer; dat_buffer=(uint)month; dat_buffer<<=5; dat_return|=dat_buffer; dat_return|=(uint)day; return dat_return; /温度函数/Init_DS18B20(void) unsigned char x=0; DQ = 1; /DQ复位 delay(8);
58、160; /稍做延时 DQ = 0; /单片机将DQ拉低 delay(80); /精确延时 大于 480us DQ = 1; /拉高总线 delay(14); x=DQ; /稍做延时后 如果x=0则初始化成功 x=1则初始化失败 delay(20);/读一个字节ReadOneChar(void)unsigned char i=0;unsigned char dat = 0;for (i=8;i>0;
59、i-) DQ = 0; / 给脉冲信号 dat>>=1; DQ = 1; / 给脉冲信号 if(DQ) dat|=0x80; delay(4); return(dat);/写一个字节WriteOneChar(unsigned char dat) unsigned char i=0; for (i=8; i>0; i-) DQ = 0; DQ = dat&0x01; delay(5);&
60、#160; DQ = 1; dat>>=1; /读取温度float ReadDQerature(void)unsigned char a=0;unsigned char b=0;unsigned int t=0;float tt=0;Init_DS18B20();WriteOneChar(0xCC); / 跳过读序号列号的操作WriteOneChar(0x44); / 启动温度转换Init_DS18B20();WriteOneChar(0xCC); /跳过读序号列号的操作WriteOneChar(0xBE); /读取温度寄存器等(共可读9个寄存器) 前两个就是
61、温度a=ReadOneChar();b=ReadOneChar();t=b;t<<=8;t=t|a;tt=t*0.0625;return(tt);/void displayMessage()hz_disp8(0,0,numberCode2,0); /20hz_disp8(0,8,numberCode0,0); /20hz_disp16(0,32,hz0,0);/年hz_disp16(0,64,hz1,0);/月hz_disp16(0,96,hz2,0);/日hz_disp8(2,16,dian,0);/点hz_disp8(2,40,dian,0);/点hz_disp16(2,72,
62、hz3,0);/星hz_disp16(2,72+16,hz4,0);/期hz_disp16(4,0,hz5,0);/农hz_disp16(4,16,hz6,0);/历hz_disp8(4,32,dian,0);/点hz_disp16(4,64,hz1,0);/月hz_disp16(4,96,hz2,0);/日hz_disp16(6,0,hz7,0);/温hz_disp16(6,16,hz8,0);/度hz_disp8(6,32,dian,0);/点hz_disp16(6,64,hz9,0);/hz_disp16(6,80,hz12,0);/帮hz_disp16(6,96,hz13,0);/助h
63、z_disp8(6,112,numberCode15,0);/Fhz_disp8(6,120,numberCode2,0);/2/main()int i=0;/*DsInit();*/delay(1000);init_lcd();Clr_Scr();EA=0;displayMessage();/定时器0设置 TMOD=0x01; TH1=0x4c; TL1=0x00; EA=1; ET0=1;/允许计时器0 TR0=1;/开始计时/外部中断0设置IT0=0;/低电平触发方式EX0=1;/允许中断0IT1=0;/低电平触发方式EX1=1
64、;/允许中断1/本程序不使用点阵显示,所以关闭点阵显示,防止按键影响。 SwFunc=SwNothing; P1=0; P0=0; SwFunc=DzR; while(1) void t1int() interrupt 1EA=0;TH1=0x4c;TL1=0x00;if(times)times=0;GetTimer(timeNow);hz_disp8(0,16,numberCode(timeNow0>>4),0); /年 十位hz_disp8(0,24,numberCode
65、(timeNow0&0x0f),0); /年 个位hz_disp8(0,48,numberCode(timeNow1>>4),0); /月 十位hz_disp8(0,56,numberCode(timeNow1&0x0f),0); /月 个位hz_disp8(0,80,numberCode(timeNow2>>4),0); /日 十位hz_disp8(0,88,numberCode(timeNow2&0x0f),0); /日 个位hz_disp8(2,0,numberCode(timeNow3>
66、;>4),0); /时 十位hz_disp8(2,8,numberCode(timeNow3&0x0f),0); /时 个位hz_disp8(2,24,numberCode(timeNow4>>4),0); /分 十位hz_disp8(2,32,numberCode(timeNow4&0x0f),0); /分 个位hz_disp8(2,48,numberCode(timeNow5>>4),0); /秒 十位hz_disp8(2,56,numberCode(timeNow5&am
67、p;0x0f),0); /秒 个位GetWeek(&week);hz_disp16(2,104,weekCode(week&0x0f)-1,0); /周 个位SolarCalYear=(timeNow0>>4)*10+(timeNow0&0x0f);SolarCalMonth=(timeNow1>>4)*10+(timeNow1&0x0f);SolarCalDay=(timeNow2>>4)*10+(timeNow2&0x0f);LunarCal=Conversion(SolarCalYear,SolarCalMont
68、h,SolarCalDay);/bit15-9-year,bit8-5-month,bit4-0-daySolarCalYear=LunarCal>>9;/为了节省空间,赞用阳历变量。SolarCalMonth=(LunarCal&0x01ff)>>5;SolarCalDay=LunarCal&0x001f;hz_disp8(4,48,numberCodeSolarCalMonth/10,0);hz_disp8(4,56,numberCodeSolarCalMonth%10,0);hz_disp8(4,80,numberCodeSolarCalDay/1
69、0,0);hz_disp8(4,88,numberCodeSolarCalDay%10,0);elsetimes=1;wendu=(int)ReadDQerature();hz_disp8(6,48,numberCodewendu/10,0);hz_disp8(6,56,numberCodewendu%10,0);EA=1;void keyInt() interrupt 0uchar func=0;uchar smw=0,exitKey=1,temp;EA=0;EX0=0;hz_disp8(0,16,numberCode(timeNow0>>4),1);GetTimer(timeN
70、ow);dofor(smw=0;smw<16;smw+) KeyState=1; P0=smw; SwFunc=DzC; delay(3); if(KeyState=0)/对应键被按下,我们设置,A键为选择键,B键为设置结束,E键为数字加 delay(10); if(KeyState=0)/软件防抖动 while(KeyState=0);/等待按键被抬起后
71、才开始相应动作 switch(smw) case 0x0a:/选择键 func+; if(func>12) func=0; break; / case 0x0b:/设置结束 exitKey=
72、0; SetTimer(timeNow); SetWeek(&week); break; case 0x0f:/设置初始化 DsInit(); break; / case 0x0e:/数字加 switch(func) case 0: temp=(timeNow0>>4); /年 十位 temp+; &
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 餐厅管理信息系统
- 地理信息系统原理与实践应用练习题集
- 学校实验室装修合同
- 清包工承包合同
- 产品总代理销售合同书
- 电商运营实战指南
- 校园安全隐患教育
- 教育机构品牌建设与管理手册
- 经济学宏观微观知识点试题及答案
- 美容美发技术与实践作业指导书
- 广东省建筑消防安全评估标准
- 航天科技集团人事管理制度
- 2023年12月份河北省高中学业水平考试化学试卷含答案
- GB/T 22731-2022日用香精
- 河北省唐山市迁安市2023-2024学年七年级下学期期中考试数学试卷(含解析)
- 企业积分制管理实施细则(试行)
- 刑事案件模拟法庭剧本
- 2024年上海杨浦城市建设投资集团有限公司招聘笔试参考题库含答案解析
- 肺动脉高压的传统治疗
- 2024年湖北宜昌高新区社区专职工作人员网格员招聘笔试参考题库附带答案详解
- 新时代劳动教育教程(高职)大学生劳动教育全套教学课件
评论
0/150
提交评论