单片机课程设计 秒表系统设计

合集下载

单片机秒表的课程设计

单片机秒表的课程设计

单片机秒表的课程设计一.设计题目用AT89C51设计一个2位LED数码显示秒表”,显示时间为00~99秒,每秒自动加一。

设计四个按键:一个“开始”按键,一个“复位”按键,一个“暂停”按键和一个“快加”按键。

二. 设计要求2.1 设计功能用AT89C51设计一个2位LED数码显示“秒表”,显示时间为00~99秒,每秒自动加一。

另设计一个“开始”按键和一个“复位”按键。

再增加一个“暂停”按键和一个“快加”按键(每10ms快速加一)。

2.2 按键说明(1)按“开始”按键,开始计数,数码管显示从00开始每秒自动加一;(2)按“复位”按键,系统清零,数码管显示00;(3)按“暂停”按键,系统暂停计数,数码管显示当时的计数;(4)按“快加”按键,系统每10ms快速加一,即数码显示管在原先的计数上快速加一。

三. 设计过程[1] 方案设计方案一:采用AT89C51单片机设计数显定时器和定时器。

本方案采用AT89C51单片机系统来实现。

单片机软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。

单片机系统可控制数码管显示秒表的值,并能用键盘输入暂停,并可实现报捷。

同时AT89C51芯片(内部含有8KB 的EEPROM),不需要外扩展存储器,可使系统整体结构更为简单。

设计框图如下图所示方案二:采用分立元件门电路和集成块电路设计数显定时器此方案可分为五个功能模块:秒脉冲发生器、计数器、译码显示电路、时序控制电路。

秒脉冲发生器:555振荡器振荡周期T=0.693(1R +22R )C=0.72,频率f=1.39Hz ;计数器和控制电路是系统的主要部分,计数器是用可加(减)的计数方法,它是十进制计数的方式,选用74LS192,计时器完成计时功能;控制电路具有直接控制计数器的启动计数、暂停/连续计数、查询所计数、译码显示图二方案论证:方案二是电子式,时间走的很准时,也能达到“快加”键的功能,显示时间是现代式的数码管显示,但要做好是有很大的难度的,线非常之多,元件分散、多,容易把线接错。

51单片机秒表课程设计

51单片机秒表课程设计

51单片机秒表课程设计一、课程目标知识目标:1. 理解51单片机的基本原理,掌握其编程方法;2. 学习并掌握定时器/计数器在51单片机中的应用,理解其工作原理;3. 了解秒表的功能需求,掌握秒表的程序设计方法。

技能目标:1. 能够独立完成51单片机的程序编写,具备基本的编程能力;2. 能够运用定时器/计数器进行计时,完成秒表的实时显示功能;3. 能够分析和解决程序运行过程中出现的问题,具备一定的调试能力。

情感态度价值观目标:1. 培养学生的团队协作精神,提高沟通与交流能力;2. 增强学生对电子制作的兴趣,激发创新意识;3. 培养学生严谨、细心的学习态度,养成良好的编程习惯。

分析课程性质、学生特点和教学要求,将课程目标分解为以下具体学习成果:1. 学生能够掌握51单片机的基本原理和编程方法;2. 学生能够运用定时器/计数器实现秒表的计时功能;3. 学生能够通过团队协作,共同完成秒表的程序设计和调试;4. 学生能够对编程过程中遇到的问题进行分析和解决,提高自身调试能力;5. 学生能够体验电子制作的乐趣,培养创新意识和严谨、细心的学习态度。

二、教学内容根据课程目标,教学内容主要包括以下几部分:1. 51单片机基础知识:- 单片机概述与51单片机的结构原理;- 51单片机的寄存器、I/O口及其编程方法;- 定时器/计数器的工作原理与应用。

2. 秒表功能需求分析:- 秒表的功能定义与需求分析;- 电路设计与硬件连接;- 软件设计框架及流程图。

3. 定时器/计数器的应用:- 定时器/计数器的工作模式;- 定时器/计数器的编程实现;- 秒表计时功能的具体实现。

4. 程序编写与调试:- 51单片机程序结构;- 程序编写技巧与调试方法;- 秒表程序编写与功能测试。

5. 教学案例与实战:- 案例分析:经典秒表程序剖析;- 实战练习:学生分组进行秒表的程序编写与调试;- 成果展示与评价。

教学内容安排和进度:第一课时:51单片机基础知识学习;第二课时:秒表功能需求分析与电路设计;第三课时:定时器/计数器的应用;第四课时:程序编写与调试;第五课时:教学案例与实战。

单片机系统课程设计--数字秒表设计

单片机系统课程设计--数字秒表设计

目录1 引言 (4)2 总体方案设计 (2)2.1硬件组成 (2)2.2 方案论证 (5)2.3 总体方案 (3)3 硬件电路设计 (4)3.1 单片机及其外围电路 (4)3.2 按键电路 (7)3.3 数码管显示电路 (8)4 系统软件设计 (10)4.1 主程序设计 (10)4.2 中断服务程序设计 (10)4.3 部分主要子程序的设计 (11)5 系统调试与总结 (11)5.1 系统功能测试 (11)5.2 总结 (11)参考文献 (12)附录A 系统原理图 (13)附录B 源程序 (14)1 引言随着现代社会的电子科技的迅速发展,要求我们要理论联系实际,数字电路课题设计的进行使我们有了这个非常好的机会。

本设计就是利用所学到的电子元器件将脉冲源用数码管显示出来以制成简易的数字秒表。

数字秒表是一种应用非常广泛的体育竞技计时工具,数码管显示的时间比钟显示得清晰直观、走时准确,并且还可以扩展出多种功能,本设计利用数量较少的芯片研制了一款带有计数功能的数字秒表,主要功能是计时并且可以记录十组成绩。

在现在的体育竞技比赛中,随着运动员的水平不断提高,差距也在不断缩小。

有些运动对时间精度的要求也越来越高,有时比赛冠亚军之间的差距只有几毫秒,因此就需要高精度的秒表来记录成绩。

2 总体方案设计2.1硬件组成图2.1所示为数字秒表硬件组成框图。

硬件主要包括:(1)控制器。

作为控制系统的核心,本课题在选取单片机时,充分借鉴了许多成形产品使用单片机的经验,并根据自己的实际情况,选择了使用STC89C52。

(2)键盘:需要四个按键,选用单片机实验板上的独立键盘即可,用于控制计时。

(3)数码管:对于数字显示电路,通常采用液晶显示或数码管显示。

本设计的显示电路采用8段数码管作为显示介质。

数码管显示可以分为静态显示和动态显示两种,本设计采用动态显示。

图2.1 硬件方框图2.2 方案论证(1)控制器控制器的选择是确定整个系统硬件方案的关键,它关系到其它几个部分方案的确定,对于数字秒表,控制器的可选方案有以下两种:方案一:纯硬件电路系统,各功能采用分离的硬件电路模块实现。

单片机课程设计_基于单片机的数字秒表设计

单片机课程设计_基于单片机的数字秒表设计

单片机课程设计_基于单片机的数字秒表设计在当今科技迅速发展的时代,电子设备的应用无处不在,其中数字秒表作为一种常见的计时工具,具有广泛的应用场景,如体育比赛、科学实验、工业生产等。

本次课程设计旨在基于单片机技术实现一个数字秒表,通过对硬件电路的设计和软件程序的编写,掌握单片机系统的开发流程和方法,提高实践动手能力和解决问题的能力。

一、设计要求1、能够实现秒表的启动、暂停、复位功能。

2、计时精度达到 001 秒。

3、能够通过数码管显示计时结果。

二、系统方案设计1、硬件设计单片机选型:选用常见的 STC89C52 单片机作为核心控制器,其具有性能稳定、价格低廉、易于编程等优点。

显示模块:采用 8 位共阴极数码管作为显示器件,通过动态扫描的方式实现数字的显示。

按键模块:设置三个独立按键,分别用于启动、暂停和复位操作。

时钟模块:使用单片机内部的定时器/计数器产生精确的时钟信号,实现计时功能。

2、软件设计主程序:负责系统的初始化、按键扫描和计时处理等。

中断服务程序:利用定时器中断实现 001 秒的定时,更新计时数据。

三、硬件电路设计1、单片机最小系统包括单片机芯片、晶振电路和复位电路。

晶振频率选择 12MHz,为单片机提供时钟信号。

复位电路采用上电复位和手动复位相结合的方式,确保系统能够可靠复位。

2、显示电路将 8 位数码管的段选引脚通过限流电阻连接到单片机的 P0 口,位选引脚通过三极管连接到单片机的 P2 口。

通过动态扫描的方式,依次点亮每个数码管,实现数字的显示。

3、按键电路三个按键分别连接到单片机的 P10、P11 和 P12 引脚,采用低电平有效。

当按键按下时,相应引脚的电平被拉低,单片机通过检测引脚电平的变化来判断按键的操作。

四、软件程序设计1、主程序流程系统初始化后,进入主循环。

在主循环中,不断扫描按键状态,如果检测到启动按键按下,则启动计时;如果检测到暂停按键按下,则暂停计时;如果检测到复位按键按下,则将计时数据清零。

单片机秒表设计课程设计报告

单片机秒表设计课程设计报告

单片机课程设计报告设计课题:秒表设计目录一、课程设计目的和意义和主要功能1、目的意义2、主要功能二、方案设计与论证1、时钟电路2、按钮电路3、显示电路4、单片机三、硬件电路设计1、STC89C52RC单片机的简单介绍2、接口电路3、硬件连线图四、软件设计:数字秒表流程图、数字秒表源程序五、性能分析六、结论和心得附件(源程序)电子秒表设计摘要:本次设计主要是用STC89C52RC设计一个2位的数码作为“秒表”。

主要是利用单片机的定时器/计数器定时和计数原理来设计简单的计时器系统,拥有正确的启动停止、时间调整,启动停止清零通过键盘按键控制,并同时可以用数码管显示数字0-59,每秒自动加1,能正确地进行计时。

其中软件系统采用汇编语言编写程序,包括显示程序,计数程序,中断,延时程序等,并在keil中调试运行,硬件系统利用单片机开发板能来实现,简单且易于观察,在现实生活中应用广泛,具有现实意义。

关键字:单片机定时器启动停止时间调整数码管键盘一、课程设计目的和意义和主要功能1、目的意义1、通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。

2、掌握定时器、外部中断的设置和编程原理。

3、通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。

2、主要功能显示时间为0-59秒,每1秒自动加1,另外设计一个“启动/停止”键、一个“时间调整”键。

能用按钮实现秒表启动、停止、时间调整。

二、方案设计与论证1、方案设计本设计要求进行计时并在数码管上显示时间,分为时钟电路、按钮电路、显示电路和单片机四大部分,这些模块中单片机占主控地位。

其模块电路如图2-1所示。

(1)、时钟电路常用的有内部时钟方式和外部时钟方式,但因为本设计中只需要一片单片机,所以采用内部时钟方式比较简单。

时钟电路如图所示,时钟电路的晶振频率越高,系统的时钟频率越高,单片机的运行速度也就越快。

晶振频率根据设计需要设为12MHz,又根据谐振性质,电路中的电容C1、C2选择为30pF左右。

89C51单片机课程设计之秒表设计实验报告

89C51单片机课程设计之秒表设计实验报告

单片机课程设计报告单片机秒表系统课程设计班级:课程名称:秒表设计成员:实训地点:北校机房实训时间:6月4日至6月15日目录1课程设计的目的和任务1.1 单片机秒表课程设计的概述1.2课程设计思路及描述1.3 课程设计任务和要求2硬件与软件的设计流程2.1系统硬件方案设计2.2所需元器件3 程序编写流程及课程设计效果3.1源程序及注释3.2原理图分析3.3课程设计效果4 心得体会1. 课程设计的目的和任务1.1单片机秒表课程设计的概述一、课程设计题目秒表系统设计——用STC89C51设计一个4位LED数码显示“秒表”,显示时间为000.0~9分59.9秒,每10毫秒自动加一,每1000毫秒自动加一秒。

二、增加功能增加一个“复位”按键(即清零),一个“暂停”和“开始”按键。

三、课程设计的难点单片机电子秒表需要解决几个主要问题,一是有关单片机定时器的使用;二是如何实现LED的动态扫描显示;三是如何对键盘输入进行编程;四是如何进行安装调试。

四、课程设计内容提要本课程利用单片机的定时器/计数器定时和记数的原理,结合集成电路芯片8051、LED数码管以及课程箱上的按键来设计计时器。

将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。

其中本课程设计有三个开关按键:其中key1按键按下去时开始计时,即秒表开始键,key2按键按下去时数码管清零,复位为“00.00”. key3按键按下去时数码管暂停。

五、课程设计的意义1)通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。

2)掌握定时器、外部中断的设置和编程原理。

3)通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。

4)该课程通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义1.2课程设计思路及描述该课程设计要求进行计时并在数码管上显示时间,则可利用MCS-51系列单片机的芯片AT89C51的P3.2,P3.3,RST作为按键的入口;定时器T1作为每0.1秒加一的定时器。

单片机控制秒表课程设计

单片机控制秒表课程设计

单片机控制秒表课程设计一、课程目标知识目标:1. 让学生理解单片机的基本原理和功能,掌握单片机在秒表设计中的应用。

2. 使学生掌握秒表计时原理,了解秒表各功能模块的工作原理。

3. 帮助学生掌握相关编程语言,实现单片机控制秒表的程序编写。

技能目标:1. 培养学生运用所学知识,设计并实现一个具有启动、停止、复位和计秒功能的单片机控制秒表。

2. 提高学生动手实践能力,学会使用编程软件、下载器和调试工具。

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

情感态度价值观目标:1. 培养学生热爱科学、勇于探索的精神,增强对单片机及嵌入式系统学习的兴趣。

2. 培养学生严谨、认真、负责的学习态度,养成良好的学习习惯。

3. 引导学生关注科技发展,了解单片机在日常生活和工业生产中的应用,提高创新意识。

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

通过本课程的学习,使学生能够将所学理论知识与实际应用相结合,提高解决实际问题的能力。

课程目标具体、可衡量,以便学生和教师能够清晰地了解课程的预期成果。

在教学过程中,需关注学生的个体差异,激发学生的学习兴趣,培养其动手实践能力和团队协作精神,为后续学习打下坚实基础。

二、教学内容本章节教学内容主要包括以下几部分:1. 单片机基本原理:讲解单片机的组成、工作原理和功能特点,使学生了解单片机在秒表设计中的核心作用。

2. 秒表计时原理:介绍秒表的计时原理,分析秒表的启动、停止、复位和计秒功能模块。

3. 编程语言及开发环境:学习单片机编程所需的语言(如C语言),介绍编程软件、下载器和调试工具的使用。

4. 单片机控制秒表设计:根据课程目标,制定以下详细教学大纲:(1)秒表功能需求分析:讨论并明确秒表的各项功能需求。

(2)硬件设计:讲解如何选用合适的单片机、时钟电路、按键、显示屏等硬件设备。

(3)软件设计:指导学生使用C语言编写单片机控制秒表的程序代码。

(4)系统调试:教授学生如何进行硬件和软件的调试,确保秒表的正常工作。

单片机秒表课程设计 (3)

单片机秒表课程设计 (3)

单片机秒表课程设计1. 引言秒表是一种常用的计时工具,可以用来测量时间的精确度。

在本课程设计中,我们将使用单片机来设计一个简单的秒表。

本文档将详细介绍该秒表的设计思路、硬件和软件实现以及测试结果。

2. 设计思路我们的设计目标是实现一个简单的秒表,包括计时、暂停和复位功能。

我们将采用基于单片机的设计,使用定时器和中断来实现计时。

具体的设计思路如下:•使用微控制器作为核心控制单元,我们选择XXXX型号的单片机。

•使用定时器模块来计时,通过设置定时器的计数频率来控制计时的精确度。

•使用外部中断按钮来控制计时的开始、暂停和复位操作。

•使用LED显示屏来显示计时结果。

3. 硬件设计3.1 硬件连接在硬件设计方面,我们需要将单片机与其他外部设备进行连接。

具体的连接方式如下:•将定时器模块的输出引脚连接到单片机的计时输入引脚。

•将外部中断按钮连接到单片机的中断输入引脚。

•将LED显示屏的控制引脚连接到单片机的输出引脚。

3.2 硬件组成本设计所需要的硬件组成如下:•单片机:XXXX型号微控制器•定时器模块•外部中断按钮•LED显示屏4. 软件设计4.1 主程序框架主程序的框架如下:#include <reg51.h>// 定义全局变量和标志位// 定时器中断函数// 外部中断中断函数// 主程序入口void main() {// 初始化定时器和中断// 循环检测按钮状态,并执行相应操作}4.2 定时器中断函数定时器中断函数用于实现计时功能,其主要逻辑如下:1.获取当前的计数值,并进行相关处理。

2.更新LED显示屏上的计时数据。

4.3 外部中断函数外部中断函数用于响应按钮的按压操作,其主要逻辑如下:1.判断按钮的按下类型,根据不同的按压类型执行相应的操作(开始、暂停或复位)。

2.根据操作类型更新相应的标志位。

4.4 功能函数除了定时器中断函数和外部中断函数之外,还可以编写一些功能函数来实现计时、暂停和复位等功能。

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

中南科技大学课程设计(论文)题目名称基于单片机的秒表系统设计课程名称单片机原理及在电气测控学科中的应用学生姓名学号系、专业电气工程系、09电气测控类指导教师2011年月日邵阳学院课程设计(论文)任务书注:1.此表由指导教师填写,经教研室审批,指导教师、学生签字后生效;2.此表1式3份,学生、指导教师、教研室各1份。

指导教师(签字):学生(签字):邵阳学院课程设计(论文)评阅表学生姓名学号系专业班级09电气测控一班题目名称基于单片机的秒表系统设计课程名称单片机原理及在电气测控学科中的应用一、学生自我总结二、指导教师评定注:1、本表是学生课程设计(论文)成绩评定的依据,装订在设计说明书(或论文)的“任务书”页后面;2、表中的“评分项目”及“权重”根据各系的考核细则和评分标准确定。

摘要近年来随着科技的飞速发展,单片机的应用正在不断的走向深入。

本文阐述了基于单片机的电子秒表设计。

本设计主要特点是计时精度达到0.1s,解决了传统的由于计时精度不够造成的误差和不公平性,是各种体育竞赛的必备设备之一。

本设计是基于AT89C51单片机设计的,我们是分为几个模块来设计的。

首先对秒表的硬件进行了设计,它包括时钟电路设计、复位电路设计以及外部显示电路。

利用89C51单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。

计时精度为0.1s。

其次是软件进行了设计,软件系统采用汇编语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等。

最后通过仿真调试,在proteus环境下建立了仿真模型,仿真结果表明本设计是正确的。

关键词:单片机;秒表;系统设计目录摘要 (I)1 课题内容要求及目的 (1)1.1课题内容 (1)1.2课题要求 (1)1.3 课题目的 (1)2 硬件设计 (2)2.1 AT89C51单片机简介 (2)2.2设计思路 (2)2.3硬件电路设计 (3)3软件设计 (5)3.1程序设计 (5)3.2源程序 (6)4系统调试与仿真 (11)4.1 proteus简介 (11)4.2仿真调试 (12)5总结 (13)参考文献 (14)致谢 (15)1 课题内容要求及目的1.1课题内容用AT89C51设计一个秒表,该秒表课可显示0.0~59.9秒的时间,进行相应的单片机硬件电路的设计并进行软件编程利用单片机定时器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。

综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。

通过本次系统设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握。

本系统利用单片机的定时器/计数器定时和记数的原理,通过采用proteus仿真软件来模拟实现。

模拟利用AT89C51单片机、LED数码管以及控件来控制秒表的计数以及计位!其中有三位数码管用来显示数据,显示秒(两位)和十分之一秒,十分之一秒的数码管计数从0~9,满十进一后显示秒的数码管的数字加一,并且十分之一秒显示清零重新从零计数。

计秒数码管采用三位的数码管,当计数超过范围是所有数码管全部清零重新计数。

1.2课题要求本课题是基于单片机的秒表系统设计,它的具体要求有以下几点:(1)用单片机AT89C51实现;(2)以0.1秒为最小单位进行显示;(3)秒表量程为0.0-59.9秒,用LED显示;(4)有清零、开始、停止功能、每到一秒有声音提示;1.3课题目的通过课程设计,进一步熟悉和掌握AT89C51单片机的结构及工作原理,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数的计算方法。

通过完成一个包括电路设计和程序开发的完整过程,进一步了解开发一单片机应用系统的全过程,通过此综合训练,为以后毕业设计打下一定的基础。

(1)通过本次课程设计加深对单片机课程的全面认识。

(2)掌握定时器、外部中断的设置和编程。

(3)该实验通过单片机的软件延时设计,设计简单的计时器系统,能正确的计时。

(4)通过本次课程设计能够对程序进行编辑,校验。

2.硬件设计2.1 AT89C51单片机简介AT89C51是一种低功耗、高性能的片内含有4KB快闪可编程/擦除只读存储器(FPEROM-Flash Programmable and Eraseable Read Only Memory)的8位CMOS微控制器,使用高密度、非易失存储技术制造,并且与89C51引脚和指令系统完全兼容。

引脚分别如图2.1所示。

图2.1 单片机引脚分布图图2.1所示的单片机是引脚双列直插封装方式,电源引脚40脚与接地脚20。

P0口作输入口使用时,应先向口锁存器写入1。

P1口是一个带有内部上拉电阻的8位双向I/O端口。

P1的输出缓存可驱动4个TTL输入。

P2口是一个带有内部上拉电阻的8位双向I/O端口。

P3口也是一个带有内部上拉电阻的8位双向I/O端口,P3端口还用于一些复用功能。

2.2设计思路这次的试验要求进行计时并且在数码管上显示时间,先要基本了解硬件内在结构,确定用p2并行端口进行数码管控制输入,使用P1.6,P1.5,P1.4进行选择0.1秒位,秒位,十位秒位,以P3.0为开始控制,P3.1为停止控制,P3.2为清零控制。

本次实验设计的基本思路是要求借助AT89C51单片机做出一个0-59.9s的秒表从十位秒到0.1位秒数这些计时的位数是存在一个内嵌的结构,就是0.1秒位满足条件然后进行跳位使秒位加一的过程,当0.1s到0.9s时该位自动清零并且秒位加一,秒位达到9时也自动清零并向十秒位加一。

当计数超过范围是所有数码管全部清零重新计数。

其次开始控制,停止控制,清零控制等功能,我们采用蜂鸣器进行提示,该信号由P1.0输出由7406非门与外加电源驱动,通过一个延时子程序加以控制。

最后就是根据硬件的条件进行编程,要求软硬件相互兼容。

这也是设计的关键之处。

因此需查阅相关书籍。

2.3硬件电路设计(1)时钟电路与复位电路利用12分频的晶振的一个机器周期为一微妙,通过循环延时产生0.1秒的延时,晶振电路原理及单片机复位电路图如图2.2所示。

图2.2 时钟与复位电路图单片机的时钟信号用来提供单片机内各种微操作的时间基准,89C51片内设有一个由反向放大器所构成的振荡电路,XTAL1和XTAL2分别为振荡电路的输入和输出端,89C51单片机的时钟信号通常用两种电路形式得到:内部振荡方式与外部振荡方式。

外部方式的时钟很少用,若要用时,只要将XTAL1接地,XTAL2接外部振荡器就行。

对于复位操作,我们采用手动复位,通过按钮开关使单片机进入复位状态,这是单片机能否正常工作的关键。

(2)硬件电路设计使用proteus软件设计的硬件电路包含了三个功能控制键和一个单片机复位按钮及蜂鸣器控制开关。

具体如图2.3所示。

图2.3 硬件电路连接图时钟电路与复位电路已在前边介绍,在此主要介绍端口电路,对于外显电路的设计我们采用四位数码管,事实上根据要求只用到三位,我们利用p1.4、p1.5、p1.6对数码管进行位选。

对于按钮开关电路,我们利用p3.0、p3.1、p3.2分别作为开始、停止及清零功能的电路接口。

对于声音提示我们采用蜂鸣器装置,信号由p1.0口接入经过非门和驱动电源构成。

3软件设计3.1程序设计根据课题内容,可做出主程序流程图如图3.1所示。

图3.1 主程序流程图流程图体现着设计程序的思路程序,开始后首先进行数据初始化然后是条件判断满足条件或不满足则进行对应的处理,如首先依次判断是否暂停是否清零,然后十分之一妙位计数,再判断是否进位,若是秒位就加一,秒位加一后进行声音提示,接着再判断是否有进位,若有则十秒位加一,若十秒位产生进位则重新计时。

3.2源程序:HAOMIAO EQU 34HMIAO EQU 35HSHIMIAO EQU 36HORG 0000HAJMP STARTORG 0030HSTART: CLR CSETB P1.6SETB P1.5SETB P1.4MOV HAOMIAO,#0MOV MIAO,#0MOV SHIMIAO,#0MOV DPTR,#TABLEMOV A,#00HMOVC A,@A+DPTRCLR P1.6MOV P2,AMOV A,#00HMOVC A,@A+DPTRCLR P1.4MOV P2,AMOV DPTR,#TABLE1MOV A,#00HMOVC A,@A+DPTRCLR P1.5MOV P2,ALCALL KAISHILCALL MAINSHIWEI : SETB P1.5MOV DPTR,#TABLE ;十秒位显示MOV MIAO,#0 ;使秒位从零位重新循环INC SHIMIAOMOV A,SHIMIAOCLR CSUBB A,#6JZ STARTAJMP MAINRETTINGZHI: MOV A,#00H ;判断是否有清零指MOV A,P3ANL A,#04HJZ STARTMOV A,#00H ;判断是否有停止指令MOV A,P3CLR CANL A,#02HLCALL YANSHIJZ MAINLJMP TINGZHISTART1 : LJMP STARTSHIWEI1: LJMP SHIWEIMAIN : SETB P1.5SETB P1.4SETB P1.6MOV A,#00H ; 判断是否有清零指令MOV A,P3ANL A,#04HJZ START1MOV A,#00H ;判断是否有停止指令MOV A,P3ANL A,#02HJZ TINGZHIMOV DPTR,#TABLE ; 0.1位秒显示I NC HAOMIAO ;加一,可查下一位数据MOV A, HAOMIAO ; 判断是否进位CLR CSUBB A,#10JZ MIAOZHENLCALL YANSHI ;延时0.1秒AJMP MAINRET ;继续计时MIAOZHEN:SETB P1.4MOV DPTR,#TABLE1 ;秒位显示MOV HAOMIAO,#0 ;使0.1秒从零重新循环INC MIAO ;加一,可查下一位数据MOV A,MIAO ;判断是否进位CLR CSUBB A,#10JZ SHIWEI1LCALL SNDAJMP MAIN ;返回0.1秒计YANSHI: MOV R6,#30DL2: MOV A,#00H ;判断是否有清零指令MOV A,P3ANL A,#04HJZ START1MOV DPTR,#TABLEMOV A,SHIMIAOMOVC A,@A+DPTRMOV P2,AACALL YIHAOMIAOSETB P1.6MOV A,HAOMIAOMOVC A,@A+DPTRCLR P1.4MOV P2,AACALL YIHAOMIAOSETB P1.4MOV DPTR,#TABLE1MOV A,MIAOMOVC A,@A+DPTRCLR P1.5MOV P2,AACALL YIHAOMIAOSETB P1.5DJNZ R6,DL2RET YIHAOMIAO:MOV R7,#250CV:NOPNOPDJNZ R7,CVRETKAISHI: MOV A,#0MOV A,P3ANL A,#01HJNZ KAISHIRETSND: SETB P1.0MOV R1,#1EHDL: MOV R0,#0F9HDL1: DJNZ R0,DL1DJNZ R1,DLCLR P1.0RETTABLE:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH, 6FH;0,1,2,3,4,5,6,7,8,9TABLE1:DB0BFH,086H,0DBH,0CFH,0E6H,0EDH,0FDH, 087H,0FFH,0EFHEND4系统调试与仿真4.1仿真软件简介(1)Proteus是英国Labcenter electronics公司出版的仿真软件。

相关文档
最新文档