当前位置:文档之家› 可编程作息时间控制器设计(单片机)

可编程作息时间控制器设计(单片机)

2013~2014学年第2学期《单片机原理与应用》课程设计报告学校:北华航天工业学院题目:可编程作息时间控制器设计专业:惺惺惜惺惺班级:Bxxxxx姓名:xxxxx学号:惺惺惜惺惺信息学、、指导教师:xx电子工程系2013年6月14日- 0 -《可编程作息时间控制器设计》任务书摘要本课题是应用AT89C52为核心控制器件的作息时间控制钟,由键盘、声音输出模块、电源转换模块和存储模块四部分组成。

它利用AT89C52的定时/计数器来计算时间,并用存储器记录数据,保证了系统的可靠性。

AT89C52单片机是整个设计的核心控制器件,根据从键盘接受的数据控制整个设计的工作流程。

整体性好,人性化强,可靠性高,实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,可对一些以24小时为周期的开关量进行自动控制。

如上下课打铃及扩音设备的开与关。

采用AT89C52单片机来实现对上述开关量的控制,设有8位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时实时时钟,体现了系统简单、工作稳定可靠、价廉、控制时间精确及系统体积小等特点。

首先设计各个模块的屏幕显示,其次是各个模块需要调用的小程序,有PC 机的日期和时钟,响铃声音,按键,屏幕显示以及延时的调用等等,最后是将各个功能模块与其中需要的小程序通过正确的汇编语言组建起来。

这样便完成了源文件的建立。

再通过.ASM源文件生成的.EXE可执行文件进行仿真。

该仿真可以模拟实现:与PC机日期时钟保持一致的显示功能,仿照已设定的响铃时间进行打铃功能,根据已设定的早晚作息时间灯光控制的功能,键盘输入修正响铃时间,随时手动按键实现响铃的功能。

目录摘要 .................................................................................................................. - 1 -目录 .................................................................................................................. - 2 -第一章绪论 ........................................................................................................ - 3 -1.1 课题研究的目的与意义............................................................................ - 3 -1.2 研究内容及采用方法................................................................................ - 3 -1.2.1 主要研究内容................................................................................. - 3 -1.2.2 主要采用方法................................................................................. - 3 -1.3课题的研究原理......................................................................................... - 4 -第2章可编程作息时间控制器的方案设计 ...................................................... - 5 -2.1总体方案组成框图及设计流程图........................................................... - 5 -2.2具体步骤实施........................................................................................... - 7 -2.2.1日期和时钟显示功能的设计......................................................... - 7 -2.2.2 上下课打铃功能的设计............................................................... - 11 -2.2.3 灯光显示功能的设计................................................................... - 13 -2.2.4 修改响铃时间功能的设计........................................................... - 13 -2.2.5 模拟手动控制功能的设计........................................................... - 14 -第3章可编程作息时间控制器的protues仿真 ............................................ - 16 -3.1 仿真结果................................................................................................... - 16 -3.2性能及误差分析....................................................................................... - 17 -附录 ....................................................................................... 错误!未定义书签。

参考文献 ................................................................................. 错误!未定义书签。

第一章绪论1.1 课题研究的目的与意义20世纪末,电子技术得到了飞速的发展。

在其推动下,现代电子产品几乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。

时间对于人来说总是那么珍贵,工作的忙碌性和繁杂让人容易忘记当前时间。

然而遇到重大事情的时候,一旦忘记时间,就会给自己或他人造成更大的麻烦。

对于学校来说作息时间尤为重要。

如今,在电子计算机基础上发展而来的可编程作息时间控制器,它可以利用电子计算机的内部时间,通过程序判断处理,完成对作息时间的精确控制,并且由于是程序控制,所以可通过改变程序而进而灵活改变作息时间,同时可以实时显示时间,并实现打铃功能。

可编程时间控制器可实现对时间控制的智能化,摆脱由人控制时间的长短不同的不便,并且可以在必要时人工切入控制,,完美的满足作息时间控制。

1.2 研究内容及采用方法1.2.1 主要研究内容用C语言编写作息时间控制程序,按照给定的时间模拟控制,上下课打铃、灯光控制(屏幕显示),并且具备日期和时钟显示。

给定的时间可修改,可模拟手动控制,用扬声器模拟打铃。

1.2.2 主要采用方法通过汇编语言编程,先在数据段中开几段缓冲区,以存放需要显示的提示信息以及存储PC机内部时钟日期等等,调用子程序的清屏部分来显示已经设定好的屏幕部分,再调用DOS的日期及时钟调用功能,读取PC机内部日期和时钟,并将数据存入显示缓冲区,然后调用时间和日期显示功能,把程序设计成用刷新的方式来不断获取系统时间,这样就有了一秒一秒走动的日期时钟显示,在此过程需要用到延时程序,所以把延时程序单独做成一个子程序,然后在需要的时候调用它,使得时间显示程序更加精炼,此时日期和时钟显示功能已经完成;而后设计灯光控制(屏幕显示),采用比较跳转的方式即可,当到达设定的时间区域时通过比较来判断是亮灯还是灭灯;随后是上下课打铃的模拟,需要调用DOS 显示功能,将设定好的时间在屏幕上显示出来,然后调用PC机内部时钟,判断时钟与给定时间是否相同,进而判断是否响铃,若响铃则调用设定好的响铃程序,并实现屏幕模拟显示;给定时间修改是调用键盘I/O中断功能号,获取键值的方法来进入,先确定应该修改哪个响铃,再将新的响铃时间数据存入要修改时钟的缓冲区,并将其覆盖来实现;模拟手动控制、用扬声器模拟打铃,同样采用调用键盘I/O中断功能号,获取键值的方法,判断是否与设定的手动按键相同,若相同则进入手动控制,进入后调用响铃程序,而后自动退出响铃,开始其他响应功能。

1.3课题的研究原理将定时闹钟改造为4路可调闹钟,从而实现打铃等功能。

当四路闹钟中的任一路到时,均会点亮灯、打铃。

如有需求,可对程序进行调整,增加闹钟的路数,及到时后的处理方式第2章可编程作息时间控制器的方案设计2.1总体方案组成框图及设计流程图时间作息控制的主体电路应包括秒信号发生器、时间显示电路按键电路、供电电源以及闹铃指示电路等几部分。

时间作息控制的系统组成框图如图2-1-1所示:图2-1-1时间作息控制的系统组成框图图2-1-2介绍了作息时间控制器的大致设计思路图2-1-2方案实施流程图2.2具体步骤实施2.2.1日期和时钟显示功能的设计2.2.1.1日期和时钟显示流程图图2-2-1是时钟和日期设计的大体思路,先在数据段中开辟存储日期时间等的缓冲区,便于后续程序的使用,再调日期和时钟的DOS功能调用中的显示功能,将数据由二进制转换为ASCII码,存储并显示。

图2-2-1 日期和时钟显示流程图2.2.1.2日期和时钟设计步骤分析该模块设计中,先在数据段开了两段缓冲区,以存储显示日期和时间的提示Time is以及从PC机读到的日期和时间。

而后是调用DOS的日期功能,其功能号是2ah,日期分别存于cx,dx中,在该设计中调用出来的日期时间均是二进制数,如果要在界面中显示必须要转换成ASCII码。

每一次数制转换后均要将转换后的数据存储于数据段开辟的存储缓冲区tbuf内,接下来便可调用DOS的的9号显示功能,只需将提示信息、日期及时间的存储缓冲区的偏移地址赋予dx,再使用DOS功能,调用9号的显示功能即可。

相关主题