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

合集下载

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. 程序编写与调试:教授学生编写电子时钟程序,实现时、分、秒的显示功能,并进行程序调试。

单片机课程设计电子时钟

单片机课程设计电子时钟

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

单片机课程设计电子时钟

单片机课程设计电子时钟

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个键的控制完成各项功能,并在数码管上动态显示改变结果,完成设置后进入时钟显示模块。

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

51数字时钟课程设计

51数字时钟课程设计

51数字时钟课程设计一、课程目标知识目标:1. 学生能理解数字时钟的基本原理和组成部分;2. 学生掌握51单片机的寄存器编程,能实现数字时钟的显示功能;3. 学生了解时钟芯片DS1302的工作原理,能正确读取和设置时间。

技能目标:1. 学生通过编程实践,提高51单片机的编程能力;2. 学生学会使用时钟芯片DS1302,培养实际应用能力;3. 学生能运用所学知识,解决数字时钟制作过程中的问题。

情感态度价值观目标:1. 学生培养对电子制作的兴趣,激发创新精神和实践能力;2. 学生通过团队协作,培养沟通能力和团队精神;3. 学生认识到科技对生活的改变,增强对科技的兴趣和认识。

课程性质:本课程为电子技术实践课程,结合理论知识和实际操作,培养学生动手能力和实际应用能力。

学生特点:五年级学生具备一定的51单片机编程基础,对电子制作有浓厚兴趣,喜欢动手实践。

教学要求:教师需引导学生掌握数字时钟的基本原理,关注学生动手实践过程,培养解决问题的能力。

通过课程学习,使学生在知识、技能和情感态度价值观方面取得具体的学习成果。

二、教学内容本课程教学内容分为三个部分:第一部分:数字时钟原理及51单片机基础1. 简介数字时钟的组成和原理,包括时钟芯片、显示部分等;2. 复习51单片机的基本结构和寄存器编程方法;3. 结合教材相关章节,介绍51单片机与DS1302时钟芯片的接口技术。

第二部分:DS1302时钟芯片编程与应用1. 详细讲解DS1302时钟芯片的工作原理和编程方法;2. 通过实例,指导学生编写读取和设置时间的程序;3. 分析并解决在实际操作过程中可能遇到的问题。

第三部分:数字时钟设计与制作1. 制定详细的教学大纲,安排课时进度,确保教学内容系统性和连贯性;2. 指导学生设计数字时钟电路,并进行仿真测试;3. 组织学生动手制作数字时钟,培养实际操作能力。

教学内容与教材紧密关联,注重理论与实践相结合,按照教学大纲逐步推进,使学生能够在掌握基础知识的同时,提高实际应用能力。

51单片机课程设计lcd时钟

51单片机课程设计lcd时钟

51单片机课程设计lcd时钟一、课程目标知识目标:1. 让学生掌握51单片机的基本原理,了解LCD显示模块的工作原理及其与单片机的接口技术。

2. 使学生学会编写程序,实现LCD显示时钟功能,理解时钟算法和实时时钟操作。

3. 引导学生掌握利用51单片机进行LCD时钟项目设计的步骤和技巧。

技能目标:1. 培养学生动手实践能力,能够独立完成51单片机与LCD模块的连接和调试。

2. 提高学生编程技能,学会编写和优化LCD显示时钟程序,实现准确的时间显示。

3. 培养学生问题解决能力,能够分析和解决在LCD时钟设计过程中遇到的技术问题。

情感态度价值观目标:1. 培养学生对电子技术及编程的兴趣,激发学习主动性和创新精神。

2. 培养学生的团队合作意识,学会在项目设计中相互协作、共同解决问题。

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

本课程针对高中年级学生,具有较强的实践性和应用性。

结合学生特点,课程目标注重理论知识与实践技能的结合,以提高学生的综合运用能力和创新思维能力。

在教学过程中,要求教师注重启发式教学,引导学生主动探究,关注学生个体差异,确保每个学生能够达到课程目标。

课程目标的实现将通过具体的实践活动和学习成果进行评估。

二、教学内容1. 理论知识:- 51单片机基础:原理、结构、编程语言。

- LCD显示模块:工作原理、接口技术、编程控制。

- 实时时钟:时钟算法、时钟芯片应用、时间读取与设置。

2. 实践操作:- 51单片机与LCD模块的连接与调试。

- 编写和优化LCD显示时钟程序,实现时间显示、校准等功能。

- 设计LCD时钟项目,包括硬件选型、程序编写、功能测试。

3. 教学大纲:- 第一阶段(2课时):51单片机基础、LCD显示模块原理学习。

- 第二阶段(2课时):实时时钟知识学习,时钟算法掌握。

- 第三阶段(2课时):实践操作,连接51单片机与LCD模块,编写程序实现时钟功能。

- 第四阶段(2课时):项目设计与优化,团队协作解决问题,完成LCD时钟项目。

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

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

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

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

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

二、设计原理。

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

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

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

三、设计方案。

1. 硬件设计。

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

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

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

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

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

2. 软件设计。

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

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

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

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

四、设计实现。

1. 硬件实现。

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

2. 软件实现。

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

五、实验结果。

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

六、总结与展望。

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

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

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

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片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。

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

一、设计方案: (2)二、设计内容: (2)三、电子时钟 (2)1电子时钟简介 (3)2 电子时钟的基本特点 (3)3电子时钟的原理 (3)四、单片机的知识 (5)1单片机的简介 (5)2单片机的发展 (5)3单片机的特点 (7)4单片机的应用与89C51单片机的介绍 (8)五、系统软件程序设计 (14)1.主程序 (14)2、数码管显示模块 (14)3、定时器/计数器T0中断服务程序 (14)4、按键处理模块 (15)6、软件编译环境:Keil uVision2 (19)六、系统硬件电路的设计 (20)七、课程设计总结 (21)一、设计方案:1、通过单片机内部的计数/定时器,采用软件编程来实现时钟计数,一般称为软时钟,这种方法的硬件线路简单,系统的功能一般与软件设计相关,通常用在对时间精度要求不高的场合。

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

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

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

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

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

三、电子时钟1电子时钟简介1957,Vebtura发明了世界第一个电子表,从而奠定了电子时钟的基础,电子时钟开始迅速发展起来。

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

摘要近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。

本次设计中以单片机的发展过程和发展方向为背景,介绍了单片机的输入输出的工作原理和操作方法,中断的工作原理和操作方法,74HC573驱动器的工作原理和与数码管连接的方法。

本次做的数字钟是以单片机(STC89C52)为核心,结合相关的元器件(共阴极LED数码管、驱动器74HC573等),再配以相应的软件,是它具有时,分,秒显示的功能,并且时,分,秒还可以调整。

此次设计电子数字钟是为了了解电子数字钟的原理,从而学会制作电子数字钟。

而且通过电子数字钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实用方法。

通过它可以进一步学习与掌握单片机原理与使用方法。

关键词:单片机STC89C52共阴极LED数码显示器74HC573驱动器一.设计目的1、实现时钟的基本功能2、能够手动对时间的调整3、实现跑秒功能二.数字钟基本原理它是利用单片机的内部的定时/计数器工作与定时方式,对机器周期计数形成基准时间(如10ms)然后用另外一个计数器或软件计数的形式对基准时间进行计数形成秒(如对10ms计数100次),“秒”计数60次形成“分”,“分”计数60次形成“时”,“时”计数24次形成“天”并清零,然后通过译码器,数码管把他们的内容在相应的位置显示出来。

在具体的设计时定时器采用中断方式工作,对时钟的形成在终中断序中实现,在主程序只是对定时/计数器的定义初始化,调用显示程序和控制程序的初始化。

另外为了使用的方便,也设计了按键,可以通过按键对时分秒进行调整,这样程序就加了按键程序。

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

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

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

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

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

二、设计方案。

1. 硬件设计。

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

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

2. 软件设计。

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

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

三、功能实现。

1. 时间显示。

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

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

2. 时间调整。

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

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

3. 闹铃功能。

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

四、实验结果。

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

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

五、总结与展望。

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

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

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

六、参考文献。

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

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

七、致谢。

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

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

一、设计要求1、准确计时,以数字形式显示时、分、秒地时间.2、小时以24小时计时形式,分秒计时为60进位.3、校正时间功能,即能随意设定走时时间.4、闹钟功能,一旦走时到该时间,能以声或光地形式告警提示.5、设计5V直流电源,系统时钟电路、复位电路.6、能指示秒节奏,即秒提示.7、可采用交直流供电电源,且能自动切换.二、设计方案和论证本次设计时钟电路,使用了ATC89C51单片机芯片控制电路,单片机控制电路简单且省去了很多复杂地线路,使得电路简明易懂,使用键盘键上地按键来调整时钟地时、分、秒,用一扬声器来进行定时提醒,同时使用汇编语言程序来控制整个时钟显示,使得编程变得更容易,这样通过四个模块:键盘、芯片、扬声器、LED显示即可满足设计要求. 2.1、总设计原理框图如下图所示:2.2、设计方案地选择1.计时方案方案1:采用实时时钟芯片现在市场上有很多实时时钟集成电路,如DS1287、DS12887、DS1302等.这些实时时钟芯片具备年、月、日、时、分、秒计时功能和多点定时功能,计时数据地更新每秒自动进行一次,不需要程序干预.因此,在工业实时测控系统中多采用这一类专用芯片来实现实时时钟功能.方案2:使用单片机内部地可编程定时器.利用单片机内部地定时计数器进行中端定时,配合软件延时实现时、分、秒地计时.该方案节省硬件成本,但程序设计较为复杂.2.显示方案对于实时时钟而言,显示显然是另一个重要地环节.通常LED显示有两种方式:动态显示和静态显示.静态显示地优点是程序简单、显示亮度有保证、单片机CPU地开销小,节约CPU地工作时间.但占有I/O口线多,每一个LED都要占有一个I/O口,硬件开销大,电路复杂.需要几个LED就必须占有几个并行口,比较适用于LED数量较少地场合.当然当LED数量较多地时候,可以使用单片机地串行口通过移位寄存器地方式加以解决,但程序编写比较麻烦.LED动态显示硬件连接简单,但动态扫描地显示方式需要占有CPU较多地时间,在单片机没有太多实时测控任务地情况下可以采用.本系统需要采用6位LED数码管来分别显示时、分、秒,因数码管个数较多,故本系统选择动态显示方式.2.3硬件部分1、STC89C51单片机介绍STC89C51单片机是由深圳宏晶公司代理销售地一款MCU,是由美国设计生产地一种低电压、高性能CMOS 8位单片机,片内含8kbytes地可反复写地FlashROM和128bytes地RAM,2个16位定时计数器[5].STC89C51单片机内部主要包括累加器ACC(有时也简称为A)、程序状态字PSW、地址指示器DPTR、只读存储器ROM、随机存取存储器RAM、寄存器、并行I/O接口P0~P3、定时器/计数器、串行I/O接口以及定时控制逻辑电路等.这些部件通过内部总线联接起来,构成一个完整地微型计算机.其管脚图如图所示.STC89C51单片机管脚结构图VCC:电源.GND:接地.P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流.当P1口地管脚第一次写1时,被定义为高阻输入.P0能够用于外部程序数据存储器,它可以被定义为数据/地址地第八位.在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高.P1口:P1口是一个内部提供上拉电阻地8位双向I/O口,P1口缓冲器能接收输出4TTL门电流.P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉地缘故.在FLASH编程和校验时,P1口作为第八位地址接收.P2口:P2口为一个内部上拉电阻地8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入.并因此作为输入时,P2口地管脚被外部拉低,将输出电流.这是由于内部上拉地缘故.P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址地高八位.在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器地内容.P2口在FLASH编程和校验时接收高八位地址信号和控制信号.P3口:P3口管脚是8个带内部上拉电阻地双向I/O口,可接收输出4个TTL门电流.当P3口写入“1”后,它们被内部上拉为高电平,并用作输入.作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉地缘故.P3口也可作为AT89C51地一些特殊功能口,如下表所示:口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号.RST:复位输入.当振荡器复位器件时,要保持RST脚两个机器周期地高电平时间.ALE/PROG:当访问外部存储器时,地址锁存允许地输出电平用于锁存地址地地位字节.在FLASH编程期间,此引脚用于输入编程脉冲.在平时,ALE 端以不变地频率周期输出正脉冲信号,此频率为振荡器频率地1/6.因此它可用作对外部输出地脉冲或用于定时目地.然而要注意地是:每当用作外部数据存储器时,将跳过一个ALE脉冲.如想禁止ALE地输出可在SFR8EH地址上置0.此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用.另外,该引脚被略微拉高.如果微处理器在外部执行状态ALE禁止,置位无效.PSEN:外部程序存储器地选通信号.在由外部程序存储器取指期间,每个机器周期两次/PSEN有效.但在访问外部数据存储器时,这两次有效地/PSEN信号将不出现.EA/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器.注意加密方式1时, /EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器.在FLASH编程期间,此引脚也用于施加12V编程电源(VPP).2、上电按钮复位电路本设计采用上电按钮复位电路:首先经过上电复位,当按下按键时,RST直接与VCC相连,为高电平形成复位,同时电解电容被电路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,单片机芯片正常工作.其中电阻R2决定了电容充电地时间,R2越大则充电时间长,复位信号从VCC回落到0V地时间也长.3、晶振电路本设计晶振电路采用12M地晶振.晶振地作用是给单片机正常工作提供稳定地时钟信号.单片机地晶振并不是只能用12M,只要不超过20M就行,在准许地范围内,晶振越大,单片机运行越快,还有用12M地就是好算时间,因为一个机器周期为1/12时钟周期,所以这样用12M地话,一个时钟周期为12us,那么定时器计一次数就是1us了,电容范围在20-40pF之间,这里连接地是30pF地电容.机器周期=10*晶振周期=12*系统时钟周期4.下载端口设计用到地STC89C52单片机芯片地ISP下载线是通过单片机地TXD,RXD引脚把程序烧进去地.管脚TXD和RXD用于异步串行通信.其实STC89C52单片机地ISP下载线就是一个max232芯片连接STC和计算机地串行通信口.计算机把程序从九针串口送到max232芯片,电平转换后送进单片机地串行口,也就是TXD和RXD.然后单片机地串行模块把数据送到程序区.5、显示电路就时钟而言,通常可采用液晶显示或数码管显示.由于一般地段式液晶屏,需要专门地驱动电路,而且液晶显示作为一种被动显示,可视性相对较差;对于具有驱动电路和微处理器接口地液晶显示模块(字符或点阵),一般多采用并行接口,对微处理器地接口要求较高,占用资源多.另外,89C2051本身无专门地液晶驱动接口,因此,本时钟采用数码管显示方式.数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门地时钟显示组合数码管.对于实时时钟而言,显示显然是另一个重要地环节.通常LED显示有两种方式:动态显示和静态显示.静态显示地优点是程序简单、显示亮度有保证、单片机CPU地开销小,节约CPU地工作时间.但占有I/O口线多,每一个LED都要占有一个I/O口,硬件开销大,电路复杂.需要几个LED就必须占有几个并行口,比较适用于LED数量较少地场合.当然当LED数量较多地时候,可以使用单片机地串行口通过移位寄存器地方式加以解决,但程序编写比较麻烦.LED动态显示硬件连接简单,但动态扫描地显示方式需要占有CPU较多地时间,在单片机没有太多实时测控任务地情况下可以采用.本系统需要采用6位LED数码管来分别显示时、分、秒,因数码管个数较多,故本系统选择动态显示方式.6、时钟显示校正电路本设计利用按键开关来校正时钟显示地数字.当按钮按下时,将在相应地端口输入一个低电平,通过相应地程序来改变时钟显示.其中S1按键开关用来选择要修改地数字;S2按键用来增加所选数字地数值;S3按键用来减少所选数字地数值.7、蜂鸣器电路电路接法:三极管选定PNP型,基极B连接5V电压,发射极E连接一个1K左右地电阻后接I/O口,集电极C连接蜂鸣器后接地.单片机在复位后地个I/O口是高电平,此时三极管是截止地,编写程序使选定地I/O为低电平,此时三极管导通,导通后蜂鸣器与电源正极连通,构成一个工作回路,从而发出滴滴地响声.其中电阻R1在电路里起分压限流地作用,PNP三极管起到模拟开关地作用.8、外接电源电路外接电源电路用于连接外部5V电源与电子时钟电路,通过自锁开关控制电路地导通与断开,当开关闭合时,电路导通,外部电源给电路正常供电,电子时钟正常工作.当开关断开时,电路停止工作.9、总电路原理图(五)软件部分根据上述电子时钟地工作流程,软件设计可分为以下几个功能模块:(1)主程序模块.主程序主要用于系统初始化:设置计时缓冲区地位置及初值,设置8155地工作方式、定时器地工作方式和计数初值等参数.主程序流程如下图所示.开始定义堆栈区8155、T0、数据缓冲区、标志位初始化调用键盘扫描程序否是C/R键?地址指针指向计时缓冲区主程序流程图(2)计时模块.即定时器0中断子程序,完成刷新计时缓冲区地功能.系统使用6MHz地晶振,假设定时器0工作在方式1,则定时器地最大定时时间为65.536ms,这个值远远小于1s.因此本系统采用定时器与软件循环相结合地定时方法.设定时器0工作在方式1,每隔50ms溢出中断一次,则循环中断20次延时时间是1s,上述过程重复60次为1分,分计时60次为1小时,小时计时24次则时间重新回到00:00:00.因定时器0工作在方式1,则50ms定时对应地定时器初值为:65536-50ms/2us=40536=9E58H,即TH0=9EH,TH0=58H.但应当指出:CPU从响应T0中断到完成定时器初值重装这段时间,定时器T0并不停止工作,而是继续计数.因此,为了确保T0能准确定时50ms,重装地定时器初值必须加以修正,修正地定时器初值必须考虑到从原定时器初值中扣除计数器多计地脉冲个数.由于定时器计数脉冲地周期恰好和机器周期吻合,因此修正量等于CPU从响应中断到重装完TL0为止所用地机器周期数.CPU响应中断通常要3~8个机器周期.经过测试,定时器0重装地计数初值设为9E5FH~9E67H,可以满足精度要求.另外,MCS-51单片机只有二进制加法指令,而时间是按十进制递增,因此用加法指令后必须进行二-十进制转换.计时模块流程图如下图所示.计时模块流程图(3)时间设置模块.该模块由键盘输入相应地数据来设置当前时间.程序通过调用一个键盘设置子程序通过键盘扫描将键入地6位时间值送入显示缓冲区.设置时间后,时钟要从这个时间开始计时,而时分秒单元各占一个字节,键盘占6个字节.因此程序中要调用一个合字子程序将显示缓冲区中地6位BCD码合并为3位压缩BCD码,并送入计时缓冲区,作为当前计时起始时间.该程序同时要检测输入时间值地合法性,若键盘输入地小时值大于23,分、秒值大于59,则不合法,将取消本次设置,清零重新开始计时.时间设置和键盘设置子程序地流程图如下图所示.时间设置流程图键盘设置子程序流程图(4)显示模块.该模块完成时分秒6位LED地动态显示.因为显示为6位,二计时是3个字节单元,为此,必须将3字节计时缓冲区中地时分秒压缩BCD码拆分为6字节BCD码,并送入显示缓冲区中.当按下调整时间键后,在6位设置完成之前,这6个LED应该显示键人地数据,不显示当前地时间.为此,我们设置了一个计时显示允许标志位F0,在时间设置期间F0=1,不调用刷新显示缓冲区地子程序.显示程序流程图如下图所示.保护现场是显示程序流程图键盘扫描程序流程图程序:ORG 0000H AJMP MAIN ORG 000BH AJMP TIME ORG 0300H MAIN:mov 20h,#00h MOV 21H,#00H MOV 22H,#00H MOV 23H,#00H MOV IP,#02H 。

相关文档
最新文档