单片机应用电子时钟课程设计

合集下载

51电子时钟课程设计

51电子时钟课程设计

51电子时钟课程设计一、课程目标知识目标:1. 学生能理解51单片机的内部结构及其工作原理;2. 学生能掌握电子时钟的基本原理,包括时钟芯片的初始化和使用方法;3. 学生能运用C语言编写程序,实现电子时钟的基本功能,如时、分、秒显示。

技能目标:1. 学生能运用已学的电子知识和编程技巧,完成51电子时钟的电路设计和程序编写;2. 学生通过实际操作,培养动手能力,提高解决实际问题的能力;3. 学生能通过课程学习,掌握基本的焊接技能,完成电子时钟的制作。

情感态度价值观目标:1. 学生在课程学习过程中,培养对电子技术和编程的兴趣,提高主动学习的积极性;2. 学生通过团队协作,培养沟通与合作的意识,增强团队精神;3. 学生在作品展示环节,学会欣赏他人的优点,提高自信心,培养创新精神和实践能力。

课程性质:本课程为实践性较强的课程,结合51单片机技术和电子时钟原理,注重培养学生的动手能力和实际问题解决能力。

学生特点:学生在前期课程中已掌握基本的电子知识和编程技巧,具备一定的实践基础。

教学要求:教师需引导学生运用所学知识,完成电子时钟的设计与制作,注重培养学生的创新思维和团队协作能力。

在教学过程中,关注学生的个体差异,提供个性化的指导。

通过课程目标的分解,确保学生能够实现预期的学习成果。

二、教学内容本课程教学内容主要包括以下几部分:1. 51单片机基础:复习51单片机的内部结构、工作原理,重点掌握时钟电路、复位电路和I/O口的使用。

2. 电子时钟原理:介绍电子时钟的基本构成,包括时钟芯片、晶振、显示屏等,分析时钟芯片的初始化和使用方法。

3. C语言编程:回顾C语言基础知识,重点讲解51单片机编程的语法和技巧,为编写电子时钟程序打下基础。

4. 电路设计与制作:指导学生进行电子时钟的电路设计,包括元器件的选择、电路图的绘制和PCB板的设计。

5. 程序编写与调试:教授学生编写电子时钟程序,实现时、分、秒的显示功能,并进行程序调试。

单片机课程设--电子钟设计

单片机课程设--电子钟设计

单片机MCS-51数钟课程设计系别:专业:班级:姓名及学号:日期:目录单片机MCS-51数钟 (1)课程设计 (1)一、课程设计的目的 (3)二、课程设计任务 (3)三、硬件结构概述 (4)(一)复位电路 (4)(二)晶振电路 (4)(三)按键电路 (4)(四)显示部分 (5)四、软件结构概述 (5)(一)代码说明 (5)(二)按键处理思路 (10)(三)秒表设计思路 (11)五、调试过程 (12)(一)系统仿真 (12)(二)仿真过程中出现的问题及解决方案 (12)六、心得体会 (13)七、参考文献 (14)一、课程设计的目的(1)巩固、加深和扩大单片机应用的知识面, 提高综合及灵活运用所学知识解决工业控制的能力;二、(2)培养针对课题需要, 选择和查阅有关手册、图表及文献资料的自学能力, 提高组成系统、编程、调试的动手能力;三、(3)过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程, 软硬件设计的方法、内容及步骤。

四、课程设计任务(1)在ZY15MCU12BD型综合单片机实验箱的硬件结构上编写软件完成设计。

也可以在其它MCS—51单片机硬件板上完成, 或自行设计硬件并制做完成。

(2)程序的首地址应使目标机可以直接运行, 即从0000H开始。

在主程序的开始部分必须设置一个合适的栈底。

程序放置的地址须连续且靠前, 不要在中间留下大量的空闲地址, 以使目标机可以使用较少的硬件资源。

(3)6位LED数码管从左到右分别显示时、分、秒(各占用2位), 采用24小时标准计时制。

开始计时时为000000, 到235959后又变成000000。

(4)在键盘上选定3个键分别作为小时、分、秒的调校键。

每按一次键, 对应的显示值便加1。

分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。

在调校时均不向上一单位进位 (例如分加到59后变为00, 但小时不发生改变)。

(5) 软件设计必须使用MCS-51片内定时器, 采用定时中断结构, 不得使用软件延时法。

基于单片机的电子时钟课程设计报告

基于单片机的电子时钟课程设计报告

目录一、引言········二、设计课题·········三、系统总体方案·········四、系统硬件设计······1.硬件电路原理图2.元件清单五、系统软件设计·········1.软件流程图2.程序清单六、系统实物图········七、课程设计体会········八、参考文献及网站·········九、附录·········一.引言单片机因将其主要组成部分集成在一个芯片上而得名,就是把中央处理器、随机存储器、只读存储器、中断系统、定时器/计数器以及I/O接口电路等部件集成在一个芯片上。

基于单片机设计的数字钟精确度较高,因为在程序的执行过程中,任何指令都不影响定时器的正常计数,即便程序很长也不会影响中断的时间。

数字钟是采用数字电路实现对日期、时、分、秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表的报时功能。

数字钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所,给人们的生活、学习、工作带来极大的方便。

单片机课程设计电子时钟

单片机课程设计电子时钟

单片机课程设计电子时钟一、课程目标知识目标:1. 让学生理解单片机的基本原理和编程方法,掌握单片机在电子时钟设计中的应用。

2. 使学生掌握电子时钟的组成和工作原理,包括时、分、秒的显示与计时功能。

3. 帮助学生了解电子时钟设计中涉及的硬件知识,如晶振、计数器、显示器件等。

技能目标:1. 培养学生运用单片机编程实现电子时钟功能的能力,提高学生的动手实践能力。

2. 培养学生分析问题、解决问题的能力,能够针对电子时钟设计过程中遇到的问题进行调试和优化。

3. 培养学生团队协作能力,通过分组合作完成课程设计任务。

情感态度价值观目标:1. 激发学生对单片机及电子制作的兴趣,培养学生主动学习的积极性。

2. 培养学生严谨的科学态度,注重实验数据的真实性,养成良好的实验习惯。

3. 增强学生的创新意识,鼓励学生在课程设计中发挥想象力和创造力,提高学生的创新能力。

课程性质:本课程为实践性课程,注重培养学生的动手能力和实际应用能力。

学生特点:学生已具备一定的单片机基础知识和编程技能,对电子制作有较高的兴趣。

教学要求:结合课本内容,注重理论与实践相结合,通过课程设计提高学生的综合应用能力。

将课程目标分解为具体的学习成果,以便在教学设计和评估过程中有针对性地指导学生。

二、教学内容1. 理论知识:- 单片机原理与编程:复习课本第三章内容,重点掌握单片机的内部结构、工作原理、指令系统及编程方法。

- 电子时钟原理:学习课本第四章关于时钟电路的设计,了解时、分、秒的计数原理及显示技术。

2. 实践操作:- 硬件设计:根据课本第五章内容,选用51单片机及相关元器件,设计电子时钟的硬件电路,包括晶振、计数器、显示器件等。

- 软件编程:运用C语言或汇编语言,编写电子时钟的程序代码,实现时、分、秒的显示与计时功能。

3. 教学大纲:- 第一周:复习单片机基础知识,讲解电子时钟原理,分配课程设计任务。

- 第二周:进行硬件电路设计,学习并选用合适的元器件,绘制原理图。

单片机电子时钟课程设计设计报告

单片机电子时钟课程设计设计报告

单片机电子时钟设计一、作品功能介绍该作品是个性化电子钟设计,技术上主要用单片机(AT89S52)主控,6位LED数码显示,分别显示“小时:分钟:秒”。

该作品主要用于24小时计时显示,能整时报时,能作为秒表使用,能定时闹铃1分钟。

功能介绍:(1)上电以后自动进入计时状态,起始于00:00:00。

(2)设计键盘调整时间,完成时间设计,并设置闹钟。

(3)定时时间为1/100秒,可采用定时器实现。

(4)采用LED数码管显示,时、分,秒采用数字显示。

(5)采用24小时制,具有方便的时间调校功能。

(6)具有时钟和秒表的切换功能。

使用方法:开机后时钟在00:00:00起开始计时。

(1)长按进入调分状态:分单元闪烁,按加1,按减1.再长按进入时调整状态,时单元闪烁,加减调整同调分.按长按退出调整状态。

(2)(2)按进入设定闹时状态: 12:00: ,可进行分设定,按分加1,再按为时调整,按时加1,按调闹钟结束.在闹铃时可按停闹,不按闹铃1分钟。

(3)按下进入秒表状态:再按秒表又启动,按暂停,再按秒表清零,按退出秒表回到时钟状态。

二、电路原理图如原理图所示,硬件系统主要由单片机最小应用系统、LED数码管显示模块、电源模块、晶振模块、按键模块等组成。

电子时钟原理图各个模块设计1.单片机系统 AT89S52 AT89S52概述:是一款非常适合单片机初学者学习的单片机,它完全兼容传统的8051,8031的指令系统,他的运行速度要比8051快最高支持达33MHz的晶体震荡器,在此系统中使用12MHz的晶振。

AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

单片机课程设计电子时钟

单片机课程设计电子时钟

xxxxxx大学课程设计报告课程设计名称:单片机系统综合课程设计课程设计题目:电子时钟院(系):专业:班级:学号:姓名:指导教师:完成日期:xxxxxx大学课程设计报告目录第1章总体设计方案 (1)1.1设计原理 (1)1.2设计思路 (1)1.3实验环境 (2)第2章详细设计方案 (3)2.1硬件电路设计 (3)2.2主程序设计 (3)2.3功能模块的设计与实现 (4)第3章结果测试及分析 (11)3.1结果测试 (11)3.2结果分析 (11)参考文献 (12)附录 A (13)附录 B (21)附录 C (22)第1章总体设计方案1.1 设计原理根据课程设计任务书的内容,要求实现在MCS51单片机上对数字电子钟的基本功能设计,对当前时间正确显示,并可根据需要对时间进行更改,以完成时间的校对和闹钟的设置。

时钟时间以时、分、秒在6位数码管上显示,小时以24小时计时模式,分秒均为60进位。

用6MHz晶振产生振荡脉冲,定时器进行秒计时。

调整设置时间的过程运用可编程键盘上的按键进行控制,共设有5个按键,首先按键A进入校时模式或E进入闹钟模式,再分别按键B对小时或C分钟进行更改,每按键一次数码管计数显示加一,更改结束后按键D退出设置,时钟正常显示。

闹钟时间到时,蜂鸣器鸣响10秒后时钟正常显示。

1.2 设计思路采用C语言程序设计结合硬件电路设计方法,利用Lab6000实验箱来实现数字电子钟的设计。

1)提出方案根据设计要求,可将本次设计分为3个模块进行:1)时钟显示模块:主要用于时间的正确显示。

2)校时模块:此模块用于时钟的校对,以完成用户更改时间的需求。

3)闹钟模块:用于实现闹钟的时间设置和定点闹铃的功能。

2)方案论证时钟显示模块中,利用可编程定时器中断进行秒计时,将时间显示在6位数码管上。

校时模块主要利用键盘上5个键的控制完成各项功能,并在数码管上动态显示改变结果,完成设置后进入时钟显示模块。

闹钟模块的设置过程与校时模块相似,但设置完成进入时间显示模块后则等待闹铃时间,到规定时间后,通过数码管闪烁及蜂鸣器的鸣响来实现定点闹铃提醒功能。

C52单片机电子时钟电路设计 课程设计

C52单片机电子时钟电路设计 课程设计

C52单片机电子时钟电路设计课程设计单片机原理及应用课程设计题目: C52单片机电子时钟电路设计姓名: 陶鹏鹏专业: 电子科学与技术班级: 121班指导教高海涛师:安徽科技学院数理学院目录1、基于单片机的电子时钟电路设计.........1.1设计任务与要求...................1.1.1设计目的:.................1.1.2设计要求:.................1.2方案设计 ........................2、单片机应用系统简介...................2.1AT89C52单片机的功能结构..........2.2单片机的引脚定义及功能...........2.3 定时/计数器....................2.3.1定时/计数器结构............2.3.2工作原理...................2.4键盘接口技术 ....................2.5复位操作 ........................2.6 显示控制模块....................3、硬件电路设计.........................3.1电子时钟的电路图.................3.2单元电路设计 ....................3.2.1晶振、复位电路模块.........3.2.2键盘控制模块...............3.2.3蜂鸣器电路模块.............3.2.4显示器电路模块.............4、软件设计.............................4.1系统主程序设计...................4.2主程序清单 ......................4.3系统仿真与调试...................5、结论与心得...........................摘要电子钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。

单片机电子时钟课程设计实验报告(1)

单片机电子时钟课程设计实验报告(1)

单片机电子时钟课程设计实验报告(1)单片机电子时钟课程设计实验报告一、实验内容本次实验的主要内容是使用单片机设计一个电子时钟,通过编程控制单片机,实现时钟的显示、报时、闹钟等功能。

二、实验步骤1.硬件设计根据实验要求,搭建电子时钟的硬件电路,包括单片机、时钟模块、显示模块、按键模块等。

2.软件设计通过C语言编写单片机程序,用于实现时钟功能。

3.程序实现(1)时钟显示功能通过读取时钟模块的时间信息,在显示模块上显示当前时间。

(2)报时功能设置定时器,在每个整点时,通过发出对应的蜂鸣声,提示时间到达整点。

(3)闹钟功能设置闹钟时间和闹铃时间,在闹钟时间到达时,发出提示蜂鸣,并在屏幕上显示“闹钟时间到了”。

(4)时间设置功能通过按键模块实现时间的设置,包括设置小时数、分钟数、秒数等。

(5)年月日设置功能通过按键模块实现年月日的设置,包括设置年份、月份、日期等。

三、实验结果经过调试,电子时钟的各项功能都能够正常实现。

在运行过程中,时钟能够准确、稳定地显示当前时间,并在整点时提示时间到达整点。

在设定的闹铃时间到达时,能够发出提示蜂鸣,并在屏幕上显示“闹钟时间到了”。

同时,在需要设置时间和年月日信息时,也能够通过按键进行相应的设置操作。

四、实验感悟通过本次实验,我深刻体会到了单片机在电子设备中的广泛应用以及C 语言在程序设计中的重要性。

通过实验,我不仅掌握了单片机的硬件设计与编程技术,还学会了在设计电子设备时,应重视系统的稳定性与可靠性,并善于寻找调试过程中的问题并解决。

在今后的学习和工作中,我将继续加强对单片机及其应用的学习与掌握,努力提升自己的实践能力,为未来的科研与工作做好充分准备。

52单片机时钟课程设计

52单片机时钟课程设计

52单片机时钟课程设计一、课程目标知识目标:1. 学生能理解并掌握52单片机的基本原理及其在时钟设计中的应用。

2. 学生能描述时钟电路的工作原理,包括时钟晶振、分频器等组成部分。

3. 学生能运用C语言编写程序,实现对时钟的显示、调整和时间计算功能。

技能目标:1. 学生能独立完成52单片机的时钟电路连接和程序编写。

2. 学生通过实验操作,培养动手能力和问题解决能力,能够调试并优化时钟程序。

3. 学生能够运用所学知识,结合实际需求,设计简单的时钟应用项目。

情感态度价值观目标:1. 学生通过学习单片机时钟设计,培养对电子技术和编程的兴趣,激发创新意识。

2. 学生在团队协作中,学会分享、交流和合作,提高沟通能力。

3. 学生认识到科技对社会生活的影响,增强社会责任感和时代使命感。

课程性质:本课程为实践性较强的电子技术课程,结合理论教学和实验操作,旨在培养学生的动手能力、编程能力和创新能力。

学生特点:学生已具备一定的电子技术基础知识,对编程有一定了解,但对单片机应用尚处于起步阶段。

教学要求:教师需结合学生特点,注重理论与实践相结合,关注个体差异,引导学生主动探究,培养其解决问题的能力。

通过课程学习,使学生能够将所学知识应用于实际项目中。

二、教学内容本课程教学内容主要包括以下几部分:1. 52单片机基础知识:介绍52单片机的结构、工作原理、引脚功能等,结合教材相关章节,让学生对单片机有基本的认识。

2. 时钟电路原理:讲解时钟电路的组成,包括时钟晶振、分频器等,分析时钟信号的产生、传输和作用。

3. C语言编程:复习C语言基础知识,重点讲解与52单片机编程相关的内容,如寄存器操作、I/O口编程、中断处理等。

4. 时钟程序设计:详细讲解如何利用52单片机实现时钟功能,包括时钟显示、调整和时间计算等,结合教材实例,让学生动手实践。

5. 实验操作与调试:指导学生进行时钟电路的连接、程序下载和调试,培养学生动手能力和问题解决能力。

单片机电子时钟课程设计报告

单片机电子时钟课程设计报告

单片机电子时钟课程设计报告一、设计目的。

本课程设计旨在通过单片机技术的应用,设计并制作一个简单的电子时钟。

通过这一设计,学生将能够掌握单片机的基本原理和应用,培养学生的动手能力和创新意识,提高学生的实际操作能力。

二、设计原理。

本电子时钟采用单片机作为控制核心,通过晶振产生的时钟信号来实现时间的计时和显示。

利用数码管来显示小时和分钟,通过按键来调整时间。

同时,通过蜂鸣器发出报时信号,实现基本的闹钟功能。

三、设计方案。

1. 硬件设计。

(1)单片机选择,本设计选用常见的51单片机作为控制核心,具有成本低、易于编程的特点。

(2)时钟电路,采用晶振作为时钟信号源,通过单片机的定时器来实现时间的计时。

(3)显示模块,采用数码管来显示小时和分钟,通过数码管的扫描显示来实现时间的动态显示。

(4)按键输入,设计按键来调整时间,包括调整小时和分钟。

(5)报时功能,通过蜂鸣器来实现基本的报时功能,可以设置闹钟时间。

2. 软件设计。

(1)时钟控制,通过单片机的定时器来实现时间的计时和更新。

(2)显示控制,设计数码管的扫描显示程序,实现时间的动态显示。

(3)按键处理,设计按键扫描程序,实现对时间的调整。

(4)报时功能,设计蜂鸣器的报时程序,实现基本的闹钟功能。

四、设计实现。

1. 硬件实现。

根据上述设计方案,完成了电子时钟的硬件连接和布线,保证各个模块之间的正常通讯和工作。

2. 软件实现。

编写了单片机的程序,实现了时钟的计时、显示和控制功能,保证了电子时钟的正常运行。

五、实验结果。

经过调试,电子时钟能够准确显示当前的时间,并能够通过按键调整时间和设置闹钟功能,报时功能也能够正常工作。

六、总结与展望。

通过本课程设计,学生掌握了单片机的基本原理和应用,培养了动手能力和创新意识。

在今后的学习和工作中,学生将能够更好地应用单片机技术,设计和制作更加复杂的电子产品。

同时,也为学生今后的科研和创新工作奠定了良好的基础。

51单片机课程设计电子时钟

51单片机课程设计电子时钟

课程设计课程名称:单片机课程设计题目名称:单片机电子时钟学院:电信学院专业:电子工程姓名:曾代科学号: 3201指导教师:杨加国2010年 11 月 7 日一、课程设计名称:51 单片机电子时钟二、设计方案:1、经过单片机内部的计数/ 准时器,采纳软件编程来实现时钟计数,一般称为软时钟,这类方法的硬件线路简单,系统的功能一般与软件设计有关,往常用在对时间精度要求不高的场合。

2、采纳时钟芯片,它的功能强盛,功能零件集成在芯片内部,拥有自动产生时钟等有关功能,硬件成真相对较高;软件编程简单,往常用在对时钟精度要求较高的场合。

三、设计内容:这里采纳应用宽泛的 AT89C52作为时钟控制芯片,利用单片机内部的准时 / 计数器 T0 实现软时钟的目的。

第一将T0 设定工作于准时方式,对机器周期计数形成基准时间( 50ms),而后用另一个准时 / 计数器 T1 对基准时间计数形成秒,妙策 60 次形成分,分计 60 形成小时,小时计到 12。

最后经过数码管把它们的内容在相应的地点显示出来,达到时、分、秒计时的功能。

别的还要实现对时间的调整功能,89C52 的、、外接三个独立按键,当按下按键时,系统进入调时间的状态或启动时间显示的功能;当按下按键时,对显示的数码管进行加一的功能;当按下按键时,对显示的数码管进行减一的功能,达到调整时间的目的。

四、系统软件程序设计1.主程序先对显示单元和准时器 / 计数器初始化,而后重复调用数码管显示模块和按键办理模块,当有按键按下时,则转入相应的功能程序。

2、数码管显示模块本实验有 8 个数码管,从右到左为妙、横线、分、横线、时。

在本系统中数码管显示采纳软件译码动向显示。

在储存器中第一成立一张显示信息的字段码表,显示时,先从显示缓冲区中拿出显示的信息,而后经过查表程序在字段表中查出所显示的信息的断码,从P0 端口输出,同时在 P2 端口进行数码管显示。

3、准时器 / 计数器 T0 中止服务程序T0用于计时,选中方式一,重复准时,准不时间设为50ms,准不时间到则中止,在中止服务程序顶用一个计数器对 50ms 计数,计20 次则对秒单元加一。

单片机电子时钟课程设计

单片机电子时钟课程设计

单片机电子时钟课程设计一、课程目标知识目标:1. 让学生理解单片机的基本原理,掌握电子时钟的工作原理;2. 使学生掌握单片机编程技术,能独立完成电子时钟的程序编写;3. 帮助学生了解电子时钟的设计过程,掌握相关电子元器件的使用。

技能目标:1. 培养学生运用单片机解决实际问题的能力,提高编程和调试技巧;2. 培养学生动手实践能力,能独立完成电子时钟的组装和调试;3. 提高学生的团队协作和沟通能力,能在小组项目中发挥积极作用。

情感态度价值观目标:1. 激发学生对电子技术和单片机编程的兴趣,培养创新意识;2. 培养学生严谨、细致的学习态度,养成良好的学习习惯;3. 增强学生的自信心和责任感,使其在项目实践中勇于面对挑战。

课程性质:本课程为实践性较强的课程,旨在通过项目实践,让学生掌握单片机编程和应用,培养实际操作能力。

学生特点:学生具备一定的单片机基础知识和编程技能,对电子技术有一定了解。

教学要求:注重理论与实践相结合,强调动手实践,鼓励学生创新和团队协作。

将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. 单片机基础:回顾单片机的基本原理、结构、工作方式,重点掌握时钟电路、I/O 口编程、中断系统等基础知识。

教材章节:《单片机原理与应用》第1-3章2. 电子时钟原理:学习电子时钟的基本构成、工作原理,分析时钟芯片DS1302的功能和应用。

教材章节:《单片机原理与应用》第6章3. 程序设计:学习C语言编程,编写电子时钟程序,掌握定时器、中断处理、数据存储等编程方法。

教材章节:《单片机C语言程序设计》第4-6章4. 硬件设计:学习电子时钟硬件电路设计,包括单片机、时钟芯片、显示模块、按键模块等。

教材章节:《电子电路设计》第2-3章5. 调试与优化:学习电子时钟系统的调试方法,分析常见问题,进行程序和硬件优化。

教材章节:《单片机原理与应用》第8章6. 项目实践:分组进行电子时钟项目实践,从硬件组装、编程调试到产品展示,全面锻炼学生的动手能力。

51单片机电子时钟课程设计实验报告

51单片机电子时钟课程设计实验报告

《单片机原理与应用》课程设计总结报告题目:单片机电子时钟(带秒表)的设计设计人员:张保江江润洲学号: 13 29班级:自动化1211指导老师:阮海容目录1.题目与主要功能要求 (2)2.整体设计框图及整机概述 (3)3.各硬件单元电路的设计、参数分析及原理说明 (3)4.软件流程图和流程说明 (4)5.总结设计及调试的体会 (10)附录1.图一:系统电路原理图 (11)2.图二:系统电路 PCB (12)3.表一:元器件清单 (13)4.时钟程序源码 (14)题目:单片机电子时钟的设计与实现课程设计的目的和意义课程设计的目的与意义在于让我们将理论与实践相结合。

培养我们综合运用电子课程中的理论知识解决实际性问题的能力。

让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。

课程设计的基本任务利用89C51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入等知识,设计一款单片机和简单外设控制的电子时钟。

主要功能要求最基本要求1)使用MCS-51单片机设计一个时钟。

要求具有6位LED显示、3个按键输入。

2)完成硬件实物制作或使用Pruteus仿真(注意位驱动应能提供足够的电流)。

3)6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制。

开始计时时为000000,到235959后又变成000000。

4)使用3个键分别作为小时、分、秒的调校键。

每按一次键,对应的显示值便加1。

分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。

在调校时均不向上一单位进位 (例如分加到59后变为00,但小时不发生改变)。

5) 软件设计必须使用MCS-51片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。

单片机电子时钟课程设计报告

单片机电子时钟课程设计报告

单片机电子时钟课程设计报告一、引言。

随着科技的不断发展,电子产品已经渗透到我们生活的方方面面。

其中,电子时钟作为一种常见的电子产品,被广泛应用于各个领域。

本课程设计旨在通过单片机技术,设计并实现一个功能强大、稳定可靠的电子时钟,以满足人们对精准时间的需求。

二、设计方案。

1. 硬件设计。

本课程设计选用了51单片机作为核心处理器,配合数码管显示模块、时钟芯片等外围器件,构成了电子时钟的硬件平台。

通过对硬件电路的设计和布线,实现了对时间的精准显示和控制。

2. 软件设计。

在软件设计方面,本课程设计采用了C语言作为编程语言,利用单片机的定时器、中断等功能模块,编写了精确的时钟控制程序。

通过对时钟的分、秒、小时的精准控制,实现了电子时钟的正常运行和显示。

三、功能实现。

1. 时间显示。

经过精心设计的软件程序,实现了对时间的精准显示。

时钟的显示界面清晰明了,数字显示稳定可靠,能够满足人们对时间的基本需求。

2. 时间调整。

通过设置按键,可以对时钟进行时间的调整。

用户可以根据实际需求,随时对时钟的时间进行调整,保证时钟的准确性。

3. 闹铃功能。

本课程设计还实现了闹铃功能,用户可以通过设置闹铃时间,让时钟在设定的时间点发出提示音,提醒用户重要事件的发生。

四、实验结果。

经过实际测试,本课程设计的电子时钟能够稳定可靠地运行,显示精准,功能完善。

时钟的硬件和软件设计均达到了预期的要求,符合设计的初衷和要求。

五、总结与展望。

本课程设计通过对单片机电子时钟的硬件和软件设计,成功实现了一个功能强大、稳定可靠的电子时钟。

但是,仍有一些功能可以进一步完善和优化,比如增加温湿度显示功能、实现无线时间校准等。

未来,我们将继续努力,不断完善电子时钟的功能,为人们的生活带来更多的便利。

六、参考文献。

[1] 《单片机原理与接口技术》,XXX,XXX出版社,2008。

[2] 《C语言程序设计》,XXX,XXX出版社,2010。

七、致谢。

感谢所有为本课程设计提供帮助和支持的老师和同学们,在他们的帮助下,本课程设计得以顺利完成。

51单片机电子时钟课程设计报告

51单片机电子时钟课程设计报告

第一部分设计任务和要求1.1单片机课程设计内容 (2)1.2单片机课程设计要求 (2)1.3系统运行流程 (2)第二部分设计方案2.1总体设计方案说明 (2)2.2系统方框图 (3)2.3系统流程图 (3)第三部分主要器材及基本简介3.1主要器材 (4)3.2主要器材简介 (4)第四部分系统硬件设计4.1最小系统 (6)4.2LCD显示电路 (6)4.3键盘输入电路 (7)4.4蜂鸣器和LED灯电路 (7)第五部分仿真电路图与仿真结果 (8)第六部分课程设计总结 (8)第七部分参考文献 (9)附录A 实物图附录B 系统源程序第一部分设计任务和要求1.1单片机课程设计内容利用STC89C51单片机和LCD1602电子显示屏实现电子时钟,可由按键进行调时和12/24小时切换。

1.2单片机课程设计要求1.能实现年、月、日、星期、时、分、秒的显示;2.能实现调时功能;3.能实现12/24小时制切换;4.能实现8 : 00—22 : 00整点报时功能。

1.3系统运行流程程序首先进行初始化,在主程序的循环程序中首先调用数据处理程序,然后调用显示程序,在判断是否有按键按下。

若有按键按下则转到相应的功能程序执行,没有按键按下则调用时间程序。

若没到则循环执行。

计时中断服务程序完成秒的计时及向分钟、小时的进位和星期、年、月、日的进位。

调时闪烁中断服务程序用于被调单元的闪烁显示。

调时程序用于调整分钟、小时、星期、日、月、年,主要由主函数组成通过对相关子程序的调用,如图所示。

实现了对时间的设置和修改、LCD显示数值等主要功能。

相关的调整是靠对功能键的判断来实现的。

第二部分设计方案2.1总体设计方案说明1.程序设计及调试根据单片机课程设计内容和要求,完成Protues仿真电路的设计和用Keil软件编写程序,并进行仿真模拟调试。

2.硬件焊接及调试根据仿真电路图完成电路板的焊接,并进行软、硬件的调试,只到达到预期目的。

3.后期处理对设计过程进行总结,完成设计报告。

单片机数字电子钟课程设计

单片机数字电子钟课程设计

单片机数字电子钟课程设计一、课程目标知识目标:1. 学生能理解单片机的基础知识,掌握数字电子时钟的原理和工作流程。

2. 学生能描述单片机编程的基本步骤,特别是与计时相关的指令和程序设计方法。

3. 学生能够解释数字电子钟各部分功能,如时钟电路、显示电路等,并了解它们之间的协作关系。

技能目标:1. 学生能够运用所学的单片机知识,设计并实现一个简单的数字电子钟程序。

2. 学生通过动手实践,提高焊接和电路排错的能力,能够组装和调试电子钟电路。

3. 学生能够利用仿真软件对电子钟程序进行测试和优化,培养问题解决和程序调试技巧。

情感态度价值观目标:1. 培养学生对电子制作的兴趣,激发创新意识和探索精神。

2. 通过团队协作完成项目,增强学生的合作意识和沟通能力。

3. 学生在课程学习过程中,能够体验到知识与实践相结合的成就感,培养科学、严谨的学习态度。

分析课程性质、学生特点和教学要求:本课程设计针对高中年级学生,假设他们已具备基础物理知识和一定的编程能力。

课程性质为实践性强的综合设计课,旨在通过单片机数字电子钟的制作,巩固学生的电子技术知识与技能。

课程目标设定时考虑了学生的年龄特点和认知水平,注重理论与实践的结合,鼓励学生动手操作和探究学习,旨在提高学生的综合技术应用能力。

通过具体的学习成果分解,本课程旨在让学生不仅学习到知识,而且能够将知识应用到实际问题的解决中,充分体现课程的实用性和创新性。

二、教学内容1. 单片机基础知识回顾:重点复习单片机的内部结构、工作原理及编程基础,关联教材第二章内容。

2. 数字电子时钟原理:讲解时钟电路、计数器、振荡器等组成部分,对应教材第四章第二节。

- 时钟电路的构成与工作原理- 计数器的作用及其编程方法- 振荡器的种类及其在电子时钟中的应用3. 单片机编程设计:结合教材第三章,介绍编写电子时钟程序所需的指令和编程技巧。

- 基本计时指令的使用- 程序流程图的绘制- 中断处理在电子时钟中的应用4. 电路设计与制作:依据教材第五章,指导学生进行电子时钟的电路设计和组装。

51单片机电子时钟课程设计实验报告

51单片机电子时钟课程设计实验报告

《单片机原理与应用》课程设计总结报告题目:单片机电子时钟(带秒表)的设计目录1.题目与主要功能要求 (2)2.整体设计框图及整机概述 (3)3.各硬件单元电路的设计、参数分析及原理说明 (3)4.软件流程图和流程说明 (4)5.总结设计及调试的体会 (10)附录1.图一:系统电路原理图 (11)2.图二:系统电路PCB (12)3.表一:元器件清单 (13)4.时钟程序源码 (14)题目:单片机电子时钟的设计与实现课程设计的目的和意义课程设计的目的与意义在于让我们将理论与实践相结合。

培养我们综合运用电子课程中的理论知识解决实际性问题的能力。

让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。

课程设计的基本任务利用89C51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入等知识,设计一款单片机和简单外设控制的电子时钟。

主要功能要求最基本要求1)使用MCS-51单片机设计一个时钟。

要求具有6位LED显示、3个按键输入。

2)完成硬件实物制作或使用Pruteus仿真(注意位驱动应能提供足够的电流)。

3) 6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制。

开始计时时为000000,到235959后又变成000000。

4)使用3个键分别作为小时、分、秒的调校键。

每按一次键,对应的显示值便加1。

分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。

在调校时均不向上一单位进位(例如分加到59后变为00,但小时不发生改变)。

5)软件设计必须使用MCS-51片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。

6)设计八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。

单片机电子钟课程设计

单片机电子钟课程设计

单片机电子钟课程设计一、课程目标知识目标:1. 学生能够理解单片机的基本原理和编程方法。

2. 学生能够掌握电子时钟的构成和工作原理。

3. 学生能够运用所学知识,设计并实现一个具有基本功能的单片机电子钟。

技能目标:1. 学生能够运用编程软件进行单片机程序编写和调试。

2. 学生能够使用电子元件搭建电路,并进行基本的电路测试和故障排除。

3. 学生能够通过团队协作,完成电子钟的设计、制作和优化。

情感态度价值观目标:1. 培养学生对电子技术的兴趣,激发创新意识和探索精神。

2. 培养学生良好的团队合作精神和沟通能力。

3. 培养学生严谨的科学态度,注重实践操作,提高问题解决能力。

课程性质:本课程为实践性较强的课程,结合理论教学和动手操作,培养学生实际动手能力和创新思维。

学生特点:学生为初中生,具备一定的物理和数学基础,对电子技术有一定的好奇心和求知欲。

教学要求:教师需结合学生特点,采用启发式教学,引导学生主动探究,注重理论与实践相结合,提高学生的实际操作能力。

同时,关注学生的个体差异,给予个性化指导,确保课程目标的达成。

通过课程学习,使学生能够将所学知识应用于实际项目中,培养其综合素质。

二、教学内容1. 单片机基础知识:介绍单片机的组成、工作原理和编程语言(C语言),对应教材第二章内容。

2. 电子时钟原理:讲解电子时钟的基本构成、计时原理和显示技术,对应教材第四章内容。

3. 硬件电路设计:学习并设计单片机电子钟的电路图,选择合适的电子元件,对应教材第三章内容。

4. 程序设计与调试:编写单片机程序,实现电子钟的基本功能,如时、分、秒显示,闹钟等,对应教材第五章内容。

5. 电路搭建与测试:根据设计电路图,搭建实体电路,进行功能测试和故障排查,对应教材第六章内容。

6. 项目制作与优化:以小组形式完成电子钟的制作,对产品进行优化和改进,提高性能和稳定性。

教学进度安排:第一周:单片机基础知识学习,熟悉编程环境。

第二周:电子时钟原理学习,设计电路图。

单片机课程设计电子钟(电子时钟)

单片机课程设计电子钟(电子时钟)
2、基本要求:
LED数码管显示器显示当前时间;四个按键的功能:A键用于电子钟启动/调整;B键用于调时,范围0-23,0为24点,每按一次时加1;C键用于调分,范围0-59,0 为60分,每按一次分加1;D键用于调秒, 范围0-59,0为60秒,每按一次秒加1;
3、设计方案:
(1)、基于单片机并行口的设计
见图4-4所示
4.1.5显示子程序流程框图
见图4-5所示
4.1.6加一子程序流程框图
见图4-6所示
4.2电子钟总体程序清单
ORG0000H
AJMPMAIN
ORG000BH
LJMPINTT0
ORG0030H
MAIN: MOVSP,#60H;确立堆栈区
MOVPSW,#00H;
MOVR0,#20H;RAM区首地址
1.2总体方案介绍
1.2.1计时方案
利用AT89S52单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时。该方案节省硬件成本,且能使读者在定时/计数器的使用、中断及程序设计方面得到锻炼与提高,对单片机的指令系统能有更深入的了解,从而对学好单片机技术这门课程起到一定的作用。
1.2.2键盘/显示方案
此电子钟严格按照要求设计,最终达到预期的效果,能够正确显示“P”点以及时分秒的计时,算是一次比较成功的设计了。
关键词:电子钟,单片机,汇编
第1章电子钟功能及总体方案的介绍
1.1电子钟功能介绍
1.1.1基本功能要求
可调整运行的电子钟具有三种工作状态:“P.”状态、运行状态、调整状态。
(1)、“P.”状态,依靠上电或按复位键进入,在此状态下,按B、C、D键均无效,按A键有效,进入运行状态;
TIME: SETBEA

51电子钟课程设计

51电子钟课程设计

51电子钟课程设计一、课程目标知识目标:1. 让学生理解51单片机的原理及其在电子钟设计中的应用。

2. 使学生掌握电子钟的基本组成部分,包括时钟芯片、显示模块、按键等。

3. 帮助学生掌握定时器、中断等单片机技术的使用。

技能目标:1. 培养学生运用51单片机进行电子钟设计的能力,学会编写程序、调试电路。

2. 提高学生动手实践能力,能独立完成电子钟的组装和调试。

3. 培养学生分析问题和解决问题的能力,能够对电子钟进行故障排查和优化。

情感态度价值观目标:1. 培养学生对电子制作的兴趣,激发创新意识。

2. 培养学生团队合作精神,学会在团队中发挥自己的优势,共同完成任务。

3. 培养学生严谨的学习态度,养成良好的学习习惯。

分析课程性质、学生特点和教学要求,本课程目标旨在使学生在掌握51单片机及其周边器件的基础上,运用所学知识完成一个具有实际应用价值的电子钟项目。

通过课程学习,使学生将理论知识与实际操作相结合,提高综合运用知识的能力,培养创新精神和实践能力。

同时,注重培养学生的情感态度价值观,使他们在学习过程中形成良好的学习习惯和团队协作精神。

二、教学内容1. 理论知识学习:- 51单片机基本原理及结构- 定时器、中断等技术的应用- 时钟芯片的原理与使用- 显示模块的工作原理及其与单片机的连接方法- 按键输入原理及电路设计2. 实践操作环节:- 电子钟电路图的绘制- 51单片机程序的编写与调试- 电子钟的组装与调试- 故障分析与优化3. 教学内容安排与进度:- 第一周:51单片机基本原理及结构学习,熟悉开发环境- 第二周:定时器、中断技术学习,时钟芯片原理介绍- 第三周:显示模块及按键输入学习,设计初步电路图- 第四周:编写程序,进行电子钟的组装与调试- 第五周:对电子钟进行故障分析与优化,撰写实验报告教材章节关联:本教学内容与教材中以下章节相关:- 第四章:51单片机原理与结构- 第五章:定时器与中断技术- 第六章:显示与键盘接口技术- 第七章:单片机应用实例三、教学方法为了提高教学效果,激发学生的学习兴趣和主动性,本课程将采用以下多样化的教学方法:1. 讲授法:教师通过生动的语言、丰富的案例,为学生讲解51单片机的基础知识、电子钟的设计原理等理论内容。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机应用课程设计电子时钟专业:电气工程及其自动化班级:姓名:指导教师:电子时钟设计报告一、课题设计目的数字电子钟具有走时准确,一钟多用等特点,在生活中已经得到广泛的应用。

另外数字钟还具备秒表和闹钟的功能,且闹钟铃声可自选,使一款电子钟具备了多媒体的色彩。

单片机STC89C51在Proteus软件中实现数字时钟的定时、时间调整、闹正设置等功能。

具有体积小、功能强可靠性高、价格低廉等一系列优点,不仅已成为工业测控领域普遍采用的智能化控制工具,而且已渗入到人们工作和和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。

时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。

在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间。

二、实验目的及意义:1. 理解学习LED数码管显示、以及硬件各引脚的含义2. 学习C51语言的应用。

3. 学习Proteus、KEIL软件的应用。

4. 培养解决实际问题的能力。

三、设计任务及要求(系统的主要功能)1.具有时、分、秒计数显示功能,以24小时循环2.LED数码管显示时、分、秒的个位和十位3.可以在任意时刻校准时间4.能够完成时间的显示、定时闹钟、复位等功能四、工作原理及设计流程图主程序是先开始,然后启动定时器,定时器启动后在进行按键检测,检测完后,就可以显示时间。

按键处理是先检测秒按键是否按下,秒按键如果按下,秒就加1;如果没有按下,就检测分按键是否按下,分按键如果按下,分就加1;如果没有按下,就检测时按键是否按下,时按键如果按下,时就加1;如果没有按下,就把时间显示出来。

NYNYNY时加1显示时间结束开始秒按键按下?秒加1分按键按下?分加1时按键按下?定时器中断时是先检测1秒是否到,1秒如果到,秒单元就加1;如果没到,就检测1分钟是否到,1分钟如果到,分单元就加1;如果没到,就检测1小时是否到,1小时如果到,时单元就加1,如果没到,就显示时间。

开始N一秒时间到?Y秒单元加1N60秒时间到?Y秒单元清零,分单元加1N60分钟到?Y分单元清零,时单元加1N24小时到?Y时单元清零时间显示中断返回五、硬件原理图六、程序源代码/***************************************硬件连接:数码管:段码为:P1位码分别为:P2.5~P2.0 蜂鸣器:P2.7功能键k1:P3.4加建k2:P3.5减键k3:P3.6***************************************/#include<reg51.h> //51头文件sbit smg1=P2^5;//位码1声明sbit smg2=P2^4;//位码2声明sbit smg3=P2^3;//位码3声明sbit smg4=P2^2;//位码4声明sbit smg5=P2^1;//位码5声明sbit smg6=P2^0;//位码6声明sbit k1=P3^4; //按键k1的声明sbit k2=P3^5; //按键k2的声明sbit k3=P3^6; //按键k3的声明sbit beep=P2^7; //蜂鸣器声明/*定义一些变量*/char d=0,e=0,a=0,b=0,n=0,shi=12,fen=0,miao=0,b_shi=6,b_fen=30,b_miao=0;char code table[]={//共阳级数码管码表0-90xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};void init();//初始化函数声明void delay(int z); //带参数延时函数声明void display(char s,f,m);//带参数显示函数声明void key();//按键控制函数声明void main()//主函数{init(); //调用初始化函数while(1)//主函数内大循环{if(d==0) key(); //如果d=0则扫描按键函数if(shi==b_shi&&fen==b_fen)//如果闹铃时间到就蜂鸣器响{if(d==1&&!(k1&k2&k3))// 任意按键按下关闭铃声{e=1; //关闭闹铃标志位ed=0; //屏蔽按键函数标志位d}if(e==0)//关闭铃声{d=1; //屏蔽按键函数beep=0;//蜂鸣器鸣叫delay(10); //延时一会beep=1;//关闭蜂鸣器}}if(n==0||n==1||n==2)//如果处在功能键的0、1、2三个中的某个状态display(shi,fen,miao);//调用显示时钟if(n==3||n==4)//如果处在功能键的3、4中的某个状态display(b_shi,b_fen,b_miao);//调用显示闹铃时间}}void init() //初始化函数{IE=0X8a;//1000 1010TMOD=0X01; //0001 0001选择定时器0的工作方式1 选择定时器1的工作方式1TH0=(65536-50000)/256;//初值15536TL0=(65536-50000)%256;TR0=1; //开启定时器0TH1=(65536-50000)/256;//初值15536TL1=(65536-50000)%256;TR1=1; //开启定时器1}void timer0() interrupt 1 //定时器0中断服务程序{TH0=(65536-50000)/256;//进入中断重新赋初值15536 TL0=(65536-50000)%256;//计数5万次(50毫秒)a++;//每进一次中断a加一if(a==20) //如果进入20次中断,正好一秒{a=0; //a到20 就清零miao++;//a每计20次,秒加一if(miao==60){ //秒到达60秒后清零,分加一miao=0;fen++;e=0;//闹铃标志位清零if(fen==60){//分到达60后清零,时加一fen=0;shi++;if(shi==24){ //时到达24后清零shi=0;}}}}}void timer1() interrupt 3 //定时器1中断服务程序,用来设置光标闪烁频率{TH1=(65536-50000)/256;//进入中断重新赋初值15536TL1=(65536-50000)%256;//计数5万次(50毫秒)b++; //标志位b,用来确定光标闪烁频率if(b==20)b=0;//b=20 时被清零}void display(char s,f,m)//带参数的显示函数,参数为s f m{smg1=0; //打开数码管1位选P1=table[s/10];//给数码管1赋值,值为小时的十位delay(1); //延时smg1=1; //关闭数码管1位选P1=0Xff; //关闭数码管1段选if(b<10&&(n==1||n==3)){//在1,3状态下,b<10时,关闭数码管2smg2=1;P1=0Xff;}else //其他状态下,数码管2正常显示{smg2=0;//打开数码管2位选P1=table[s%10];//给数码管2赋值,值为小时的个位delay(1);//延时smg2=1; //关闭数码管2位选P1=0Xff; //关闭数码管2段选}smg3=0; //打开数码管3位选P1=table[f/10]; //给数码管3赋值,值为分钟的十位delay(1); //延时smg3=1; //关闭数码管3位选P1=0Xff;//关闭数码管3段选if(b<10&&(n==2||n==4)){ //在2,4状态下,b<10时,关闭数码管4smg4=1;P1=0Xff;}else{ //其他状态下,数码管4正常显示smg4=0;//打开数码管4位选P1=table[f%10];//给数码管4赋值,值为分钟的个位delay(1); //延时smg4=1; //关闭数码管4位选P1=0Xff; //关闭数码管4段选}smg5=0;//打开数码管5位选P1=table[m/10];//给数码管5赋值,值为秒钟的十位delay(1); //延时smg5=1; //关闭数码管5位选P1=0Xff; //关闭数码管5段选smg6=0; //打开数码管6位选P1=table[m%10]; //给数码管6赋值,值为秒钟的个位delay(1);//延时smg6=1; //关闭数码管6位选P1=0Xff;//关闭数码管6段选}void delay(int z)//带参数延时函数,参数Z{ //每次大约延时1毫秒int x,y;for(x=z;x>0;x--) //循环110*z次空函数for(y=110;y>0;y--);}void key() //按键控制函数{if(k1==0){ //功能键k1被按下delay(5);//消抖延时if(k1==0){n++;//n记录功能键状态if(n>4) n=0; //n清零while(k1==0);//等待松手}}if(n==0)//状态0,{TR0=1;//定时器打开状态}if(n==1)//状态1{TR0=0;//关闭定时器0if(k2==0){ //k2被按下delay(5);//消抖延时if(k2==0){shi++;//小时加一if(shi==24)shi=0;//达到24清零while(k2==0);//等待松手}}if(k3==0){ //k3被按下delay(5); //消抖延时if(k3==0){shi--; //小时减一if(shi<0)shi=23;//小于0,重新复制while(k3==0);//等待松手}}}if(n==2)//状态2{TR0=0; //关闭定时器0if(k2==0){ //k2被按下delay(5);//消抖延时if(k2==0){fen++;//分加一if(fen==60)fen=0;//分到达60 分清零while(k2==0);//等待松手}}if(k3==0){ //k3被按下delay(5);//消抖延时if(k3==0){fen--;//分减一if(fen<0)fen=59;//分小于0,分重新赋值59while(k3==0);//等待松手}}}if(n==3)//状态三{TR0=1;//开启定时器if(k2==0){ //k2被按下delay(5);//消抖延时if(k2==0){b_shi++;//闹铃时间加一if(b_shi==24)b_shi=0;//闹铃时间清零while(k2==0);//等待松手}}if(k3==0){ //k3被按下delay(5);//消抖延时if(k3==0){b_shi--;//闹铃时间减一if(b_shi<0)b_shi=23;//闹铃时间while(k3==0);//等待松手}}}if(n==4)//状态四{TR0=1;//关闭定时器0if(k2==0){ //k2被按下delay(5);//消抖延时if(k2==0){b_fen++;//闹铃时间分加一if(b_fen==60)b_fen=0;//闹铃分到达60 清零while(k2==0);//等待松手}}if(k3==0){ //k3被按下delay(5);//消抖延时if(k3==0){b_fen--;//闹铃时间分减一if(b_fen<0)b_fen=59;//闹铃时间分重新赋值while(k3==0);//等待松手}}}}七、电子钟系统PROTUES仿真用PROTUES软件,根据数字电子钟的原理图,画出仿真图,得到的图如下所示。

相关文档
最新文档