单片机电子表课程设计
- 格式:doc
- 大小:706.50 KB
- 文档页数:23
单片机电子秒表课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解其内部结构和功能。
2. 使学生了解电子秒表的工作原理,掌握相关电子元器件的使用。
3. 帮助学生理解程序设计的基本思路,学会编写简单的单片机程序。
技能目标:1. 培养学生动手实践能力,能够独立完成单片机电子秒表的硬件搭建和程序编写。
2. 提高学生的问题解决能力,能够分析并解决在电子秒表制作过程中遇到的问题。
3. 培养学生的团队协作能力,学会在团队中分工合作,共同完成任务。
情感态度价值观目标:1. 激发学生对单片机及电子制作的兴趣,培养创新精神和动手制作的热情。
2. 培养学生严谨的科学态度,注重实验数据的准确性和实验过程的完整性。
3. 增强学生的自信心,让学生在完成任务的过程中体验成功,树立学习的信心。
课程性质:本课程为实践性较强的课程,旨在培养学生的动手实践能力和创新能力。
学生特点:学生处于初中或高中年级,对电子制作有一定的兴趣,但可能缺乏实际操作经验。
教学要求:结合学生特点和课程性质,教师应注重理论与实践相结合,充分调动学生的积极性,引导学生在实践中学习,提高学生的综合能力。
在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。
二、教学内容1. 理论部分:- 单片机原理与结构:介绍单片机的基本组成、工作原理和性能特点。
- 电子秒表原理:讲解电子秒表的工作原理,包括计时、停止和清零等功能。
- 程序设计基础:阐述C语言编程的基本语法,以实现电子秒表功能为例,进行编程指导。
2. 实践部分:- 硬件搭建:指导学生使用相应的电子元器件,搭建单片机电子秒表的硬件电路。
- 程序编写:教授学生编写实现电子秒表功能的程序,并进行调试与优化。
- 功能测试:让学生对自己的作品进行功能测试,确保秒表的准确性。
3. 教学大纲:- 第一阶段:介绍单片机原理与结构,让学生对单片机有基本的认识。
- 第二阶段:讲解电子秒表原理,使学生了解其工作过程。
1 绪论电子表是20世纪50年代才开始出现的新型计时器。
最早的一款电子表被称做“摆轮游丝电子表”,它诞生于1955年。
这种手表用电磁摆轮代替发条驱动,以摆轮游丝作为振荡器,微型电池为能源,通过电子线路驱动摆轮工作。
它的走时部分与机械手表完全相同,被称为第一代电子手表。
1960年,美国布洛瓦公司最早开始出售“音叉电子手表”。
这种手表以金属音叉作为振荡器,用电子线路输出脉冲电流,使机械音叉振动。
它比摆轮式电子手表结构简单,走时更精确,被称为第二代电子手表。
1969年,日本精工舍公司推出了世界上最早的石英电子表。
石英电子表的出现,立刻成为了钟表界主流产品,它走时精确,结构简单,轻松地将一、二代电子表,甚至机械表淘汰出局。
石英表又称“水晶振动式电子表”,因为它是利用水晶片的“发振现象”来计时的。
当水晶受到外部的加力电压,就会产生变形和伸缩反应;如果压缩水晶,便会使水晶两端产生电力。
这样的性质在很多结晶体上也可见到,称为“压电效果”。
石英表就是利用周期性持续“发振”的水晶,为我们带来准确的时间。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
从上世纪80年代,由当时的4位、8为单片机,发展到现在的32位300M的高速单片机。
1.1 单片机的介绍单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:一块芯片就成了一台计算机。
课程设计说明书课程:单片机应用技术课程设计题目:基于AT89C51单片机的电子表设计姓名:学号专业:机械设计制造及其自动化班级:2011级院系:工学院机械系指导老师:朱煜钰课程设计时间:2014.10.27至2014.11.10黄河科技学院课程设计任务书工学院机械系机械设计制造及其自动化专业 11 级班学号姓名指导教师朱煜钰题目: 基于AT89C51单片机的电子表设计课程: 单片机应用技术课程设计课程设计时间 2014年 10月27 日至2014年11 月 10 日共 2 周课程设计工作内容与基本要求(设计要求、设计任务、工作计划、所需相关资料)(纸张不够可加页)1.设计要求利用AT89C51单片机作为微控制器,在数码管通过一个控制键转换来显示相应的时间和日期,能通过多个控制键用来实现时间和日期的调节。
2. 设计任务与要求2.1系统硬件电路设计根据该系统设计的功能要求选择所用元器件,设计硬件电路。
要求用Proteus 绘制整个系统电路原理图。
2.2软件设计根据该系统要求的功能进行软件设计,绘制整个系统的软件流程图;根据流程图编写程序并汇编调试通过;列出软件清单,软件清单要求逐条加以注释。
2.3 Proteus仿真用Proteus对系统软硬件进行仿真调试并通过。
2.4 编写设计说明书内容包括任务书、设计方案分析、硬件部分设计、软件部分设计、调试结果整理分析、设计调试的心得体会等,字数不少于5000字;硬件部分设计要绘制整个系统电路原理图,对各部分电路设计原理做出说明;软件设计部分要(用visio2003画图软件)绘制整个系统框图及各部分的软件流程图,列出程序清单,逐条加以注释,并注明各程序功能块的功能。
3.工作计划4.主要参考资料单片机课程设计指导书皮大能北京理工大学出版社2012.7 8051单片机实践与应用吴金戎清华大学出版社2003.8 单片机技术基础教程与实践夏路易电子工业出版社2008.1单片机原理及应用张毅刚高等教育出版社 2012.11基于Proteus的单片机系统设计与仿真实例蒋辉平机械工业出版社2007.7…指导老师签字:日期:基于AT89C51单片机的电子表设计1.设计目的(1).将所学的单片机原理与系统设计中的相关的知识应用于实践;(2).掌握单片机应用系统主要环节的设计、调试方法;(3).培养创新意识,提高动手能力和分析问题、解决问题的能力。
电子跑表一.个人任务在本次课程设计中,本人负责跑表的C语言程序编程部份和开发板调试。
另一人负责proteus仿真。
二.设计要求以51开发板为核心设计一个多功能电子表。
利用AT89C52作为主控器组成一个具有跑表功能的4位LED显示器的电子跑表。
跑表的-999.9秒并具有跑表启动和跑表复位功能键。
跑表的显示范围:;当按下启动按钮跑表开始计时,按下停止按停止计时,当按下复位按钮跑表回零。
三.设计思路1.计时单元由单片机内部的按时器/记数器来实现。
2.跑表的显示功能是由LED数码管动态扫描来实现。
这能够利用专用的键盘/显示器接口芯片来实现对键盘/显示器的动态扫描。
3.跑表的启动/复位/清零功能由软件来实现。
P1.0接启动键,P1.1接停止键,P1.2接清零键。
四.设计方案在单片机中,按时功能既能够由硬件实现,也可通过软件按时实现。
硬件按时是利用单片机内按时器按时,启动以后按时器可与CPU并行工作,不占用CPU时刻,CPU有较高的工作效率。
采纳硬件按时和软件按时并用的方式,即用T0出中断功能实现50ms按时,通过软件延时程序实现1s按时。
按时器的有关的寄放器有工作方式寄放器TMOD和操纵寄放器TCON。
依照设计要求和设计思路,硬件电路有两部份组成,即单片机按键电路,LED 显示器电路,以下图为系统电路设计流程图。
图1 电路设计流程图依照课程设计要求,决定计时单元由单片机内部的按时器/记数器89C52芯片来实现。
跑表显示功能通过LED数码管动态扫描来实现。
能够利用专用的键盘/显示器接口芯片可实现对键盘/显示器的动态扫描。
五.硬件设计1. 单片机型号选择由于咱们利用的单片机开发板上的单片机的型号是SCT89C52,因此咱们只能选择这款型号的单片机。
可是这款单片机和SCT89C51是一样的,也是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处置器,器件采纳ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
目录目录 (1)第1章概述 (1) (1)第2章设计思路及框图 (1) (1) (2)第3章系统的硬件设计 (2) (2) (3) (3) (4) (4)第4章电路设计原理图 (4) (4)第5章程序设计 (5) (5) (7)第6章系统的验证及调试 (43) (43) (43) (44)第7章总结 (45)第8章参考文献 (45)第1章概述单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。
单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广阔领域。
单片机有两种基本结构形式:一种是在通用微型电脑中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。
另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。
本课题讨论的方波发生器的核心是目前应用极为广泛的 51系列单片机。
利用AT89C51单片机定时器完成计时功能,定时器0计时中断程序每隔0.01s中断一次并当作一个计数,设定定时1秒的中断计数初值为0,每中断一次中断计数初值加1,当加到100时,则表示1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了。
为了将时间在6位LED数码管上显示,可采用静态显示法和动态显示法,由于静态显示法需要译码器,数据锁存器等较多硬件,可采用动态显示法实现LED显示,通过对每位数码管的依次扫描,使对应数码管亮,同时向该数码管送对应的字码,使其显示数字。
由于数码管扫描周期很短,由于人眼的视觉暂留效应,使数码管看起来总是亮的,从而实现了各种显示。
第2章设计思路及框图设计思路针对要实现的功能,采用AT89S51单片机进行设计,AT89S51 单片机是一款低功耗,高性能CMOS8位单片机,第一,熟悉AT89S51单片机,在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储单元的用法,否则,编程无从下手,电路也无法设计。
目录前言 .............................................................................. 错误!未定义书签。
1电子秒表总体设计. (4)1.1课程设计的目的 (4)1.2任务要求 (4)1.3任务分析 (4)1.4 方案设计及论证 (5)1.4.1 方案设计 (5)1.4.2方案确定 (6)1.5 设计步骤 (7)2 系统的硬件电路 (8)2.1时钟电路 (8)2.2 复位电路 (9)2.3显示模块设计 (10)2.4 按键电路 (10)3 软件设计 (12)3.1主要模块流程图 (12)3.2 程序的主要模块 (13)4 仿真与调试 (14)4.1 仿真分析 (14)4.2硬件调试 (14)结论 (16)参考文献 (17)附录 (18)电子秒表的设计摘要本次设计是基于AT89C51单片机的电子秒表的设计,单片机控制秒表是集于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低,安全性高,使用方便等优点。
本次设计内容为以AT89C51单片机为核心的秒表,采用两个4位LED数码管显示以及外部中断电路来实现数字秒表的基本功能。
它采用键盘输入,单片机技术控制。
设计内容以硬件电路设计,软件设计和PCB 板制作三部分来设计。
利用单片机的定时器/计数器定时和计数的原理,用集成电路芯片、LED 数码管以及按键来设计计时器。
将软、硬件有机地结合起来,使他拥有正确的计时、暂停、清零、并同时可以用数码管显示计时。
本次课程设计主要完成具备基本功能的电子秒表的理论和实践设计,电子秒表是重要的记时工具,广泛运用于各行各业中。
作为一种测量工具,电子秒表相对其它一般的记时工具具有便捷、准确、可比性高等优点。
提高了精确度,而且可以大大降低错误率。
因此电子秒表常常用于体育竞赛及各种其他要求有较精确时间的各领域中。
关键词:AT89C51单片机;电子秒表;数码管前言近年来随着科技的飞速发展,单片机的应用正在不断的走向深入,同时带动着传统控制检测日新月异更新。
目录第1章设计内容与要求 (1)1.1系统结构框图与工作原理设计内容 (1)1.2设计要求 (1)第2章系统总体方案选择说明 (2)2.1总体思路 (2)2.2系统方案选择 (2)2.3系统总体方案说明 (2)第3章系统结构框图与工作原理 (3)3.1系统结构框图 (3)3.2系统工作原理 (3)第4章模块电路设计 (4)4.1调节时钟部分电路 (4)4.2显示部分电路 (4)4.3单片机部分电路 (5)第5章软件设计说明 (6)5.1主程序流程图 (6)5.2显示程序流程图 (7)5.3定时计数器T0中断服务流程图 (8)第6章电路的调试 (9)第7章设计总结 (10)附录1 参考文献 (11)附录2 总体设计图 (12)附录3 程序清单 (13)第1章设计内容与要求1.1 系统结构框图与工作原理设计内容(1)设计时钟包括:时钟、跑表;(2)使用6位LED进行显示。
(3)能通过键盘对时钟进行调整;(4)做时钟时在6位LED 显示器上显示时、分、秒,(5)做跑表时具有跑表启动和跑表清零和暂停功能键。
1.2 设计要求(1)确定系统设计方案;(2)进行系统的硬件设计;(3)完成必要的参数计算与元器件的选择;(4)完成应用程序设计;(5)进行软硬件调试;第2章系统总体方案选择说明2.1 总体思路利用8051的P2口作为控制单片机跑表开始,暂停,清零,返回的输入端。
P3作为控制LED的显示时钟的调节时间控制信号输入端。
P0,P1控制LED动态显示选择控制端控制六个LED的显示时间和显示顺序。
定时器T0定时50ms。
T1定时10ms,37H-39H保存时钟的变化量。
41H-43H保存秒表的变化量。
其中为了方便显示,每个变量对应两个单元,以便将变量拆开成两个十进制的数方便显示。
2.2 系统方案选择本系统采用AT89C51单片机、6位数码管显示(不带译码器)和7个键盘键盘操作(分别为功能键,加一键,减一键,返回键,开始键,暂停键,清零键)作为调节时间的按钮构成一个单片机多功能时钟的硬件。
单片机电子课程表课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解其内部结构和功能。
2. 培养学生运用C语言编写单片机程序的能力,实现电子课程表的功能。
3. 让学生了解并掌握电子课程表中涉及的时间管理、显示技术等相关知识。
技能目标:1. 培养学生动手实践能力,能够独立完成单片机电子课程表的硬件搭建和程序编写。
2. 培养学生解决实际问题的能力,能够根据需求调整电子课程表的功能。
3. 培养学生的团队协作能力,能够在小组合作中发挥个人优势,共同完成项目。
情感态度价值观目标:1. 培养学生对单片机及电子制作的兴趣,激发学生的创新意识。
2. 培养学生积极进取、严谨治学的态度,树立良好的学术风气。
3. 增强学生的环保意识,培养学生珍惜资源、爱护环境的价值观。
课程性质:本课程为实践性较强的课程,以项目为导向,注重培养学生的动手能力和实际操作技能。
学生特点:学生具备一定的电子基础知识,对单片机有一定了解,但编程能力较弱。
教学要求:结合学生特点,课程设计应注重理论与实践相结合,充分调动学生的积极性,提高学生的实践能力。
教学过程中,注重启发式教学,引导学生主动探究问题,培养学生的创新思维。
同时,关注学生的个体差异,提供个性化指导,确保每位学生都能在课程中取得进步。
通过本课程的学习,使学生能够达到上述课程目标,具备一定的单片机应用能力。
二、教学内容1. 单片机基础理论:介绍单片机的内部结构、工作原理,重点讲解CPU、存储器、输入输出接口等部分的功能和相互关系。
教材章节:第一章 单片机概述,第二章 单片机硬件结构。
2. C语言编程:讲解C语言在单片机编程中的应用,包括数据类型、运算符、控制语句等基本语法知识。
教材章节:第三章 单片机C语言编程基础。
3. 单片机程序设计:以电子课程表为例,教授如何编写程序,实现时间管理、课程显示等功能。
教材章节:第四章 单片机程序设计,第五章 中断与定时器。
4. 硬件电路设计:介绍电子课程表的硬件组成,包括单片机、显示屏、按键等,讲解电路原理图的设计方法。
《新编单片机原理及应用》—课程设计---电子秒表---说明书目录第一章绪论 (3)1.1概述 (3)1.2设计目的 (3)1.3设计任务和内容 (3)第二章总体设计及核心器件简介 (4)2.1总体设计 (4)2.2MCS-51之80C51 (4)第三章单元电路模块设计 (6)3.1按键电路 (6)3.2时钟电路 (7)3.3LED数码管显示电路 (7)3.4复位电路 (9)3.5 总体功能介绍 (11)第四章软件编程设计 (12)第五章设计体会及总结 (13)参考文献 (14)附录一程序流程图 (15)附录二系统程序设计 (16)第一章绪论1.1概述单片微型计算机简称单片机,又称微控制器,是微型计算机的一个重要分支。
单片机是20世纪七十年代中期发展起来的一种大规模集成电路芯片,是集CPU、RAM、ROM、I/O接口和终端系统与同一硅片的器件。
20世纪八十年代以来单片机发展迅速各类新产品不断涌现出现许多新产品,出现了许多高性能新型机种现已成为工业控制和各控制领域的支柱产业之一。
由于单片机功能功能强、体积小、可靠性好、价格便宜等独特优点因而受到人们的高度重视并取到了一系列的科研成果,成为传统工业技术改造和新产品更新换代的理想机种,并具有广阔的发展前景。
本设计运用所学的单片机知识,将单片机与普通秒表相结合设计了电子秒表,具有低功耗,保密性好等优良特点,具有广阔的市场前景1.2设计目的加强对单片机和C51语言的认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。
(1)用单片机模拟实现具体应用使个人设计系统能够真正使用。
(2)把理论知识与实践知识相结合,充分发挥个人能力,并在实践中得到锻炼。
(3)提高利用已学的知识分析和解决问题的能力。
(4)提高动手实践能力。
1.3设计任务及内容1.3.1设计任务结合教材及参考资料,用80C51单片机模拟实现电子秒表的开启,计时,停止并显示时间等功能。
烟台南山学院《单片机原理与接口技术》课程设计题目:数字电子表设计学院(系):自动化工程学院年级专业:电气技术4班学号: ************学生姓名:***指导教师:***课程设计任务书学生姓名:毕天华专业班级:电气技术4班指导教师:田敬成工作单位:自动化工程学院题目: 基于51单片机的数字电子表的设计初始条件:1.运用所学的单片机原理与接口技术知识和数字电路知识;2.51单片机应用开发系统一套;3.PC机及相关应用软件;要求完成的主要任务:1.完成数字电子表的设计和调试。
2.要求采用四位八段数码管显示时间和日期,并且可以用按键修改时间和日期。
3.撰写课程设计说明书。
4.课程设计说明书要求:引言、设计要求、系统结构、原理设计、各个模块的设计与实现、软件设计、调试过程、收获、体会及总结、参考文献、电路图和源程序。
说明书使用A4打印纸计算机打印或手写,用Protel 等绘图软件绘制电子线路图纸。
时间安排:第1天下达课程设计任务书和日程安排,根据任务书查找资料;第2~3天完成方案论证,单片机系统的设计;第4~6天参考有关文献,完成程序的编写;第7~10天调试硬件系统和软件程序;第11~12天结果分析整理、撰写课程设计报告,验收和答辩。
指导教师签名:年月日系主任(或责任教师)签名:年月日基于单片机数字电子表的设计摘要随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的作用。
多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与处理技术等都离不开计算机。
本课程设计是基单片机原理与接口技术的简单应用。
运用所学的单片机原理和接口技术知识完成数字电子表的设计。
电子表已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。
由于数字集成电路技术的发展和采用了先进的石英技术,使电子表具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。
尽管目前市场上已有现成的电子表集成电路芯片出售,价格便宜、使用也方便,但鉴于电子表电路的基本组成包含了数字电路的主要组成部分,因此进行电子表的设计是必要的,用C语言设计电子表显示程序,要求根据输入程序显示电子表画面。
研究电子表及扩大其应用,有着非常现实的意义。
关键词LED,定时/计器数,C语言,调试,运行。
前言 (5)第一章数字电子表的设计要求与设计方案 (6)1.1 课程设计的目的 (6)1.2 要求完成的主要任务 (6)1.3 设计方案 (6)第二章数字电子表的硬件设计 (8)2.1 电子表的硬件框图 (8)2.2 输入、输出显示电路设计 (9)2.3 系统总电路图 (9)第三章数字电子表的软件设计 (10)3.1 主程序流程图 (10)3.2 中断程序设计 (10)3.3 显示处理程序设计 (12)3.4 电子表主程序设计 (13)第四章数字电子表的安装与调试 (17)4.1 硬件调试 (17)4.2 软件调试 (17)4.3 调试过程 (17)第五章设计体会与小结 (18)5.1 总结设计体会与心得 (18)附录 (19)参考文献 (21)单片机课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。
在生活中,数字电子表的优点受到人们的欢迎,在很多场合得到了广泛的应用。
《单片原理及应用》是一门技术性、应用性很强的学科,实践教学是它的一个极为重要的环节。
不论是硬件扩展、接口应用还是编程方法、程序调试,都离不开实验教学。
如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节的局面。
任随书本上把单片机技术介绍得多么重要、多么实用多么好用,同学们仍然会感到那只是空中楼阁,离自己十分遥远,或者会感到对它失去兴趣,或者会感到它高深莫测无从下手,这些情况都会令课堂教学的效果大打折扣。
本次仿真设计的目的就是让同学们在理论学习的基础上,通过完成一个涉及MCS—52单片机都种资源应用并具有综合功能的数字电子表的设计与编程应用,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排版调试、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。
该电子时钟不但具有定时作用还有温度采集作用。
定时部分可以显示时、分、秒,月,日,而且用按键还可以实现时间和日期的调整。
在这次单片机课程设计中,同学们完成了单片机数据采集与定时系统的硬件电路设计。
本次综合实践是在此基础上,完成该系统的软件设计与调试。
待仿真成功后,再将程序烧写入单片机中。
第一章数字电子表的设计要求与设计方案1.1 课程设计的目的(1)巩固,加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力;(2)培养针对课题需要,选择和查阅有关手册,图标及文献资料的自学能力,提高组成系统,编程,调试的动手能力;(3)通过对课题设计方案的分析,选择,比较,熟悉单片机用系统开发,研制的过程,软件硬件设计的方法,内容及步骤。
1.2要求完成的主要任务:(1)成数字电子表的设计和调试。
(2)要求采用四位八段数码管显示时间和日期,并且可以用按键修改时间和日期。
1.3 设计方案(1)系统结构整个电子时钟系统电路可分为五大部分:中央处理单元(CPU)、电源电路部分、显示部分、键盘输入部分。
(2)显示部分显示部分是整个电子时钟最为重要的部分,它为时间的显示的显示,共需要8位LED显示器。
采用动态显示方式,所谓动态显示方式是时间(或温度)数字在LED上一个一个逐个显示,它是通过位选端控制在哪个LED上显示数字,由于这些LED数字显示之间的时间非常的短,使的人眼看来它们是一起显示时间数字的,并且动态显示方式所用的接口少,节省了CPU的管脚。
由于端口的问题以及动态显示方式的优越性,在此设计的连接方式上采用共阴级接法。
显示器LED 有段选和位选两个端口,首先说段选端,它由LED八个端口构成,通过对这八个端口输入的不同的二进制数据使得它的时间显示也不同,从而可以得到我们所要的时间显示。
(3)实现数字时钟原理为:在单片机内部存储器设三个字节分别存放时钟的时、分、秒信息。
利用定时器与软件结合实现1秒定时中断,没产生一次中断,存储器内相应的秒值加1:;若秒值达到60,则将其清零,并将相应的分字节值加1若分值;若分值达到60,则清零分字节,并将时字节值加1;若时值达到24,则将时字节清零。
该方案具有硬件电路简单的特点。
但由于每次执行程序时,定时器都要重新赋初值,所以该时钟精度不高。
第二章数字电子表的硬件设计2.1 电子表的硬件框图电子表电路的核心是AT89C52单片机,其内部带有4KB的Flash ROM,无需外扩程序存储器;电子表没有大量的运算和暂存数据,现有的128B片内RAM 已满足要求,也不必外扩片外RAM。
系统配备6位LED显示,采用单片机的并行口作为键盘,显示器接口电路。
利用P0口作为8位LED显示的位选口,其中,P0.0~P0.7分别对应为LED0~LED7,P1口则作为段选口,P2口的低3位为键盘输入口,对应0~2行,P0口同时用作键盘的扫描口由于采用公阴极数码管,因此P0口输出低电平选中相应的位,而P1口输出高电平点亮相应的段。
单片机晶振手动复位数码管显示时间调整按键日期调整按键2.2 输入、输出显示电路设计2.3 系统总电路图串行口AT89C52P1口 4位独立式键盘移位寄存器 移位寄存器 LED1 LED2第三章数字电子表的软件设计3.1 主程序流程图在编程,首先进行了初始化,定义程序的入口地址以及中断的入口地址,自主程序开始定义了一组固定单元用来存储计数的时、分、秒,在显示初值之后,进入主循环。
在主程序中,对不同的按键进行扫描,实现秒表,时间调整,复位清零等功能。
系统总流程图如下图:/**************************************************************//* 3.2 中断程序设计 *//*************************************************************/void time1_isr(void) interrupt 3 using 0//定时器1中断;定时器1用来动态扫描{static unsigned char num;TH1=0xF8;//重入初值TL1=0xf0;switch (num){case 0:P2=0;P0=StrTab[num];break; //分别调用缓冲区的值进行扫描case 1:P2=1;P0=StrTab[num];break;case 2:P2=2;P0=StrTab[num];break;case 3:P2=3;P0=StrTab[num];break;case 4:P2=4;P0=StrTab[num];break;case 5:P2=5;P0=StrTab[num];break;case 6:P2=6;P0=StrTab[num];break;case 7:P2=7;P0=StrTab[num];break;default:break;}num++; //扫描8次,使用8个数码管if(num==8)num=0;}void tim(void) interrupt 1 using 1//定时器0中断{static unsigned char count;//定义内部静态变量TH0=0xd8; //重新赋值TL0=0xf0;count++;switch (count){case 0:case 20:case 40:case 60:case 80:Displaypro(); //隔一定时间调用显示处理 break;default:break;}if (count==100){count=0;second++; //秒加1if(second==60){second=0;minute++; //分加1if(minute==60){minute=0;hour++; //时加1if(hour==24){hour=0;day++;if((day==28)&&(month=2)){day=1;month++;}if((month<=7)&&(month!=2))if((month%2==1)&&(day=31)){day=1;month++;}if(month>7)if(month%2==0){month++;day=1;}}}}}}/**************************************************************/ /* 3.3 显示处理程序设计 *//**************************************************************/ void Displaypro(void){if(!KEY2) //按键1去抖以及动作{if(!KEY2)delay(40000);t++;}if(t%2==0){ if(!KEY1) //按键1去抖以及动作{if(!KEY1)delay(40000);{hour++;if(hour==24)hour=0; }}if(!KEY3) //按键1去抖以及动作{if(!KEY3)delay(40000);{minute++;if(minute==60)minute=0;}}if(!KEY4) //按键去抖以及动作{delay(15000);if(!KEY4){if(minute>=1)minute--;Displaypro();}}i=hour;j=minute;k=second;}if(t%2==1){i=month;j=day;k=0;}StrTab[0]=tab[i/10]; //显示小时十位StrTab[1]=tab[i%10]; //显示小时个位StrTab[2]=0x40; //显示"-"StrTab[3]=tab[j/10]; //显示分钟十位StrTab[4]=tab[j%10]; //显示分钟个位StrTab[5]=0x40; //显示"-"StrTab[6]=tab[k/10]; //显示秒钟十位StrTab[7]=tab[k%10]; //显示秒钟个位}/**************************************************************/ /* 3.4 电子表主程序设计主函数 */ /**************************************************************/ main()//主函数{TMOD |=0x01;//定时器0 10ms in 12M crystal 用于计时TH0=0xd8; //初值TL0=0xf0;ET0=1;TR0=1;TMOD |=0x10; //定时器1用于动态扫描TH1=0xF8; //初值TL1=0xf0;ET1=1;TR1=1;EA =1; //总中断允许if(t%2==0){while(1)//主循环{ if(!KEY1) //按键1去抖以及动作{if(!KEY1)delay(40000);{ hour++;if(hour==24)hour=0; //正常时间小时加1 Displaypro();}}if(!KEY3) //按键去抖以及动作{delay(20000);if(!KEY3){ minute++;if(minute==60)minute=0;//分加1Displaypro();}}if(!KEY4) //按键去抖以及动作{delay(15000);if(!KEY4){if(minute>=1)minute--;Displaypro();}}}}if(t%2==1){{while(1)//主循环{if(!KEY1) //按键1去抖以及动作{ delay(20000);if(!KEY1){month++;if(month==13)month=1; //正常时间小时加1 Displaypro();}}if(!KEY3) //按键去抖以及动作{delay(20000);if(!KEY3){day++;if((day==29)&&(month==2))day=1;if((month<=7)&&(month!=2)) {if(month%2==1)if(day==32)day=1;if(month%2==0)if(day==31)day=1;}if(month>7){if(month%2==0)if(day==32)day=1;if(month%2==1)if(day==31)day=1;}Displaypro();}}}}}}第四章数字电子表的安装与调试4.1 硬件调试单片机基础电路包括电源,单片机,外部时钟振荡电路,复位电路和外部接口电路。