文档库 最新最全的文档下载
当前位置:文档库 › 北极星数码万年历使用说明书

北极星数码万年历使用说明书

北极星数码万年历使用说明书
北极星数码万年历使用说明书

北极星数码万年历

北极星数码万年历使用说明书

操作说明

1、按键说明:设置键、上调键、下调键、流水开关键。

2、时间调整在正常走时状态下,按“设置”键进入时间设置状态,同时年份“闪烁”,可按“上调”或“下调”键修改年份,修改好后按“设置”键将闪烁位移到公历“月”,按“上调”或“下调”键修改月份;用同样的方法可对日、时、分进行设置;12个公历节日及倒计天数、24个农历节气及倒计天数、12生肖、12星座、星期、农历月、日将自动跟随公历的变化。当分设定好后,再按“设置”键退出时间设置,回到正常时间状态。

3、节气灯花样转换在正常走时状态下,按住“设置”键3秒钟即可进入节气灯花样转换。

4、12/24小时制切换在正常走时状态下,按住“上调”键3秒钟,则可进行12小时制与24小时制的切换。上电复位时,可默认为24小时制或12小时制,由选项决定。

5、开/关整点报时在正常走时状态下,按住“下调”键3秒钟听到“嘀”一声,则可以打开或关闭整点报时功能。

6、天数倒计时或顺计时(由选项决定)在正常时间状态下,按“模式”键进入“天数计时状态”,在温度位显示“d1”,计时天数位若显示“――――”,表示计时“无效”;若显示具体数字表示有效,按“上调”键可以切换“有效”/“无效”,按“设置”键进入天数设定,且左边第一位(千位)闪烁,按“上调”或“下调”键修改内容,按“设置”键移动闪烁位置到第二位(百位),按“上调”或“下调”键修改闪烁位的内容,同样方法可设置十位与个位

7、闹钟 8组定闹(由按键选项决定),默认值无效,默认时间为――:――点,闹钟设定:在正常时间状态下(或天数计时状态),按“下调”键进入“定闹查询状态”,定闹指示灯点亮,在温度位显示“A1”,表示当前你看到的是“第1组定闹”的信息,在小时、分钟位显示“――∶――”,表示定闹“无效”;显示“XX∶XX”的具体时间,表示定闹“有效”,按“上调”键可以切换“有效”/“无效”,按“设置”键进入定闹时间设定,且小时位闪烁,按“上调”或“下调”键修改闪烁位的内容,按“设置”键移动闪烁位置到分钟位,按“上调”或“下调”键修改闪烁位的内容,再按“设置”键确认并退出定闹时间设定,再按“下调”键进入下一组闹铃状态,其设置与“第1组定闹”相同,依次类推即可设置所有定闹。

8、生日提醒①7组生日提醒,默认值无效。②生日提醒设定:在最后一组定闹状态,再按一次“下调”键则进入第一组生日提醒,生日提醒指示灯点亮,在温度位显示“b1”,在公历“月日位”显示有效“生日日期”或无效日期“――――”,则表示生日以“公历日期”为准,若在农历“月日位”显示则表示生日以农历日期为准;按“上调”键可“打开/关闭”该组生日提醒,按“设置”键进入“该组生日提醒日期”设置,按“上调”或“下调”键修改其内容,按“设置”键移动闪烁位置,再按“设置”键确认该组生日提醒设置,再按“下调”键进入下一组生日提醒,依次类推即可设置所有生日提醒,当在最后一组生日提醒时,按“下调”键则退到正常时间状态若闹铃中没有一组设置有效,则定闹指示灯熄灭,在任何闹铃时间到正在响闹

北极星数码万年历使用说明书第1页共2页

使用说明书

第2页 共2页 北极星数码万年历使用说明书 的状态下只要有键按下,都将关闭闹铃声.

9、第一次上电或停电再来电,皆会听到钟声、“如今时辰”“几点几分”然后播放一曲优美的音乐。

10、流水鸟鸣 正在走时状况下按一下“流水鸟鸣”键打开流水鸟鸣功能,再按一下声音减小直至关闭该功能。

11、测试温度:①温度范畴:-9~+50℃;②暖敏电阻值为10K ,背温度解数(3550);③参考电阻为10K 粗稀电阻。

12、遥控:如因应用的是无线遥控,在正常走时状态,按住“下调/闹钟”键3秒钟,听到“嘀”一声,里示进入遥控对于码状态,随意按远控器上的某个键,听到“嘀”一声,则对于码完败,当前便能够应用彼远控器了。按遥控器上相当的按键可完成报时、开关日光灯、开关声响、遥控调时间等功能(白外线遥控无需对码)。

13、自动开关日光灯:假如用户把夜光灯的电流开关拨到启的地位,则可完成主动关灯战开灯的功效,流动为晚上22正点闭灯、迟上7正点开灯。自静过能能够与长,在一般走时状态,按住“设置”键3秒钟,听到“嘀、嘀”两声表现撤消主动,若再按“设置”键3秒钟听到“嘀”一声,则自静过能又沉旧翻开。

数字万年历的制作

数字万年历的制作 数字显示万年历,它采用一枚专用软封装的时钟芯片,驱动15只红色共阳极数码管,可同时显示公历年、月、日、时、分、星期,以及农历月、日,还有秒点显示和整点报时、定时闹钟功能,使用220V市电供电,预留有备用电池座,外形尺寸为长21cm×宽14.5cm×厚3cm,最厚处6cm,适合放置在办公桌面上使用,具有很好的实用性。成品外观如图1所示。 图1 图2 原理简介 电路原理图如图2所示,为了读图方便,连线稍作了简化。从图中可以看出,IC1是一枚专用时钟芯片,Y1是32768Hz的晶振,为芯片提供时基频率信号,经过芯片内部处理后,输出各显示位的驱动信号,经过PNP(8550)型三极管做功率放大后驱动各数码管显示。芯片采用了动态扫描的输出

方式,由于人眼存在视觉暂留现象,且扫描速度比较快,因此看上去所有数码管都是在显示的。这种方式可以有效减少芯片的输出引脚数量,简化了线路,降低了功耗。 在电源部分中,整流二极管VD1~VD4组成了桥式整流电路,将变压器输出的交流电转换为直流电,经C6滤波后,送至三端稳压块7805,输出5V直流稳压电源,为电路供电。VD3和VD8组成互相隔离的供电电路,目的是在市电停电时,后备纽扣电池通过VD3,自动为芯片IC1提供后备电源,保证芯片计时数据不中断。同时由于VD8、VD9的存在,后备电池将不再向数码管供电,以节约后备电池的耗电量。由于芯片自身耗电较低,因此靠纽扣电池也可以维持芯片在很长时间里,内部计时不中断。当市电恢复后,7805输出经过VD8、VD9分别向芯片和数码管供电,由于DV3的存在,且纽扣电池电压为3V,低于7805输出的5V,因此纽扣电池将自动停止供电,7805输出也不会对纽扣电池充电。 VT9是唯一一只NPN(8050)型三极管,用于驱动喇叭,做为整点报时和定闹发声。LED10、LED14是用于秒点显示的发光二极管,LED11和LED12分别是整点报时显示和定闹显示的发光二极管,均为红色。 图3是万年历的全套散件的照片。表1是元器件清单。 图3 表1 元器件清单 序号元件名称参数元件数量序号元件名称参数元件数量 1 电阻10Ω 1 21 三极管8050 1 2 电阻33Ω8 22 三端稳压块7805 1 3 电阻47Ω 3 23 晶振32768Hz 1 4 电阻75Ω7 24 IC1软封装芯片 1 5 电阻100Ω 1 25 0.5’数码管红11 6 电阻150Ω8 26 0.8’数码管红 4

电子万年历课程设计报告

课程:创新与综合课程设计 电子与电气工程系 实践教学环节说明书 题目名称电子万年历 院(系)电子与电气工程学院 专业电子信息工程 班级119411 学号1109635010 学生姓名11 指导教师q1 起止日期13周周一~14周周五

电子万年历 一.设计目的 设计一个具有报时功能、停电正常运行(来电无需校时)、带有年月日、时分秒及星期显示的电子日历。 二.方案设计 硬件控制电路主要用了AT89S52芯片处理器、LCD1602显示器等。根据各自芯片的功能互相连接成电子万年历的控制电路。软件控制程序主要有主控程序、电子万年历的时间控制程序、时间显示及星期显示程序等组成。主控程序中对整个程序进行控制,进行了初始化程序及计数器、还有键盘功能程序、以及显示程序等工作,时间控制程序是电子万年历中比较重要的部分。时间控制程序体现了年、月、日、时、分、秒及星期的计算方法。时间控制程序主要是定时器0计时中断程序每隔10ms中断一次当作一个计数,每中断一次则计数加1,当计数100次时,则表示1秒到了,秒变量加1,同理再判断是否1分钟到了,再判断是否1小时到了,再判断是否1天到了,再判断是否1月到了,再判断是否1年到了,若计数到了则相关变量清除0。先给出一般年份的每月天数。如果是闰年,第二个月天数不为28天,而是29天。再用公式s=v-1 +〔(y-1/4〕-〔(y-1/100〕+〔(y-1/400〕+ d计算当前显示日期是星期几,当调节日期时,星期自动的调整过来。闰年的判断规则为,如果该年份是4或100的整数倍或者是400的整数倍,则为闰年;否则为非闰年。在我们的这个设计中由于只涉及100年范围内,所以判断是否闰年就只需要用该年份除4来判断就行了。 三.系统的设计框图 本系统以AT89S52单片机为核心,结合时钟芯片DS1302,LCD1602,键盘等外围器件,实现电子万年历的一系列功能,并通过液晶屏和按键控制完成人机交互的功能。系统总体设计框图如图(1)所示

万年历数码管显示设计及键盘控制设计final

万年历数码管显示及其键盘控制设计 组长:康智勇 组员:王辉 王玉 王天龙 付晓蓉 2008年08月08日

目录 前言 (3) 一、总体方案设计(方案的对比) (4) 二.单元模块设计(设计细节) (5) (一)烧写板 (5) (二) 单片机最小系统板 (7) (三) 4-16译码器驱动数码管控制板 (12) (四) 数码管显示板 (13) (五) 键盘控制板 (14) (六) DS12C887功能板 (14) 三、系统功能说明(结果说明) (20) 四、设计总结(心得体会) (20) 五、改进方案: (21) 附录: (22) 【参考文献】: (22) 【电路原理图】: (23) 【程序清单】: (28) 【流程图】: (47) 【键盘使用说明】 (49)

前言 目前,计算机技术的发展分为两大分支:通用计算机系统与嵌入式计算机系统。嵌入式计算机系统是面向测控对象嵌入到应用系统中的计算机系统的统称,而单片机则是一种经典的嵌入式系统。 从广义上讲,将微型计算机的主要功能部件集中在一块单芯片上的微型计算机称为单片机,这一类计算机又称为微控制器MCU(Micro Control Unit)。由于单片机集成度高、体积小、功能强、速度快、功耗低、抗干扰能力强等优点,它在智能仪器、工业测控、日常生活及家电中等得到了广泛的应用。万年历的数码管显示及键盘控制就是单片机的开发过程中的一个经典的应用。 在国内市场中存在着很多种不同厂家生产的不同类型的单片机,在本次设计中我们选用Atmel公司MCS-51系列兼容单片机中的AT89S51单片机。AT89S51单片机是一个低功耗高性能CMOS 8位单片机,40个引脚,片内含4KB Flash ROM和128B ROM,32个外部双向输入输出(I/O)接口,同时内含两个外中断口,两个16为可编程定时计数器,两个全双工串行通信口,它的最大的一个特点就是支持在线更新程序(In System Programmable,ISP)功能。 本设计中除了选用了单片机进行显示和键盘控制外,还需要一个主要的芯片就是美国DALLAS公司的新型时钟日历芯片DS12C887。DS12C887是一个能够自动产生世纪、年、月、日、时、分、秒等时间信息,而且DS12C887中自带有锂电池,外部掉电时,其内部时间信息还能够保持10年之久,因此各种设备、家电、仪器、工业控制系统中,可以很容易地用DS12C887来组成时间获取单元,以实现各种时间的获取。本次设计中正是利用它的这一性能来获取准确的时间信息。 本次设计中需要硬件和软件两方面的结合。在硬件方面,需要准备烧写板、单片机最小系统板、4-16译码器驱动数码管控制板、数码管显示板、键盘控制板、DS12C887功能板等硬件;在软件选择了Protel Technology公司开发的具有PDM 功能的强大的EDA综合设计环境Protel 99SE来进行原理图设计、PCB(印刷电路板)设计,选择了Keil Software公司推出的Keil C51的集编译器、汇编器、实时操作、项目管理器、调试器于一体的集成开发环境uVision3。 本次设计的成功离不开本组组员在实习期间的不懈努力,在必要情况下的加班加点。在整个设计过程中,本组组员本着认真负责的精神,本着“没有最好,只有更好”的原则,采取“团结一致、分工合作”的措施,终于成功的设计出了万年历的数码管显示及键盘控制。 当然,本次设计中我们也遇到了很多的问题,本次设计的成功离不开本组组员的共同努力,更离不开老师和师兄及其他组员等的帮忙,在此本组组员衷心的感谢周庆国老师、赵庆林老师、王绍伟老师、刘钰力师兄、姚琪师兄等,谢谢你们不厌其烦地给予我们帮助。 时间过得很快,实习将近尾声,但是本次实习中的收获、经历及组员间建立起来的友谊将在本组组员的脑海中留下抹不去的青春的痕迹。

北极星数码万年历使用说明书

北极星数码万年历 北极星数码万年历使用说明书 操作说明 1、按键说明:设置键、上调键、下调键、流水开关键。 2、时间调整在正常走时状态下,按“设置”键进入时间设置状态,同时年份“闪烁”,可按“上调”或“下调”键修改年份,修改好后按“设置”键将闪烁位移到公历“月”,按“上调”或“下调”键修改月份;用同样的方法可对日、时、分进行设置;12个公历节日及倒计天数、24个农历节气及倒计天数、12生肖、12星座、星期、农历月、日将自动跟随公历的变化。当分设定好后,再按“设置”键退出时间设置,回到正常时间状态。 3、节气灯花样转换在正常走时状态下,按住“设置”键3秒钟即可进入节气灯花样转换。 4、12/24小时制切换在正常走时状态下,按住“上调”键3秒钟,则可进行12小时制与24小时制的切换。上电复位时,可默认为24小时制或12小时制,由选项决定。 5、开/关整点报时在正常走时状态下,按住“下调”键3秒钟听到“嘀”一声,则可以打开或关闭整点报时功能。 6、天数倒计时或顺计时(由选项决定)在正常时间状态下,按“模式”键进入“天数计时状态”,在温度位显示“d1”,计时天数位若显示“――――”,表示计时“无效”;若显示具体数字表示有效,按“上调”键可以切换“有效”/“无效”,按“设置”键进入天数设定,且左边第一位(千位)闪烁,按“上调”或“下调”键修改内容,按“设置”键移动闪烁位置到第二位(百位),按“上调”或“下调”键修改闪烁位的内容,同样方法可设置十位与个位 7、闹钟 8组定闹(由按键选项决定),默认值无效,默认时间为――:――点,闹钟设定:在正常时间状态下(或天数计时状态),按“下调”键进入“定闹查询状态”,定闹指示灯点亮,在温度位显示“A1”,表示当前你看到的是“第1组定闹”的信息,在小时、分钟位显示“――∶――”,表示定闹“无效”;显示“XX∶XX”的具体时间,表示定闹“有效”,按“上调”键可以切换“有效”/“无效”,按“设置”键进入定闹时间设定,且小时位闪烁,按“上调”或“下调”键修改闪烁位的内容,按“设置”键移动闪烁位置到分钟位,按“上调”或“下调”键修改闪烁位的内容,再按“设置”键确认并退出定闹时间设定,再按“下调”键进入下一组闹铃状态,其设置与“第1组定闹”相同,依次类推即可设置所有定闹。 8、生日提醒①7组生日提醒,默认值无效。②生日提醒设定:在最后一组定闹状态,再按一次“下调”键则进入第一组生日提醒,生日提醒指示灯点亮,在温度位显示“b1”,在公历“月日位”显示有效“生日日期”或无效日期“――――”,则表示生日以“公历日期”为准,若在农历“月日位”显示则表示生日以农历日期为准;按“上调”键可“打开/关闭”该组生日提醒,按“设置”键进入“该组生日提醒日期”设置,按“上调”或“下调”键修改其内容,按“设置”键移动闪烁位置,再按“设置”键确认该组生日提醒设置,再按“下调”键进入下一组生日提醒,依次类推即可设置所有生日提醒,当在最后一组生日提醒时,按“下调”键则退到正常时间状态若闹铃中没有一组设置有效,则定闹指示灯熄灭,在任何闹铃时间到正在响闹 北极星数码万年历使用说明书第1页共2页

Java万年历课程设计报告

杭州师范大学钱江学院课程设计 题目万年历 学院钱江学院 专业信电分院计算机科学与技术 班级计算机1101 姓名崔伊平 指导教师王李冬 2013 年9 月20 日

目录 一.概述 (1) 二.总体方案设计 (2) 三.详细设计 (3) 四.最终输出 (7) 五.课程设计总结 (8) 参考文献 (9)

一、概述 1.课程设计的目的 通过显示年日历程序的设计,培养学生综合利用java语言进行程序设计的能力,加强函数的运用及学生对软件工程方法的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力。 通过本项课程设计,可以培养独立思考、综合运用所学有关相应知识的能力,能更好的巩固《java语言程序设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关!更加了解了java语言的好处和其可用性! 2.课程设计的要求 2.1 输入查询的年份与月份,单击“更新”按扭,则可得到相应的日历。本实验是对图形用户界面,布局管理器的综合运用。要掌握APPLET容器中添加组件的方法,理解JAVA 的事件处理机制,编写独立的运行窗口。 2.2 输出形式 使用独立的运行窗口进行显示。界面主要由两部分组成——查询输入部分和结果显示部分。查询输入部分包括两个文本域,一个用于输入年份:一个用于选择月份:一个更新按扭,用来触发查询事件。

二总体方案设计 1.程序开发环境 a.开发环境:eclipse b.系统环境:windows xp/7 c.设计工具:Microsoft office 2003 2.整体流程图 图1 流程图 3.功能模块图

C语言万年历程序设计

C语言万年历程序设计 Document serial number【UU89WT-UU98YT-UU8CB-UUUT-

目录 第1章需求分析 (6) 第2章概要设计 (6) 第3章详细设计 (11) 第四章运行结果及分析 (17) 1.登陆界面 (17) 2.显示某年全年日历 (17) 3.显示某月日历 (18) 第5章课程设计心得 (20) 参考文献 (21)

第1章需求分析 (1)程序运行时,首先给出四个菜单选项和输入提示: 图1-1 (2)用户可以通过主菜单选择不同选项。输入1,通过输入年份可显示一年每个月份的日历;输入2,通过输入年份和月份(中间以空格分开)可显示该月的日历;若输入3,通过输入年份月份和日期(中间以空格分开)可显示该日的星期;输入0,则退出查询系统。 第2章概要设计

1.菜单选择界面可通过下面所示函数时现; 主要思路: 通过while语句与swich…case以及if条件语句实现菜单的循环功能和不同选项的功能实现。 闰年与平年的判断: 代码如下: void main() { int year,month,day,a,b; while(1) { printf("\n\n\n\n");

printf(" **********************************************************\n \n"); printf(" * * \n"); printf(" 欢迎进入万年历查询系 统 \n"); printf(" * * \n\n"); printf(" **********************************************************\n \n\n"); printf(" 1 年历 2 月历 3 日历 4 退出\n"); printf(" 请输入您的选择<1~4>,按回车键确定: "); scanf("%d",&b); switch(b) { case 1: printf("\n请输入您要查的年份: "); scanf("%d",&year); a=x3(year,1,1); if(a==0) { printf("错误!请您重新输入。\n"); break;} nianli(year); break; case 2: printf("\n请输入您要查的年和月,年月之间用空格隔开: "); scanf("%d%d",&year,&month); a=x3(year,month,1); if(a==0) { printf("错误!请您重新输入。\n");

带温度显示的万年历_数码管显示(附电路图和源代码)

设计报告 设计任务: 设计一个智能化万年历时钟电路,LED数码管作为电路的显示部分,按钮开关作为调时部分,通过与单片机连接数码管动态显示年、月、日、时、分、秒、星期、温度。并能准确计算闰年闰月的显示。设计要求: 通过与单片机连接数码管动态显示年、月、日、时、分、秒、星期等功能,并能准确计算闰年闰月的显示,三个个按钮连接P3.0、P3.1、P3.2可以精确调整每一个时间数值,通过对所设计的万年历时钟电路进行实验测试,达到了动态显示时间,随时调整时间等技术所连线路和单片机接口仿真图如图3所示: 图3 仿真按键 4)温度采集部分: DS18B20温度传感器,测温范围-55℃~+125℃,固有测温分辨率0.5℃。独特的单线接口方式,DS18B20在与微处理器

连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。DS18B20的采集数据通过DQ传入单片机,单片机读取数据后将数据输出!如图所示 : 程序如下: ReadOneChar(void) { unsigned char i=0;// 定义i用于循环 unsigned char dat = 0;// 读取的8位数据 for (i=8;i>0;i--)//8次循环 { DQ = 0;// 拉低DQ总线开始读时序 dat>>=1;// dat左移一位 DQ = 1; //释放DQ总线 if(DQ)// 如果DQ=1,执dat|=0x80;(0x80即第7位为1,如果DQ为1,即读取的数据为1,将dat的第7为置1,然后dat>>=1,循环8次结束,dat 即为读取的数据) //DQ=0,就跳过 dat|=0x80; Tdelay(4);// 延时以完成此次读时序,之后再读下一数据 } return(dat); 返回读取的dat } //写一个字节 WriteOneChar(unsigned char dat) { unsigned char i=0;// for (i=8; i>0; i--)// { DQ = 0;// DQ = dat&0x01;// Tdelay(5);//延时以完成此次读时序,之后再读下一数据

基于STM32的智能万年历课程设计说明书

课程设计说明书 设计题目:基于STM32的智能万年历 专业:电气工程及其自动化 班级: 设计人:

课程设计任务书 学院电气信息系专业电气工程及其自动化 一、课程设计题目:基于STM32的智能万年历 专题名称:最小应用系统 二、课程设计主要参考资料 (1)刘火良,杨森.STM32库开发实战指南[M].北京:机械工业出版社.2013.5 (2)ADS7943中文参考资料[M/CD]. (3)ILI9320控制器中文参考资料[M/CD]. 三、课程设计应解决主要问题 (1)最小应用系统:包括MCU、复位、启动、晶振、电源等。 (2)日历的显示和设置; (3)万年历的算法和实现; (4)定时闹钟功能; (5)无线设置功能。 四、课程设计相关附件(如:图纸、软件等) (1)软件:Keil μVision4 (2)开发平台:神州Ⅱ号STM32嵌入式技术开发板 五、任务发出日期:课程设计完成日期: 指导教师签字:系主任签字:

指导教师对课程设计的评语 指导教师(签章): 日期:

摘要 单片机应用技术飞速发展,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及生活中广泛使用的各种智能IC卡、电子宠物等,从大到国家防卫,小到日常生活,方方面面都离不开单片机。单片机是集CPU,RAM,ROM,定时,计数和多种接口于一体的微控制器。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。 二十一世纪的今天科技与经济迅速发展,人们的生活节奏变得越来越快,生活水平越来越高,对于生活的品味和质量的要求也更高。人们不再满足于只能提供简单计时功能的时钟,希望在能保证计时精确的基础上能多添加一些其他功能,诸如日历、定时等。 本文主要介绍了以STM32F103VCT6开发板为核心部件来设计的一款万年历,以其内部的RTC时钟模块作为时钟,用TFTLCD液晶显示器作为显示模块,时钟电路能准确提供24小时制时间、平年闰年的判断以及定时。采用Keil uVision4进行编写调试程序,以神州二号嵌入式技术开发板为硬件平台进行设计,最终实现在显示屏上显示时间、日期、以及进行定时等功能。 以基于STM32的智能万年历作为设计的课题,因为它有很好的开放性和可发挥性,不仅考察了对单片机的掌握能力而且强调了对单片机扩展的应用。另外液晶显示的万年历已经越来越流行,特别适合在家庭居室、办公室、大厅、会议室、车站和广场等地方使用,它具有显示清晰直观、走时准确、可以进行夜视等功能,并且还可以扩展出其它多种功能。所以,电子万年历作为设计课题很有价值。 经过两周的课程设计,我们完成了按键和触摸两种方式对万年历的控制,实现了基本的万年历功能和闹钟功能。本次课程设计让我对万年历有了深刻理解,更让我对stm32有了更进一步的学习。 关键词:STM32F103VCT6;最小应用系统;万年历

万年历

科名片 万年历(gregorian solar calendar and chinese lunar calendar)我国古代传说中最古老的一部太阳历。为纪念历法编撰者万年功绩,便将这部历法命名为“万年历”。而现在所使用的万年历,实际上就是记录一定时间范围内(比如100年或更多)的具体阳历或阴历的日期的年历,方便有需要的人查询使用,与原始历法并无直接联系 目录 由来 1. 第一个版本 2. 第二个版本 择日宜忌 阳历与阴历 在线万年历 干支年历歌诀 图书《万年历》(2009) 1. 基本信息 2. 内容简介 3. 图书目录 图书《万年历》(2008) 1. 基本信息 2. 内容简介 3. 目录 由来 1. 第一个版本 2. 第二个版本 择日宜忌 阳历与阴历 在线万年历 干支年历歌诀 图书《万年历》(2009) 1. 基本信息 2. 内容简介 3. 图书目录 图书《万年历》(2008) 1. 基本信息 2. 内容简介 3. 目录 展开 编辑本段由来 第一个版本 要想 ?? ?? 追寻万年历的由来,那故事得从远古时代的商朝说起……有名樵夫唤做万年,有一天他上山砍柴,砍罢了就坐在树下休息。他眼望著树影出神,心中想的,仍是如何将节令定准的事。

不知不觉过了大半个时辰,他才发现地上的树影已悄悄地移动了方位。万年灵机一动,心想,何不利用日影的长短来计算时间呢?回到家后,万年就设计了一个“日晷仪”。可是,一遇上阴雨天,日晷仪又失去效用了。 有一天,万年在泉边喝水,看见崖上的水很有节奏的往下滴,规律的滴水声又启发了他的灵感。回家後,万年就动手做了一个五层的漏壶,利用漏水的方法来计时。这么一来,不管天气阴晴,都可以正确地掌握时间了。有了计时的工具,万年更加用心的观察天时节令的变化。经过长期的归纳,他发现,每隔三百六十多天,天时的长短就会重覆一次。只要搞清楚日月运行的规律,就不用担心节令不准了。万年就带著自制的日晷仪及水漏壶去觐见天子祖乙,说明节令不准与天神毫不相干。祖乙觉得万年说的很有道理,就把万年留下,在天坛前盖起日晷台、漏壶亭,又派了十二个童子供万年差遣。从此以后,万年得以专心致志的研究时令。过了一段日子,祖乙派阿衡去了解万年制历的情况。万年拿出自己推算出的初步成果,说:日出日落三百六,周而复始从头来。草木荣枯分四时,一岁月有十二圆。 阿衡听後,非常忐忑不安,他担心制出准确的历法,得到天子重用,直接的威胁到他的地位。於是阿衡就以重金收买了一名刺客,准备行刺万年。无奈万年全心研究时令,几乎从不离开所住的日月阁。刺客只好趁夜深人静之时,挽起了箭射杀万年。只听得嗖的一声,一箭射中了万年的胳膊,万年应声倒下。童子们高喊抓拿刺客,守卫的兵士及时抓住了刺客,将他扭送天子。祖乙问明了是阿衡的诡计,就下令将阿衡收押,亲自到日月阁来探望万年。万年就把自己最新的研究成果报告给祖乙:现在申星追上了百星蚕百星,星象复原,子时夜交,旧岁已完,时又始春,希望天子定个节名吧!祖乙说:春为岁首,就叫春节吧。当时祖乙见万年为了制历,日夜劳瘁又受了箭伤,心中不忍,就请他入宫调养身体,万年答道:“多谢天子厚爱,只是目前的太阳历还是草历,不够准确,要把岁末尾时也闰进去。否则,久而久之,又会造成节令失常。为了不负众望,我必须留下来,继续把太阳历定准。”又经过了数十个寒暑,万年精心制定的太阳历终于完成了。当他把太阳历献给祖乙时,已是个白发苍苍的老人了。祖乙深受感动,就把太阳历定名为万年历,并封万年为日月寿星,以上就是万年历名称的由来。 第二个版本 相传,在很久以前,有个名叫万年的青年,看到当时节令很乱,想把节令定准。一天,他上山砍柴,坐在树阴下休息,树影的移动启发了他,他设计了一个测日影计天时的晷仪。可是,天阴雨雾,影响测量。后来,山崖上的滴泉引起了他的兴趣,他又动手做了一个五层漏壶。天长日久,他发现每隔三百六十多天,天时的长短就会重复一遍。当时的国君叫祖乙,天气风云的不测,使他很苦恼。 一个名叫阿衡的大臣,为讨好皇上,奏称要设天台敬祭天神。祖乙认为有理,便带领百官去祭天,却无济于事。万年知道后,忍不住就带着日晷和漏壶去见皇上,对祖乙讲清了日月运行的道理。祖乙听后龙颜大悦,感到有道理。于是把万年留下,在天坛前修建日月阁,筑起日晷台和漏壶亭。并派了十二个童子服侍万年。祖乙对万年说:"希望你能测准日月规律,推算出准确的晨夕时间,创建历法,为天下的黎民百姓造福。"有一次,祖乙传旨要阿衡去了解万年测试历法的进展情况。当他登上日月坛时,看见天坛边的石壁上刻着:日出日落三百六周而复始从头来。草木枯荣分四时,一岁月有十二圆。阿衡见此,知道万年的历法已研究成功,心中忐忑不安。他万分惧怕万年因创建历法而得宠,国君会怪罪自己提出祭祀天神的主意。于是,他阴谋策划,派了一个刺客去除掉万年。刺客攀上日月阁,见万年正在阁上观察星斗,便张弓搭箭,准备射死他。谁知,刺客被卫士发现,被当场缉拿。祖乙知后,惩处了阿衡,亲自登上日月阁看望万年。万年指着天象,对祖乙说:"现在正是十二个月满,旧岁已完,新春复始,祈请国君定个节吧。"祖乙说:"春为岁首,就叫春节吧。"冬去春来,年复一年。后来,万年经过长期观察,精心推算,制定出了准确的太阳历。当他把太阳历呈奉给

Java课程设计-万年历

河北科技大学课程设计报告 号:学生姓名:学 专业班级:程序设计课程设计Java课程名称:学期学年第 2 2 015 学年学期: 2 014 — 指导教师:刘伟月年 2 0

的?.................................................................. ................................1?? 2.需求分................................................................... .........析................................1? 3.总体设计................................................................... ........................................1? 4.详细设计................................................................... ........................................1?

5.软件测试................................................................... . (10) 6.课程设计总结................................................................... ................................11. 一、课程设计目的(1)熟练使用java语言编写程序,解决实际问题。? (2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;? (3)学会自己调试程序的方法并掌握一定的技巧。 二、需求分析本程序的要求为: 1.使用图形用户界面;? 2.本程序能够实现日期与星期的查询。 ?三、总体设计(1)可以通过图形界面显示日历。? (2)能以月历形式显示日期与星期。? (3)支持用户自己输入年份,可以通过上一年,下一年等按钮来选择年份和月份。? ?四、详细设计1.总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。 ,0若是取余得几既为星期几,7使总天数除以输出月份第一天为星期几的算法:2. 则为星期日。? 3.算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。? 4.查询年份必须为四位有效数字,否则不予显示。 程序源代码: import import import import import import; import import import ; import ; import import import java.awt.*; import import java.text.*; import ;

万年历应用小程序设计报告

题目:万年历应用小程序 一、题目陈述: 设计一个万年历,要求具有显示年份、月份、日期的功能,与windowsXP 系统的日期与时间的界面和功能类似。 二、问题分析: 万年历的界面可由内容面板类panel 和spinner 、textArea 、comboBox 等容器构成;布局可以由BorderLayout 、FlowLayout 、GridLayout 使其达到美观整齐的效果。万年历功能的实现是通过添加相应的监听器和事件处理函数来完成的。 三、题目设计: (一)、类设计: 1、 面板类CalendarDemo :嵌入显示月份的comboBox 和显示年份的spinner ,以及显 示日期的textArea 。 2、 窗口类CalendarTest :镶入面板,设计窗口大小等属性,并包含主函数。运行后显 示该窗口。 3、 类与类之间的关系: (二)、界面设计: 根据windows 的日期界面,利用JPanel 提供的BorderLayout 、FlowLayout ,将包含comboBox 和spinner 的panel1放在NORTH 区,包含textArea 的panel2放在CENTER 区。CalendarDemo 类的对象panel 的titledBorder 设置为“日期”

(三)、事件处理: 匿名内部类事件监听器做事件处理:用comboBox实现月份变换改变日期变换的PopupMenuListener()、用spinner实现年份变换改变日期变换的ChangeListener()。 具体处理方式: (四)、主要的成员变量和成员函数: 1、面板类CalculatorDemo:JComboBox comboBox;JSpinner spinner;JTextArea textArea; JPanel panel1,panel2;String[] monthsString[] date;int thisYear, thisMonth;Public void typeset() ; 2、窗口类CalculatorTest:CalendarDemo panel;public static void main; 四、源代码: import javax.swing.*; import java.awt.*; import javax.swing.event.*; public class CalendarDemo extends JPanel { JComboBox comboBox; JSpinner spinner;

基于51单片机电子万年历设计

基于51单片机电子万年历设计 专业:机电设备维修与管理姓名:杜洪浦指导老师: 摘要电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分和秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3到5V电压供电。 万年历的设计过程在硬件与软件方面进行同步设计。硬件部分主要由AT89C52单片机,液晶显示电路,复位电路,时钟电路,稳压电路电路以及串口下载电路等组成。在单片机的选择上使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用液晶LCD1602。软件方面主要包括日历程序、液晶驱动程序,显示程序等。程序采用汇编语言编写。所有程序编写完成后,在Keil C51软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。 关键词时钟电钟,DS1302,液晶LCD1602,单片机 目录 1设计要求与方案论证 (2) 1.1 设计要求 (2) 1.2 系统基本方案选择和论证 (2) 1.2.1单片机芯片的选择方案和论证 (2) 1.2.2 显示模块选择方案和论证 (3) 1.2.3时钟芯片的选择方案和论证: (3) 1.3 电路设计最终方案决定 (3) 2系统的硬件设计与实现 (3) 2.1 电路设计框图 (4) 2.2 系统硬件概述 (4) 2.3 主要单元电路的设计 (4) 2.3.1单片机主控制模块的设计 (4)

课程设计万年历的设计52503328

课程设计万年历的设计52503328

兰州理工大学 计算机与通信学院 2014年秋季学期 面向对象课程设计 题目:万年历的设计

序言 《面向对象的程序设计》是计算机专业一门重要的专业基础课。此次课程设计的目的是以面向对象程序设计语言为基础,通过完成一些具有一定难度的课程设计题目的编写、调试、运行工作,进一步掌握面向过程和面向对象程序设计的基本方法和编程技巧,巩固所学理论知识,使理论与实际相结合。从而提高自我分析问题、解决问题的能力。通过课程设计,学生在下述各方面的能力应该得到锻炼: (1)进一步巩固、加深学生所学专业课程《C++语言程序设计》的基本理论知识,理论联系实际,进一步培养学生综合分析问题、解决问题的能力。 (2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。 (3)利用所学知识,开发小型应用系统,掌握运用C++语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。 (4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。 (5)掌握面向对象的程序设计方法。 (6)进一步掌握在集成环境下如何调试程序、修改程序和程序的测试。

目录 摘要 (2) 第一章系统总体设计 (3) 一.理论说明 (3) 二.流程图说明 (4) 1.总体流程说明图 (4) 2.部分流程说明图 (4) 第二章系统详细设计 (7) 一.主要组成部分 (7) 二.源程序 (9) 第三章系统测试 (34) 四软件使用说明书 (40) 一.系统运行环境 (40) 二.系统操作提示 (40) 总结 (41) 参考文献 (42) 致谢 (42)

电子万年历

河北科技师范学院课程设计说明书 题目: 学院(系): 年级专业: 学号: 学生姓名: 指导教师:

摘要 本设计是电子万年历。具备三个功能:能显示:年、月、日、时、分、秒及星期信息,并具有可调整日期和时间功能。 我选用的是单片机8052来实现电子万年历的功能。该电子万年历能够成功实现时钟运行,调整,显示年月日时分秒及星期,温度等信息。 该电子万年历使用12MHZ晶振与单片机8052相连接,通过软件编程的方法实现了以24小时为一个周期,同时显示小时、分钟和秒的要求。利用单片机定时器及计数器产生定时效果通过编程形成数字钟效果,再利用数码管动态扫描显示单片机内部处理的数据。同时通过端口读入当前外部控制状态来改变程序的不同状态,实现不同功能。 电子万年历设计与制作可采用数字电路实现,也可以采用单片机来完成。若用数字电路完成,所设计的电路相当复杂,大概需要十几片数字集成块,其功能也主要依赖于数字电路的各功能模块的组合来实现,焊接的过程比较复杂,成本也非常高。若用单片机来设计制作完成,由于其功能的实现主要通过软件编程来完成,这样一来就降低了硬件电路的复杂性,从而使得其成本降低,更适合我们大学生自主研发。所以在该设计与制作中我选用了单片机8052,它是低功耗、高性能的CMOS型8位单片机。片内带有4KB的Flash存储器,且允许在系统内改写或用编程器编程。另外, 单片机8052的指令系统和引脚与8051完全兼容,片内有128B 的RAM、32条I/O口线、2个16位定时计数器、5个中断源、一个全双工串行口等。 因此,采用单片机8052原理制作的电子万年历,不仅仅在原理上能够成功实现计时等功能,也更经济,更适用,更符合我们实际生活的需要,对我们大学生来说也更加有用。

数码管模块化显示电子万年历

数码管显示模块化显示电子万年历 数码管共阳极7407驱动共阴极max7221/7419驱动 Ds1302 实时时间显示 Ds18b20 温度显示芯片 /*delay.h*/ #ifndef _DELAY_H #define _DELAY_H_ #define uint unsigned int #define uchar unsigned char void delay(uint xms); //秒级延时 void delayms(uint xms); //毫秒级延时,不可以更改,若更改,DS18B20将显示异常#endif /*delay.c*/ #include "delay.h" void delay(uint xms) { uint i; uchar j; for(i=xms;i>0;i--) for(j=110;j>0;j--); } void delayms(uint xms) //毫秒级别延时 {

while(xms--); } /*ds1302.h*/ #ifndef _DS1302_H_ #define _DS1302_H_ #include #define uint unsigned int #define uchar unsigned char sbit IO=P1^0; //ds1302跟单片机接口 sbit SCLK=P1^1; sbit RST=P1^2; extern unsigned char datetime[7]; //存储获得的时间值extern void gettime(); //读取时间值函数 #endif /*ds1302.c*/ #include #include "ds1302.h" uchar datetime[7]={0,0,0,0,0,0,0}; //用来接收获得的时间值void write_a_byte_to_ds1302(uchar X) { uchar i; for(i=0;i<8;i++) { IO=X&0X01; SCLK=1; SCLK=0; X>>=1; } } uchar get_a_byte_from_ds1302() { uchar i,b=0x00; for(i=0;i<8;i++) { b|=_crol_((uchar )IO,i); SCLK=1; SCLK=0; } //return b/16*10+b%16; //返回的BCD码转换为十进制return (b>>4)*10+(b&0x0f); //注意运算的优先级 } uchar read_data(uchar add)

简易万年历的设计说明

目录 第一部分设计任务 1.1 设计题目及要求 (1) 1.2.1 方案一 (1) 1.2.2 方案二 (1) 第二部分系统硬件平台的设计 2.1 总体设计方案说明 (2) 2.2 单片机最小系统 (2) 2.2.1 STC89C52单片机介绍 (2) 2.2.2 时钟电路 (4) 2.2.3 复位电路 (4) 2.3 1602液晶模块 (5) 2.4 时钟芯片DS1302 (6) 第三部分系统软件的设计与实现 3.1 主程序 (8) 3.2.1 Protues 仿真软件介绍 (8) 3.2.2 仿真电路图 (9) 第四部分安装调试 4.1 系统软、硬件调试 (10) 4.1.1 调试步骤 (11) 4.1.2 故障及处理 (11) 课程设计总结 (12) 参考文献 (12)

第一部分设计任务 1.1 设计题目及要求 设计一个基于单片机的简易万年历。 (1)可以在LCD液晶上显示秒、分、时、星期、日、月、年; (2)能够判断平年、润年; (3)秒、分、时、星期、日、月、年可调; (4)具有单片机断电记忆功能,在单片机掉电后无需重新设置。 1.2 备选方案设计与比较 1.2.1 方案一 直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数,并用程序判断平年和闰年,用数码管显示时、分、秒、年、月、日、星期。由于需要显示的数字比较多,则需要的数码管个数比较多,采用数码管显示显得太浪费,并且多的数码管焊接时也比较复杂,此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大,最主要的问题是些方法在单片机主电源断电后,计时将恢复初始值。所以不采用此种方法作为显示。 1.2.2 方案二 采用DS1302时钟芯片实现时钟,用1602LCD液晶显示屏显示时、分、秒、年、月、日、星期。DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,不需要在程序中采用定时,而且精度高,工作电压2.5V~5.5V围,2.5V时耗电小于300nA,此芯片最主要的特点是具有备用电源引脚,在单片机主电源掉电后,备用电源供电,使得DS1302继续工作,时钟继续运行,即具备掉电记忆功能,符合课程设计要求,液晶显示屏的显示功能强大,可显示大量数字和英文字母,以及一些特殊字符,并且显示多样,清晰可见,且价格适中,固采用此方案。

基于单片机的万年历课程设计说明书剖析

郑州工业应用技术学院 课程设计说明书题目:基于单片机控制的电子万年历设计 姓名:许颖福 院(系):机电工程学院 专业班级:13电气工程1班 学号:1302120118 指导教师:祁瑞敏、杨坤漓 成绩: 时间:2015 年12月21 日至2015 年12 月30 日

郑州工业应用技术学院 课程设计任务书 题目: 基于单片机控制的电子万年历设计 专业、班级 13电气工程1班学号1302120118姓名许颖福 主要内容、基本要求、主要参考资料等: 主要内容: 设计一个基于单片机的电子万年历,能够显示时间、日期、温度等信息。并且具备调整时间、日期、定时等功能。 基本要求: 1.利用单片机、时钟芯片、温度传感器、显示模块等实现日期、时间、温度的显示即一个简单的万年历; 2.万年历的设计是几个简单模块的组合,硬件上是这样,软件上也是这样,要熟悉相关模块的设计思路; 3.通过Proteus仿真设计的使用,完成万年历的设计与仿真; 4.通过万年历的设计熟练掌握单片机的各个功能,并且能对单片机有一个总体的把握,在设计的过程中能够凭借对单片机各功能的了解,达到理想的设计效果; 5.通过该设计掌握时钟芯片DS1302、温度传感器DS18B20和LCD1602等芯片的使用方法。 主要参考资料: [1]李全利,单片机原理及接口技术[M],高等教育出版社 [2]王文杰,单片机应用技术[M],冶金工业出版社 [3]朱清慧,PROTEUS教程——电子线路设计、制版与仿真[M],清华大学出版社 [4]单片机实验指导书,天煌教仪 [5]彭伟,单片机C语言程序设计实训100例[M],电子工业出版社 完成期限: 指导教师签名: 课程负责人签名: 年月日

相关文档