基于单片机的多功能秒表
基于单片机的多功能秒表
郑州科技学院单片机课程设计题目基于单片机的多功能秒表学生姓名专业班级学号院(系)指导教师完成时间2015 年1 月16 日目录1 设计概述 (1)1.1设计目的 (1)1.2设计要求 (1)1.3设计意义 (1)2 系统总体方案及硬件设计 (2)2.1系统总体方案 (2)2.2硬件设计 (2)2.3时钟电路 (3)2.4复位电路 (4)2.5按键电路 (5)2.6显示电路 (6)3 软件设计 (7)3.1设计思路 (7)3.2程序流程框图设计 (7)4 PROTEUS软件仿真 (9)5 课程设计体会 (10)参考文献 (12)附录1:总体电路原理图 (13)附录2:元器件清单........................................... 错误!未定义书签。
附录3:实物图 . (15)附录4:源程序 (16)1 设计概述1.1 设计目的设计一个单片机控制的秒表系统。
利用单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及按键来设计秒表。
将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时具有开始/暂停,记录,上翻下翻,清零等功能。
1.2 设计要求(1)共四位LED显示,显示时间为00:00~59.99(2)共五个按键,分别是开始/暂停,记录,上翻,下翻,清零键;(3)能同时记录多个相对独立的时间并分别显示;(4)按上下翻按钮查看多个不同的计时值;1.3 设计意义(1)通过本次课程设计可以使我们进一步熟悉和掌握单片机内部结构和工作原理,了解单片机应用系统设计的基本步骤和方法。
(2)通过利用A T89C51单片机,理解单片机在自动化仪表中的作用以及掌握单片机的编程方法。
(3)通过设计一个简单的实际应用输入及显示模拟系统,掌握单片机仿真软件PROTEUS的使用方法。
(4)该实验通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零、功能,并能同时记录多个相对独立的时间利用翻页按钮查看多个不同的计时值,该种秒表在现实生活中应用广泛,具有现实意义。
新建基于单片机的多功能电子秒表提交版
摘要本设计不仅是一个简单的电子秒表,还能够显示电子时钟和年、月、日,还能够提供整点报时等功能,本设计的秒表能显示从毫秒级、秒级和分级三个段,分别用六个数码管显示,秒表能够精确计时,方便应用各个领域,另外硬件部分设置了开始、暂停、清零、复位以及电子时钟和电子秒表的切换按键,可以对秒表和时钟进行实时控制。
本设计的数字电子秒表和时钟是采用AT89C52为控制核心器件利用74LS245作为数码管的驱动芯片,再利用定时/计数器定时和计数原理,结合显示电路、数码管以及中断原理(实时与分时操作)来实现电子秒表的制作。
将软件、硬件有机的结合起来,使得系统能够实现六位数码管显示,能显示分、秒、毫秒,计时精度为0.01秒。
其中软件采用C语言编写程序,包括显示程序、电子秒表定时中断程序、电子时钟定时中断程序、外部中断程序、按键程序、延时程序和主程序。
并在keil中调试运行,利用proteus软件仿真调试,简单且易于观察,在仿真中可以观察到实际的工作状态。
关键字:单片机;AT89C52;74LS245;电子秒表,电子时钟,程序;仿真。
引言近年来,随着科技的飞速发展,单片机的应用正在不断的走向深入,同时带动着传统控制检测日新月异更新,在实时检测和自动控制的单片机应用系统中,单片机往往是作为控制核心来使用,仅是单片机方面的知识是不够的,还要根据具体的硬件结构,以及针对具体的应用对象的软件结合,加以完善。
单片机自二十世纪以来,以极好的性价比受到人们的重视和关注,所以发展很快,应用广泛。
单片机的主要特点是体积小、集成度高、抗干扰能力强。
对环境的要求较低,价格低廉、可靠性高、灵活性强、开发较容易等特点,所以广泛的应用到各个领域。
几乎到了无孔不入的地步,在我国单片机广泛的应用于工业自动化控制、自动检测、智能仪表、航空航天和军事技术领域等各方面我们可以开发利用单片机系统获得更高的经济效益,更重要的意义是单片机应用改变了传统的设计思想和方法。
单片机课程设计_基于单片机的数字秒表设计
单片机课程设计_基于单片机的数字秒表设计在当今科技迅速发展的时代,电子设备的应用无处不在,其中数字秒表作为一种常见的计时工具,具有广泛的应用场景,如体育比赛、科学实验、工业生产等。
本次课程设计旨在基于单片机技术实现一个数字秒表,通过对硬件电路的设计和软件程序的编写,掌握单片机系统的开发流程和方法,提高实践动手能力和解决问题的能力。
一、设计要求1、能够实现秒表的启动、暂停、复位功能。
2、计时精度达到 001 秒。
3、能够通过数码管显示计时结果。
二、系统方案设计1、硬件设计单片机选型:选用常见的 STC89C52 单片机作为核心控制器,其具有性能稳定、价格低廉、易于编程等优点。
显示模块:采用 8 位共阴极数码管作为显示器件,通过动态扫描的方式实现数字的显示。
按键模块:设置三个独立按键,分别用于启动、暂停和复位操作。
时钟模块:使用单片机内部的定时器/计数器产生精确的时钟信号,实现计时功能。
2、软件设计主程序:负责系统的初始化、按键扫描和计时处理等。
中断服务程序:利用定时器中断实现 001 秒的定时,更新计时数据。
三、硬件电路设计1、单片机最小系统包括单片机芯片、晶振电路和复位电路。
晶振频率选择 12MHz,为单片机提供时钟信号。
复位电路采用上电复位和手动复位相结合的方式,确保系统能够可靠复位。
2、显示电路将 8 位数码管的段选引脚通过限流电阻连接到单片机的 P0 口,位选引脚通过三极管连接到单片机的 P2 口。
通过动态扫描的方式,依次点亮每个数码管,实现数字的显示。
3、按键电路三个按键分别连接到单片机的 P10、P11 和 P12 引脚,采用低电平有效。
当按键按下时,相应引脚的电平被拉低,单片机通过检测引脚电平的变化来判断按键的操作。
四、软件程序设计1、主程序流程系统初始化后,进入主循环。
在主循环中,不断扫描按键状态,如果检测到启动按键按下,则启动计时;如果检测到暂停按键按下,则暂停计时;如果检测到复位按键按下,则将计时数据清零。
基于单片机的多功能秒表设计
光电信息综合设计报告多功能秒表设计院(系)名称信息工程学院专业名称光电信息科学与工程姓名学号0指导教师2018年5 月20日摘要近年来随着科技的飞速发展,单片机的应用正在不断的走向深入。
本文阐述了基于单片机的多功能电子秒表设计。
本设计主要特点就是具有倒计时功能,还可以按圈计时,而且误差在0、01s,就是各种体育竞赛的必备设备之一,另外硬件部分设置了查瞧按键,还具备有定时提醒功能,让您时时刻刻都掌握时间。
本设计的数字电子秒表系统采用STC89C52单片机为中心器件,利用其定时器/计数器定时与记数的原理,结合显示电路、数码管以及外部中断电路来设计计时器。
将软、硬件有机地结合起来,使得系统能够实现4位LED显示,显示时间99s内,能正确地进行计时,同时能记录10组时间,并在暂停就是对时间进行查询。
其中软件系统采用C语言编写程序,包括显示程序,定时中断服务延时程序等,并在KEIL中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。
关键字:单片机;数字电子秒表;提醒目录1 总体设计方案 (1)2 硬件设计 (3)2、1 单片机的选择 (3)2、2 显示电路的选择与设计 (5)2、3 按键电路的选择与设计 (6)2、4 时钟电路的选择与设计 (6)2、5 系统总电路的设计 (7)3 软件设计 (9)3、1 程序设计思想 (9)3、2 主程序设计 (9)3、3 中断程序设计 (10)3、4程序模块设计: (11)主程序................................................................................... 错误!未定义书签。
(2)停止子程序...................................................................... 错误!未定义书签。
基于单片机的秒表设计
基于单片机的秒表设计基于单片机的秒表设计引言在现代生活中,计时设备已经成为了我们日常生活中的必需品。
无论是体育比赛、工程控制还是交通调度,都需要精确的计时功能。
传统的机械秒表虽然精度高,但操作复杂,不易携带。
为了解决这一问题,基于单片机的秒表设计应运而生。
本文将详细介绍秒表的设计原理、实现方案以及实验验证。
原理分析单片机内部有一个高精度振荡器,通过晶振和电容等元件构成的电路,产生具有一定频率的方波信号。
该信号送入单片机内的计数器,计数器对单位时间内方波的个数进行计数,从而得到时间信息。
单片机将这些时间信息进行处理和存储,并通过输出设备展示给用户。
设计方案基于单片机的秒表设计主要包括以下几个部分:1、电路连接:通过单片机内部的计数器和外部的晶振、电容等元件构成计时电路。
2、程序编写:编写程序实现计时、暂停、清零等功能。
3、输出显示:通过液晶显示屏等设备将计时的结果展示给用户。
实验验证为了验证基于单片机的秒表的准确性和稳定性,我们进行了一系列实验。
实验结果表明,该秒表在各种环境条件下均能保持较高的精度和稳定性。
对比其他方案相比于传统的机械秒表,基于单片机的秒表具有更高的精度和稳定性。
同时,基于单片机的秒表可以通过程序实现复杂的功能,如计时、暂停、清零等,更加方便实用。
结论基于单片机的秒表设计具有高精度、多功能、易操作等优点,在实际生活中具有广泛的应用价值。
通过单片机内部的高精度振荡器和外部的晶振、电容等元件构成的计时电路,实现了秒表的计时功能。
通过程序编写实现了计时、暂停、清零等功能,并通过液晶显示屏等设备将计时的结果展示给用户。
实验结果表明,该秒表在各种环境条件下均能保持较高的精度和稳定性。
基于单片机的秒表相比于传统的机械秒表具有更高的精度和稳定性,同时可以通过程序实现复杂的功能,更加方便实用。
基于单片机的多功能秒表系统课程设计
基于单片机的多功能秒表系统课程设计单片机课程设计报告多功能秒表系统设计姓名:学号:专业班级:指导老师:所在学院:2009年6月10日单片机已经无处不在,与我们生活更是息息相关并已渗透到了生活的方方面面。
单片机的特点是体积小,重量轻,功能强,通用性好,也就是说集成度高,其内部的结构是普通的计算机系统的简化。
在增加一些外围电路之后,就能成为一个完整的系统。
在众多单片机中,MCS-51系列单片机具有系统结构完整,特殊功能寄存器规范化以及指令系统的控制功能强等特色,使起成为单片机中的主流机型。
本设计是一个由AT89C51单片机控制,利用单片机的定时器/计数器定时和记数的原理,结合显示电路、电源电路、LED数码管以及键盘电路按键计时来实现的多功能秒表系统。
在本次设计中我们以AT89C51单片机为主要器件,利用它的定时器/计数器定时和记数的原理,结合7809电源提供的+5V稳压电压,上电加按钮复位电路,晶体振荡电路,由P0口驱动的LED动态显示电路,键盘电路等来完成多功能秒表的设计。
这个多功能秒表系统能够实现两位LED显示,显示的时间为00~99秒,每秒自动加1,能正确地进行加、减(倒)计时,能同时记录4个相对独立的时间,通过上翻键和下翻键来查看这4个不同的计时值,还具有快加和复位功能,基本上实现了老师的要求。
我们使用汇编语言来编写程序,采用模块化程序设计方法,主程序有多个子程序构成,这些子程序可以单独的设计,调试和管理,其中包括加1子程序、减1子程序、延时子程序、快加子程序,复位子程序和显示子程序等。
将源程序代码在WAVE中进行编译和调试,硬件系统利用Proteus软件来实现,可以方便的看到运行结果。
关键词:多功能秒表、单片机、子程序模块、Proteus仿真1 概述 (3)1.1单片机简介 . (3)1.2设计任务 (3)1.3设计要求 (3)2 系统总体方案及硬件设计 ......................................................错误!未定义书签。
单片机多功能秒表课程设计
单片机课程设计报告电子秒表摘要:本设计的成品是在单片机最小系统的基础上增加显示电路和控制电路来完成电子秒表的硬件电路的。
电子秒表电路主要由AT89S52单片机最小系统电路、七段数码管动态显示电路和控制电路组成,它能实现八位数码显示和多次计时,能通过控制电路能控制时间的暂停、开始和清零,能够多次存储时间,并查询显示计时时间的顺序。
关键字:AT89S52 数码管最小系统1 方案设计1.1系统分析设计的电路主要是能多次记时和查询时间,记时的多少通过显示电路显示出来,每一次计时可以通过控制电路查询出来。
设计框图如图一所示;1.2系统方案方案一:利用AT89S52单片机设计数显定时器和定时器。
单片机软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。
利用74HC573锁存器和按键作为控制电路,通过位选和段选来实现数码管的显示。
2 硬件设计2.1 控制芯片的介绍AT89S52(与AT89S51相同)单片机的外型如图四所示。
单片机可分为通用型和专用型,种类繁多。
这里我们主要介绍AT89S52单片机是属于典型代表的MCS-51系列单片机,它是一种能处理8位数据的通用型单片机。
以Atmel公司生产的具有CMOS工艺、低功耗、高性能的AT89S52为例,介绍单片机的工作原理、控制程序的编写及开发应用。
AT89S52是一个高性能CMOS 8位单片机,芯片内集成了通用8位中央处理器,片内含8k Bytes的可反复擦写1000次的Flash只读程序存储器(ROM), 支持ISP(In-system programmable)功能。
AT89S52内部有128 bytes的随机存取数据存储器(RAM),图五 AT89S52引脚图5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT )电路,片内时钟振荡器。
兼容标准MCS-51指令系统及80C51引脚结构。
图四AT89S52有40个引脚,32个外部双向输入/输出(I/O )口。
单片机多功能秒表
单片机综合实验报告题目: 多功能数字时钟班级:姓名:学号:一、实验内容:设计一个单片机控制的秒表系统.利用单片机的定时器的原理,结合显示电路、LED数码管以及按键来设计计时器,使系统能够正确地进行加、减<倒)计时,数码管能够正确地显示时间.6tCXaz8fPRb5E2RGbCAP目的要求1)两位LED显示,显示时间为00~99秒.2)每秒自动加1.3)一个开始按键、一个复位按键和一个暂停按钮.4)翻页按钮查看四个不同的计时值 .5)添加倒计时初始值设置功能6)不同功能通过功能键Setup实现切换.二、实验电路及功能说明本实验以51单片机为核心,应用其中断来定时,通过按键来控制时间和日期的调整,通过1602LCD来数字显示时钟,做成一个简易的数字时钟.本实验要求能定时,还要能设置闹铃,由于对C51程序代码的写法不是很熟,没能实现闹铃功能.所以,最后该实验能实现的功能为时间和日期的调整.6tCXaz8fPRp1EanqFDPw其原理图如下图所示:三、实验程序流程图:主程序:主程序流程图子流程图<按键功能设置)四、实验结果分析经过proteus仿真可知:该方案可行,能够对时间进行精确的调整,也能对日期进行更正,基本上能实现上述功能.6tCXaz8fPRDXDiTa9E3d五、心得体会通过该实验我对51的了解更加深入了一层,特别是对C51的写法更加了解,还对1602的基本操作有了一定的了解.同时,也发现C语言的重要性,以后要多加强对C语言的学习.6tCXaz8fPRRTCrpUDGiT六、程序清单#include <REG52.H>#include <INTRINS.H> //库函数头文件,代码中引用了_nop_(>函数// 定义控制信号端口sbit RS=P2^4。
//P2.4sbit RW=P2^5。
//P2.5sbit E=P2^6。
//P2.6sbit set=P1^4。
基于单片机的多功能秒表设计
基于单片机的多功能秒表设计本次设计的内容是以STC89C52单片机为控制核心的秒表。
设计的主要内容为计时器从00~99秒的计时,每秒种自动加1,另外还设置有暂停键和复位键等按键,在任何情况下都可以实现暂停和复位功能。
利用单片机定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计的计时器。
此次设计将软、硬件有机地结合起来,使得系统能够实现2位LED数码管显示,显示时间为00~99秒,同时计时精度为1秒,并且能够正确地进行计时。
其中软件系统采用C语言编写程序,包括显示子程序、中断服务、外部中断服务子程序和复位子程序等。
关键词:单片机;数码管; C语言;目录1引言................................................................. - 1 -1.1研究背景......................................................... - 1 -1.2 研究的意义与方法 ................................................ - 1 -2 电路方案论证 .......................................................... - 2 -2.1单片机芯片的选择方案和论证:..................................... - 2 -2.1.1 采用STC89C51单片机 .................................................................................. - 2 -2.1.2 采用STC89C52单片机 .................................................................................. - 2 -2.2显示模块选择方案和论证:......................................... - 2 -2.2.1 采用LED液晶显示屏 .................................................................................... - 2 -2.2.2 采用LED数码管显示 .................................................................................... - 3 -2.3 小结 ............................................................ - 3 -3 系统硬件电路设计 ...................................................... - 3 -3.1 STC89C52芯片.................................................... - 3 -3.1.1 概述 ................................................................................................................ - 3 -3.1.2 STC89C52主要特性 ....................................................................................... - 3 -3.1.3 STC89C52管脚说明 ....................................................................................... - 4 -3.2 LED数码管显示器概述............................................. - 5 -3.2.1 数码管的分类 ................................................................................................ - 5 -3.2.2 数码管的连接方法 ........................................................................................ - 5 -3.3 总体设计方案 .................................................... - 6 -3.4 部分电路设计 .................................................... - 7 -3.4.1晶振电路 ......................................................................................................... - 7 -3.4.2 按键部分电路接线 ........................................................................................ - 7 -3.4.3 显示电路 ........................................................................................................ - 8 -3.4.4 复位电路 ........................................................................................................ - 8 -4 系统程序的设计 ........................................................ - 9 -4.1 主程序设计 ...................................................... - 9 -4.2 定时器T0子程序设计 ............................................ - 10 -5 联调与调试 ........................................................... - 10 -5.1仿真调试........................................................ - 10 -5.2硬件调试........................................................ - 12 -结论与展望 ............................................................. - 13 - 附录A 系统原理图..................................................... - 14 - 附录B 系统仿真图与实物图............................................. - 15 - 附录C 系统PCB图..................................................... - 16 - 附录D 系统源程序..................................................... - 17 -1引言1.1研究背景在生活和生产的各领域中,凡是有自动控制要求的地方都会伴随着单片机的身影出现;从简单到复杂,从空中、地面到地下,只要是能想象到的地方几乎都有使用单片的需求。
基于单片机的多功能秒表的设计
摘要:单片机具有集成度高,体积小可靠性好和性价比高得优点,该文主要阐述了设计一个利用单片机作为总控制中枢的秒表系统。
利用单片机可以定时和记数的原理结合时钟电路、数码管显示电路、复位电路和按键电路将软、硬件同时结合起来,使得系统能够准确无误地进行计时,同时具有开始,暂停,清零和复位的功能。
关键词:单片机;多功能秒表;c语言中图分类号:tp368 文献标识码:a 文章编号:1009-3044(2016)13-0257-021 系统硬件总体结构本系统采用at89c52单片机为核心器件,通过硬件电路的制作和软件程序的编写,利用单片机的控制作用通过led来直接显示数字[1]。
其中硬件电路如电源电路,晶振电路,复位电路[2],显示电路,以及一些按键电路等,软件系统采用c语言编写,包括数码管点亮显示程序,加减计数程序,延时程序,按键消抖程序等[3],并在keil中调试运行,硬件系统利用proteus仿真,简单而且易于观察,在仿真中就可以观察到实际的工作。
总体硬件框图如图1所示。
[4]2 模块电路分析多功能秒表能正常工作,是在各个电路模块组合下协调完成的,其中包括了单片机工作电路、数码管显示电路,按键电路和时钟电路,下面做详细介绍。
2.1 单片机简单介绍电源vcc、gnd,时钟引脚xtal1、xtal2 ,i/o口引脚p0、p1、p2、p3四组八位i/0,编程控制引脚rst。
采用msc-51系列的单片机是因为其具有两大优势[5]:1)片内程序存储器采用快闪存储器,使程序写入方便,还可以任意的擦写;2)提供了更小的芯片,使整个硬件电路体积更小,物美价廉,经济适用。
2.2 晶体振荡电路at89c52芯片内部有一个反相放大器,用于构成振荡器。
引脚 xtal1为反向放大器的输入,引脚xtal2为反向放大器输出,两端跨接石英晶体及两个电容就可构成稳定的自激振荡器。
电容器c1,c2起稳定振荡频率,并对振荡频率有微调作用。
这部分给单片机提供晶振周期。
单片机秒表
基于单片机的多功能秒表设计1 功能要求用89C51设计一个秒表,显示时间为0000~9999秒,每秒自动加1,设计四个按键K1,K2,K3,K4。
K1按键功能为开始从0000开始计数。
K2按键功能为暂停计数,再按一次实现继续计数功能。
K3实现计数清零功能。
K4功能可以实现按一次显示时间为000^999,按两次实现显示时间为00^99,按三次实现显示时间为0^92 方案论证2.1 显示部分:显示部分是本次设计的重要部分,一般有以下两种方案:方案一:采用LED显示,分静态显示和动态显示。
对于静态显示方式,所需的译码驱动装置很多,引线多而复杂,且可靠性也较低。
而对于动态显示方式,可以避免静态显示的问题,但只要设计上处理恰当,就能解决亮度低,有闪烁等问题,且价格便宜。
方案二:采用LCD显示。
LCD液晶显示虽然具有丰富多样性、灵活性、电路简单、易于控制而且功耗小等优点,对于信息量多的系统,是比较适合的,但秒表的信息不需太多,但是价格稍贵。
鉴于上述原因及价格方面的考虑,我们采用方案一。
2.2 数字秒表数字秒表是本设计的核心的部分。
根据需要可采用以下两种方案实现:方案一:方案完全用软件实现数字秒表。
原理为:在单片机内部存储器设四个字节分别存放时钟的个、十、百、千信息。
利用定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的个位值加1;若秒值达到9,则将其清零,并将相应的十位字节值加1;若分值达到9,则清零十位字节,并将时字节值加1;若时值达到9,则将百位字节清零,并将字节值加1;若千值达到9,则清零千位字节。
该方案具有硬件电路简单的特点,不需要在额外的使用其它的芯片,且使用晶振可以使准确度很精确。
方案二:方案采用Dallas公司的专用时钟芯片DS1302。
该芯片内部采用石英晶体振荡器,其芯片精度不大于10ms/年,且具有完备的时钟闹钟功能,因此,可直接对其以用于显示或设置,使得软件编程相对简单。
为保证时钟在电网电压不足或突然掉电等突发情况下仍能正常工作,芯片内部包含锂电池。
基于单片机的秒表设计
基于52单片机的秒表设计1 单片机的应用领域目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种职能IC卡,名用豪华车辆的安全保障系统,摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
单片机广发应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个范畴:1.1 在智能仪器仪表上的应用单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用与仪器仪表中,结合不同类型的传感器,可实现诸如电压、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。
例如精密的测量设备(示波器,各种分析仪)。
1.2在工业控制中的应用用单片机可以构成形式多样的控制系统、数据采集系统。
例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二极管控制系统等。
1.3在家用电器中的应用可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子称量设备,五花八门,无所不在。
1.4在计算机网络和通信领域中的应用现代的单片机普遍具备通信接口,可以很方便的与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上实现了单片机智能控制,从手机、电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可以兼得移动电话,集群移动通信,无线电对讲机等。
百度多功能秒表的设计
多功能秒表的设计摘要本设计是通过使用单片机80C51来设计一个单片机控制的秒表系统。
利用单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及按键来设计计时器。
将软、硬件有机地结合起来,使得系统能够正确地进行加、减(倒)计时,数码管能够正确地显示时间。
在设计中定时器1用做1秒定时,从而实现每秒加1。
定时器0用做10毫秒定时,从而实现每10毫秒快加1。
中断0用做暂停键使用,中断1用做停止键使用。
该秒表可以每秒加一,每秒减一,快加1,快减1,独立存储四个数据并能进行查询。
在硬件设计中由于所需按键比较少,所以采用独立连接式电路,使用P0和P2口直接对两个数码管发送数据,在使用P0口时,由于输出级为漏级开路电路,若要驱动NMOS或其他拉电流负载时,引脚上应外接上拉电阻。
用软件法消除来抖动,LCD数码管采用共阴极的接法。
复位电路采用上电或开关复位电路,在电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。
时钟信号采用内部时钟法,在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。
由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。
目录1 概述 (2)1.1 设计意义 (2)1.2 设计任务 (2)1.3主要功能 (2)2 系统总体设计及硬件设计 (3)2.1单片机的设计 (3)2.2 电源 (3)2.3 钟及复位电路 (3)2.4 显示及键盘 (5)3 软件设计 (6)3.1主程序 (6)3.2设置子程序: (9)3.3加减1子程序 (11)3.4 快加减子程序 (14)4 PROTEUS软件仿真 (17)5 课程设计体会 (18)参考文献 (18)附1 源程序代码 (20)附2 秒表系统电气图 (26)1概述1.1 设计意义1、通过设计使学生进一步熟悉和掌握单片机的内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤;2、通过利用MCS-51单片机,理解单片机在自动化仪表中的作用以及掌握单片机的编程方法;3、通过设计一个简单的计算器数字输入及显示模拟系统,掌握单片机仿真软件Proteus的使用方法;4、掌握键盘和显示器在的单片机控制系统中的应用。
多功能数字秒表
摘要近年来随着科技的飞速发展,单片机的应用正在不断的走向深入。
本文阐述了基于单片机的数字电子秒表设计。
本设计主要特点是计时精度达到0.01s,具有多组数据记录功能,一键实现开始、暂停、清零功能。
解决了传统的由于计时精度不够造成的误差和不能记录多组数据局限性。
是各种体育竞赛的必备设备之一。
本设计的数字电子秒表系统采用AT89S52单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部控制电路来设计计时器。
将软、硬件有机地结合起来,使得系统能够实现六位LED显示,显示时间为0~59分59秒99毫秒,计时精度为0.01秒,能正确地进行计时,同时能记录10组时间,并能用上下翻动键对计时时间进行查询。
其中软件系统采用C语言编写程序,包括显示程序,定时中断服务,延时程序等,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。
关键词:单片机;数字电子秒表;仿真;LCDABSTRACTIn recent years, with the rapid development of science and technology, the application of SCM is unceasingly to the deep. This article elaborated the digital electronic stopwatch design based on single chip microcomputer. This design main characteristic is timing accuracy reached 0.01 s, has the function of multiple data record, a key to realize the start, pause, reset function. Solve the traditional due to timing error caused by the precision is not enough and can't record of data limitations. Is one of the necessary equipment of various sports competitions.The design of digital electronic stopwatch system USES AT89S52 single chip processor as the center, use the timer/counter timing and the principle of representation, combinedwith the display circuit, LED digital tube and external control circuit to design the timer. The software and hardware organically, enables the system to realize the six LED display, show time for 0 ~ 59 minutes 59 seconds 99 milliseconds, timing accuracy of 0.01 seconds, can correctly on time, at the same time can record 10 groups of time, and can turn up and down keys to inquires the clock time. Software using C language program, including display program, timer interrupt service, time delay procedures, hardware systems use PROTEUS powerful functions, simple and easy to observe, can be observed in the simulation of the actual working condition.Key words SCM; Digital electronic stopwatch; The simulation; LCD目录一、概述 (4)1、意义: (4)2、功能 (4)二、硬件电路设计及描述 (4)1、方案及设计要求: (4)2、仿真图、PCB板图、成品图 (6)3、芯片资料: (9)4、元件清单: (9)三、软件设计流程及描述 (10)1、程序流程图 (10)2、源程序代码 (10)四、测试 (22)五、总结 (23)参考文献 (23)致谢 (24)一、概述1、意义:时间是日常生活、体育竞技、工业、医学、航天等领域最常遇到的一个物理量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
郑州科技学院单片机课程设计题目基于单片机的多功能秒表学生姓名专业班级学号院(系)指导教师完成时间2015 年1 月16 日目录1 设计概述 (1)1.1设计目的 (1)1.2设计要求 (1)1.3设计意义 (1)2 系统总体方案及硬件设计 (2)2.1系统总体方案 (2)2.2硬件设计 (2)2.3时钟电路 (3)2.4复位电路 (4)2.5按键电路 (5)2.6显示电路 (6)3 软件设计 (7)3.1设计思路 (7)3.2程序流程框图设计 (7)4 PROTEUS软件仿真 (9)5 课程设计体会 (10)参考文献 (12)附录1:总体电路原理图 (13)附录2:元器件清单........................................... 错误!未定义书签。
附录3:实物图 . (15)附录4:源程序 (16)1 设计概述1.1 设计目的设计一个单片机控制的秒表系统。
利用单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及按键来设计秒表。
将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时具有开始/暂停,记录,上翻下翻,清零等功能。
1.2 设计要求(1)共四位LED显示,显示时间为00:00~59.99(2)共五个按键,分别是开始/暂停,记录,上翻,下翻,清零键;(3)能同时记录多个相对独立的时间并分别显示;(4)按上下翻按钮查看多个不同的计时值;1.3 设计意义(1)通过本次课程设计可以使我们进一步熟悉和掌握单片机内部结构和工作原理,了解单片机应用系统设计的基本步骤和方法。
(2)通过利用A T89C51单片机,理解单片机在自动化仪表中的作用以及掌握单片机的编程方法。
(3)通过设计一个简单的实际应用输入及显示模拟系统,掌握单片机仿真软件PROTEUS的使用方法。
(4)该实验通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零、功能,并能同时记录多个相对独立的时间利用翻页按钮查看多个不同的计时值,该种秒表在现实生活中应用广泛,具有现实意义。
2 系统总体方案及硬件设计2.1 系统总体方案本系统采用A T89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等来设计计时器,将软、硬件有机地结合起来。
其中软件系统采用汇编语言编写程序,包括显示,计数,中断,延时,按键消抖程序等,并在编程软件中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单且易于观察,在仿真中就可以观察到实际的工作状态。
2.2 硬件设计MCS-51系列单片机是8位单片机产品,89C51是其中的典型代表,基本模块包括以下几个部分:(1)CPU:89C51的CPU是8位的,另外89C51内部有1个位处理器(2)R0M:4KB的片内程序存储器,存放开发调试完成的应用程序(3)RAM:256B的片内数据存储器,容量小,但作用大(4)I/O口:P0-P3,共4个口32条双向且可位寻址的I/O口线(5)中断系统:共5个中断源,3个内部中断,2个外部中断(6)定时器/计数器:2个16位的可编程定时器/计数器(7)通用串行口:全双工通用异步接收器/发送器(8)振荡器:89C51的外接晶振与内部时钟振荡器为CPU提供时钟信号(9)总线控制:89C51对外提供若干控制总线,便于系统扩展89C51单片机引脚图如图2-1所示:图2-1 89C51单片机引脚图2.3 时钟电路89C51芯片内部有一个高增益反相放大器,用于构成振荡器。
引线XTAL1和XTAL2分别为反向放大器的输入和输出,两端跨接石英晶体及两个电容就可构成稳定的自激振荡器。
这里,我们选用51单片机12MHZ的内部振荡方式,电容器C1,C2起稳定振荡频率,并对振荡频率有微调作用,C1和C2可在20-100PF之间取值,这里取33P,则时钟电路图如图2-2所示:图2-4 按键电路图2.6显示电路显示电路既可以选用液晶显示器,也可以选用数码管显示。
我们采用的是数码管显示电路。
用四个共阴极LED显示,LED是七段式显示器,内部有7个条形发光二极管和1个小圆点发光二极管组成,根据各管的亮暗组合成字符。
在用数码管显示时,我们有静态和动态两种选择,静态显示程序简单,显示稳定,但是占用端口比较多;动态显示所使用的端口比较少,可以节省单片机的I/O口。
在设计中,我们采用LED动态显示,用P0口驱动显示。
由于P0口的输出级是开漏电路,用它驱动时需要外接上拉电阻才能输出高电平。
显示电路图如图2-5所示:1819303129912345678在软件设计中,一般采用模块化的程序设计方法,它具有明显的优点。
把一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于程序的设计和调试,优化和分工,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。
应用系统的程序由包含多个模块的主程序和各种子程序组成。
各程序模块都要完成一个明确的任务,实现某个具体的功能,如:计数、延时、和显示等,在具体需要时调用相应的模块即可。
用四位LED 数码管显示时间。
一个"开始/暂停"键,一个"复位"键,一个“记录”键,可同时记录八个相对独立的时间;一个“上翻”键,一个“下翻”键,查看八个不同的计时值。
五个按键分别通过五个端口控制秒表的五个功能。
3.2 程序流程框图设计程序流程框图如图3-1所示图3-1 程序流程框图4 PROTEUS软件仿真将以上程序清单导入先前做好的Proteus仿真电路中,汇编之后,按仿真键开始进行仿真。
仿真结果如图4-1所示:图4-1 仿真结果图仿真结果描述:按“开始”键,秒表开始计时;按“暂停”键,秒表暂停计时;按记录键,秒表记录时间,共可记录八个数值;按上翻下翻键,可查看这八个不同的计时值。
结论及进一步设想:根据实验要求,本次课设基本完成了设计要求,由于秒表系统并不一定仅仅局限于计时,定时等功能,还可以进行多项的扩展,可以利用AT89C51强大的扩展功能,进一步丰富秒表的功能,例如可设定计时时间,倒计时等等众多功能。
单片机以其强大的功能和良好的兼容性可以更好地为我们服务,通过查阅各种资料,多了解一些单片机有关知识,可以为以后的工作和学习生活创造更多的便利条件。
5 课程设计体会通过本次课程设计,我深刻地认识到自己有很多不足之处,比如在自主学习能力方面的不足,实际动手操作能力的不足等。
这次的单片机课程设计是理论与实践相结合的范例。
该设计从头到尾都要自己参与进来,熟悉了整个设计流程才能更快地设计出方案并完成设计。
本次课程设计我主要负责硬件电路的设计和查阅相关资料。
单片机课程早已结束,相关的知识已经很模糊,导致我在设计硬件电路中遇到了不少麻烦。
首先是不知从何入手。
虽然小组讨论后确定了秒表要实现的功能,可是没有相关理论知识的熟知和实践操作,画出硬件设计图对我而言毫无头绪。
查阅了与89C51单片机相关的资料也阅读了其他人单片机数字秒表的设计,慢慢地我开始了解其中原理,一步步设计出了硬件电路的各个部分,如晶体振荡电路,复位电路,按键电路,显示电路。
完成设计后需要运用PROTEUS 软件进行设计仿真,由于这是第一次接触这个软件,还不知怎样运用它,查阅该软件的相关资料及看过网上的视频后便开始着手画图,接触后觉得还是挺简单的。
这次的课程设计我与小组同学进行了交流和讨论,我们分工进行设计,从搜索资料到硬件、软件的调试,每一步、每一个细节都经过我们自己的思考,我们共同讨论各方案的比较选择、硬件、软件的设计和调试,最终拿出了我们的成果。
在做的过程中不但加深了我们对单片机理论知识的认识和理解还认识到了这门学科在应用方面的广阔前景。
实践是最有高度也是最能体现整体水平的整个设计过程中,我们不断地探索,设计出了很多不一样的硬件电路图,写过了很多不一样的程序,正如设计中如何能使硬件电路图简单明了,程序简单而准确,如何能准确的运行,都是通过与同学老师的交流,慢慢摸索出来的。
以上的不断探索,使我们进一步熟悉和掌握单片机内部结构和工作原理,了解单片机应用系统设计的基本步骤和方法。
通过利用AT89C51单片机,理解单片机在自动化仪表中的作用以及掌握单片机的编程方法。
通过设计一个简单的实际应用输入及显示模拟系统,掌握单片机仿真软件PROTEUS的使用方法。
我们设计的这种具有记录,上翻下翻功能的秒表在现实生活中应用广泛,如体育项目,因此本次课程设计具有现实意义,我很开心能将知识运用到实践中并在自主学习中收获到那么多。
参考文献[1] 余发山编著. 单片机原理及应用技术. 中国矿业大学出版社,2003年[2] 杨凌霄编著. 微型计算机原理及应用. 中国矿业大学出版社,2004年[3]杨宁编著. 单片机与控制技术. 北京航空航天大学出版社,2004年[4] 李群芳主编. 单片机原理、接口及应用. 清华大学出版社,2005年[5]胡汉才. 单片机原理及其接口技术(第二版). 清华大学出版社,2004[6] 李邓化. 智能检测技术及仪表. 科学出版社,2007[7]戴佳. 单片机C51语言应用程序设计. 电子工业出版社,2006[8]朱民雄. 计算机语言技术. 北京航空航天大学出版社,2002[9]李鸿. 单片机原理及应用. 湖南大学出版社,2004[10]刘建清. 单片机技术. 国防工业出版社, 2006附录1:总体电路原理图附录2:元器件清单附录3:实物图附录4:源程序/*1、程序目的:使用定时器学习秒表计时,记录8组数据,通过上翻、下翻键查看记录的数据2、硬件要求:数码管、晶振12MHz*/#include <reg52.h>Code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共阴数码管0-9code unsigned char tab1[]={0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xE F} ;//共阴数码管0-9带小数点sbit key1 = P1^0; //开始、暂停sbit key2 = P1^1; //记数sbit key3 = P1^2; //上翻sbit key4 = P1^3; //下翻sbit key5 = P1^4; //清零static unsigned char ms,sec;static unsigned char Sec[8],Ms[8];static int i ,j;void delay(unsigned int cnt) //延时程序{while(--cnt);}void main(){unsigned char key3_flag=0,key4_flag=0;TMOD |=0x01;//定时器010ms in12M crystal用于计时TH0=0xd8;TL0=0xf0;ET0=1;TR0=0;TMOD |=0x10; //定时器1用于动态扫描TH1=0xF8;TL1=0xf0;ET1=1;TR1=1;EA =1;sec=0; //初始化ms=0;P1=0xff;i=0;j=0;start:while(1){ //开始、暂停if(!key1) //判断是否按下{delay(50); //去抖if(!key1)while(!key1) //等待按键释放 {;}TR0=!TR0;} //记录if(!key2) //判断是否按下{delay(50); //去抖if(!key2){ while(!key2) //等待按键释放{;}if(i==8) //8组数据记录完毕{TR0=0; goto start;}Sec[i]= sec; //将数据存入数组Ms[i]= ms;i++;}}//上翻if(!key3){delay(50);if(!key3){ while(!key3){;}TR0=0;key3_flag=1; //按键3标志if(j==i)goto start;elseif(key4_flag)j+=2;key4_flag=0;sec=Sec[j];ms=Ms[j]; //显示数组里的内容j++;}}//下翻if(!key4){delay(50);if(!key4){while(!key4){;}TR0=0;key4_flag=1; //按键4标志if(j<0)goto start;elseif(key3_flag)j-=2;key3_flag=0;sec=Sec[j];ms=Ms[j]; //显示数组里的内容j--;}} //清零if(!key5){delay(50);if(!key5)while(!key5){;}TR0=0;ms=0;sec=0;for(i=0;i<8;i++){Sec[i]=0;Ms[i]=0;}i=0;}}}/********************************//* 定时中断1 *//********************************/void time1_isr(void) interrupt3using0//定时器1用来动态扫描{static unsigned char num;TH1=0xF8;//重入初值TL1=0xf0;switch(num){case0: P2=0xfe;P0=tab[sec/10];break;//显示秒十位case1: P2=0xfd;P0=tab1[sec%10];break; //显示秒个位case2: P2=0xfb;P0=tab[ms/10];break;//显示十位case3: P2=0xf7;P0=tab[ms%10];break; //显示个位default:break;}num++;if(num==4)num=0;}/********************************/ /* 定时中断0 */ /********************************/ void tim(void) interrupt1using1{TH0=0xd8;//重新赋值TL0=0xf0;ms++;//毫秒单元加1if(ms==100){ms=0;//等于100时归零sec++;//秒加1if(sec==60){sec=0;//秒等于60时归零 }}}。