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

合集下载

单片机秒表的课程设计

单片机秒表的课程设计

单片机秒表的课程设计一.设计题目用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. 学生能理解单片机的基本原理,掌握秒表编程的基本知识。

2. 学生能描述单片机内部定时器的功能和工作原理。

3. 学生能运用所学知识,编写出功能完整的秒表程序。

技能目标:1. 学生能运用C语言进行单片机程序设计,具备一定的编程能力。

2. 学生能够通过实验,学会使用开发板和编程软件进行程序下载和调试。

3. 学生能够通过团队协作,解决实际编程过程中遇到的问题。

情感态度价值观目标:1. 学生培养对单片机编程的兴趣,激发创新意识和实践欲望。

2. 学生在学习过程中,形成积极思考、主动探究的良好学习习惯。

3. 学生通过团队协作,培养沟通能力和团队精神,学会共同解决问题。

课程性质:本课程为实践性课程,以单片机基础知识为背景,结合秒表实例,培养学生的编程能力和实际操作能力。

学生特点:学生已具备一定的单片机基础知识和C语言编程能力,对实际操作感兴趣,喜欢动手实践。

教学要求:教师需结合课程目标,采用任务驱动法,引导学生主动参与,注重培养学生的动手能力和团队协作能力。

教学过程中,关注学生个体差异,给予个性化指导,确保学生能够达到预期的学习成果。

通过课程学习,使学生在知识、技能和情感态度价值观方面得到全面提升。

二、教学内容1. 理论部分:a. 单片机基础知识回顾:主要包括单片机内部结构、工作原理及常用寄存器的作用。

b. 定时器原理讲解:详细介绍单片机内部定时器的工作原理,包括计数器、定时器的设置和使用方法。

c. C语言编程基础:复习C语言在单片机编程中的应用,重点讲解与秒表编程相关的语法和技巧。

2. 实践部分:a. 秒表功能需求分析:明确秒表的功能需求,包括开始、停止、计次、清零等功能。

b. 程序设计:引导学生运用所学知识,编写秒表的程序代码。

c. 程序下载与调试:教授学生如何将编写好的程序下载到开发板上,并进行调试和优化。

3. 教学大纲:a. 第一课时:回顾单片机基础知识,讲解定时器原理,明确秒表功能需求。

单片机课程设计——秒表

单片机课程设计——秒表

单片机预习报告--------------秒表一、题目分析利用单片机内部定时/计数器和中断功能,实现分、秒、十分之一秒的正计时和倒计时功能,并将计时时间通过六位数码管实时动态显示出来。

倒计时模式中可通过键盘上的按键分别对分、秒进行定时设定,在计时过程中,可通过相应按钮进行暂停、开始,从而实现了六位倒计时秒表功能。

二.系统总体设计与框图系统框图如图下图所示。

该过程是:利用单片机8051实现计数功能,按键开关 K4按下,切换定时与计时。

定时范围在0到99分,计时范围在0到99.99.秒。

首先通过检测按键K4,来确定系统工作什么模式,计时模式有开始,暂停,复位3种功能,倒计时模式有,置数,开始,暂停,复位功能。

系统总体设计与框图三.解决方案:初始化为何种状态,开关是否按下,显示是定时状态还是计时状态。

若为定时状态,。

用6个共阴数码管LED显示起显示时间,采用动态显示的方法,P2.4、P2.5、P2.6、P2.7作为位选信号,P0口输出选段码。

键盘为独立式按键,分别接在P3.2、P3.3、P3.4、P3.5上。

K1为设置/启动功能键。

按下时,系统进入时间设置;再按下,系统启动。

K2为倒计时时间十位数设定键,按下时十位数字在0到9的范围。

K3倒计时个位数设定键,按下时,个位数字在0到9的范围。

K4为复位键。

K5为定时与计时的切换键,按下切换到计时状态,不按为定时状态。

P3.5连接发光二极管状态指示,系统时间设为定时状态熄灭,倒计时状态闪烁。

P3.6输出控制信号驱动蜂鸣器,倒计时时间到,蜂鸣器响。

开始正计时,正计时结束,蜂鸣器再响,程序结束。

四.各模块方案1.计时模式开始计时:利用外部中断1与定时中断1进行开始功能与计时功能暂停计时:利用外部中断关闭时实现暂停功能硬件复位:利用电容的冲电与放电特性实现硬件复位。

实现方法:用8051单片机做一个最小系统,计数器的复位功能通过单片机的硬件复位来实现。

秒表的显示用数码管显示,秒表的秒计数和循环通过程序控制单片机的输出来显示在数码管上。

单片机课程设计+基于单片机的秒表系统设计

单片机课程设计+基于单片机的秒表系统设计

目录一总体方案设计 (1)1.1 设计要求 (1)1.2 优点及意义 (1)1.3 初步设计思路 (1)二、硬件电路设计 (1)2.1 AT89C51单片机模块 (1)2.1.1 89C5单片机 (1)2.1.1单片机中断系统 (2)2.2 复位与时钟电路模块 (3)2.2.1晶振电路 (3)2.2.2 复位电路 (3)2.3按键模块 (3)2.4蜂鸣器模块 (4)①蜂鸣器工作原理 (4)2.5数码管模块 (4)三、软件设计 (5)3.1程序流程图 (5)3.2主程序设计 (5)3.2.1定义管脚、指示灯、蜂鸣器 (5)3.2.2启动与暂停 (5)3.2.3每秒报警 (7)3.2.4数码管显示 (7)3.3子程序设计 (8)3.3.1 定时器子程序设计 (8)总结 (9)参考文献 (10)附录 (11)一总体方案设计1.1 设计要求1、设计精度为0.1S的秒表系统。

2、设置启动、暂停、清零按钮。

3、设计每一秒钟都有提醒功能。

4、秒表的最长计时长度为9:59:59,超过此长度,报警。

1.2 优点及意义单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。

事实上单片机是世界上数量最多的计算机。

现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。

1.3 初步设计思路该实验要求进行计时并在数码管上显示时间,则可利用单片机微机仿真实验系统中的芯片AT89C51中的P3.2管脚做为外部中断0的入口地址,并实现“开始/停止”、“暂停”、“清零”按键的功能;定时器T0作为每秒加一的定时器。

单片机数字秒表课程设计

单片机数字秒表课程设计

单片机数字秒表课程设计一、课程目标单片机数字秒表课程设计旨在通过实践操作,使学生在知识与技能、过程与方法、情感态度价值观三方面得到全面发展。

1. 知识目标:(1)掌握单片机的基本原理和结构;(2)了解数字秒表的工作原理;(3)熟悉C语言编程和单片机编程环境。

2. 技能目标:(1)能够运用所学知识设计并实现一个简单的数字秒表;(2)培养动手实践能力,提高问题解决能力;(3)提高团队协作和沟通表达能力。

3. 情感态度价值观目标:(1)激发学生对单片机及电子技术的学习兴趣,培养科技创新精神;(2)培养学生严谨的科学态度和良好的学习习惯;(3)增强学生的自信心和成就感,培养克服困难的意志。

课程性质:本课程为实践性课程,注重理论联系实际,强调动手能力培养。

学生特点:本课程针对初中年级学生,他们在前期的学习中已具备一定的电学基础和编程知识,对新鲜事物充满好奇心。

教学要求:教师需结合学生特点,以引导为主,注重启发式教学,充分调动学生的积极性和主动性,将课程目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容根据课程目标,教学内容主要包括以下几部分:1. 单片机原理及结构:涉及单片机的内部组成、工作原理、引脚功能等,对应教材第二章内容。

2. 数字秒表原理:介绍数字秒表的基本工作原理,包括计时、计数、显示等,对应教材第四章内容。

3. C语言编程:复习C语言基础知识,重点掌握数组、循环、函数等编程技巧,对应教材第五章内容。

4. 单片机编程环境:学习如何使用编程软件(如Keil)进行程序编写、编译和下载,对应教材第六章内容。

5. 实践操作:设计并实现一个简单的数字秒表,分小组进行实践操作,培养动手能力。

教学大纲安排如下:第一周:回顾单片机原理及结构,学习数字秒表原理;第二周:复习C语言基础知识,学习单片机编程环境;第三周:编写数字秒表程序,进行调试;第四周:分组实践,完成数字秒表的设计与制作。

教学内容具有科学性和系统性,确保学生在掌握理论知识的基础上,通过实践操作提高综合能力。

单片机秒表课程设计

单片机秒表课程设计

单片机秒表课程设计目录1 设计课题题目、目旳 ..................................................................... . (4)1.1 设计课题题目 ..................................................................... .. (4)1.2 设计课题目旳 ..................................................................... .................... 4 2 单片机系统设计方案描述...................................................................... .................5 3 硬件原理图...................................................................... .........................................6 4 系统图流程 ..................................................................... .. (8)3.1 .主程序流程图...................................................................... .. (8)3.2 . 修改状态数据操作和数码管显示 (8)3.3 开始状态旳数码管显示 (9)3.4.中断INT0修改时间旳流程图 (10)5程序...................................................................... . (14).................................................................... ..............................................15 6 元件清单参照文献 ..................................................................... ........................................... 17 心得体会 ..................................................................... . (18)摘要51系列单片机是各单片机中最为经典和最有代表性旳一种。

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

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

单片机课程设计报告一、实验题目秒表系统设计——用两个数码管来显示秒表数据,一个显示秒,另一个显示十分之一秒。

二、系统总体功能用两个数码管来显示秒表数据,一个显示秒,另一个显示十分之一秒。

有一个按键来启动秒表的开始和结束。

增加一个清零按钮,计时结束后可以清零。

三、实验目的1、利用单片机定时器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。

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

3、通过本次课程设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握,对单片机实际的应用作进一步的了解。

4、通过本次试验,增强自己的动手能力。

认识单片机在日常生活中的应用的广泛性,实用性。

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

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

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

五、试验设计所需硬件(模拟硬件)Atmel89C51单片机芯片一个、LED数码显示管三个,低压电源、开关(按钮)两个、电阻、电容及导线若干。

由于条件限制本实验采用软件模拟硬件系统,采用proteus软件进行模拟设计及调试工作。

图2 Atmel89C52单片机外部引脚图六、试验设计原理图图3 试验设计电路图七、软件设计分析程序流程图:是 否 是 否定时器溢出中断对定时器重新赋值进行加一操作后重新计算时间往P0口和P2口送显示时间数码管显示中断返回主函数对定时器/计数器初始化始化程序开始判断P0^4口是否有低电平信号开中断并启动定时器开始、暂停或者继续 计数置零判断P0^7口是否有低电平信号 手动开关实验程序清单:#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar code table[]="2010-05-18";uchar code time[]="23:00:00";uchar code xi1[]="mon";uchar code xi2[]="tue";uchar code xi3[]="wed";uchar code xi4[]="thu";uchar code xi5[]="fri";uchar code xi6[]="sat";uchar code xi7[]="sun";sbit wr=P3^3;sbit rd=P3^5;sbit lcde=P3^4;uint i,shi,fen,miao,nian,yue,ri,count,num,x; void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void write_add(uchar add){rd=0;P0=add;lcde=1;delay(5);lcde=0;}void write_date(uchar date){rd=1;P0=date;lcde=1;delay(5);lcde=0;}void writesfm(uchar add,uchar date){uchar s,g;s=date/10;g=date%10;write_add(0x80+0x40+add);write_date(0x30+s);write_date(0x30+g);}void writenyr(uchar add,uchar date) {uchar s,g;s=date/10;g=date%10;write_add(0x80+0x00+add);write_date(0x30+s);write_date(0x30+g);}void xi(uchar a){if(a==1){write_add(0x80+0x00+10);for(i=0;i<3;i++){write_date(xi1[i]);delay(5);}}if(a==2){write_add(0x80+0x00+10);for(i=0;i<3;i++){write_date(xi2[i]);delay(5);}}if(a==3){write_add(0x80+0x00+10);for(i=0;i<3;i++){write_date(xi3[i]);delay(5);}}if(a==4){write_add(0x80+0x00+10); for(i=0;i<3;i++){write_date(xi4[i]);delay(5);}}if(a==5){write_add(0x80+0x00+10); for(i=0;i<3;i++){write_date(xi5[i]);delay(5);}}if(a==6){write_add(0x80+0x00+10); for(i=0;i<3;i++){write_date(xi6[i]);delay(5);}}if(a==7){write_add(0x80+0x00+10); for(i=0;i<3;i++){write_date(xi7[i]);delay(5);}}}void init(){lcde=0;wr=0;write_add(0x38);write_add(0x0c);write_add(0x06);write_add(0x01);write_add(0x80+0x00+0); for(i=0;i<10;i++){write_date(table[i]); delay(5);}write_add(0x80+0x00+10); for(i=0;i<3;i++){write_date(xi7[i]);delay(5);}write_add(0x80+0x40+0); for(i=0;i<8;i++){write_date(time[i]); delay(5);}}void main(){init();TMOD=0x01;TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;ET0=1;TR0=1;while(1){key();if(count==20){count=0;miao++;if(miao==60){miao=0;fen++;if(fen==60){fen=0;shi++;if(shi==24){shi=0;ri++;x++;xi(x);if(x==7){x=0;}if(ri==30){ri=0;yue++;if(yue==13){yue=0;nian++;if(nian==100){nian=0;}writenyr(2,nian);}writenyr(5,yue);}writenyr(8,ri);}writesfm(0,shi);}writesfm(3,fen);}writesfm(6,miao);}}}void t()interrupt 1{TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++;}八、试验设计总结通过这一周的课程设计,我对一些专业知识和电子设计有了更深的了解,同时也尝试着去应用自己的所掌握的知识。

单片机秒表系统课程设计

单片机秒表系统课程设计

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

2. 学生能掌握计时器的原理,学会编写简单的计时器程序。

3. 学生了解并掌握秒表系统的硬件连接,能解释各个部分的作用及其相互关系。

技能目标:1. 学生能够运用所学知识,设计并搭建一个简单的单片机秒表系统。

2. 学生能够编写程序,实现对秒表的启动、停止、计时的基本功能。

3. 学生通过动手实践,提高解决问题的能力和团队合作能力。

情感态度价值观目标:1. 学生通过本课程的学习,培养对单片机及电子制作的兴趣,激发创新意识。

2. 学生在学习过程中,培养严谨的科学态度,养成良好的实验操作习惯。

3. 学生通过小组合作,学会分享、交流,培养团队协作精神。

本课程针对高中电子技术课程,结合学生年龄特点和认知水平,注重理论与实践相结合,旨在提高学生的动手实践能力和创新能力。

课程目标具体、可衡量,既关注学生对单片机知识的掌握,又注重技能的培养和情感态度价值观的引导,为后续教学设计和评估提供明确方向。

二、教学内容本课程教学内容主要包括以下几部分:1. 单片机基础知识:介绍单片机的原理、结构和功能,重点讲解51单片机的内部资源及其在秒表系统中的应用。

2. 硬件设计:讲解秒表系统所需硬件,包括单片机、时钟电路、按键、显示器等,分析各部分硬件的功能及相互关系。

3. 软件编程:学习单片机编程语言(C语言),掌握计时器编程方法,编写秒表的启动、停止、计时的程序。

4. 系统调试与优化:学习如何对秒表系统进行调试和优化,提高系统稳定性。

教学内容安排如下:1. 第一周:单片机基础知识学习,了解51单片机的内部资源。

2. 第二周:硬件设计,分析秒表系统各部分硬件功能及连接方法。

3. 第三周:软件编程,编写秒表程序,实现基本功能。

4. 第四周:系统调试与优化,提高系统性能。

本教学内容参考教材相关章节,结合课程目标,确保教学内容具有科学性、系统性和实践性。

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

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

《单片机课程设计》设计课题:数字秒表系统设计学号:08312224姓名:伍兴勇专业:自动化指导教师:徐猛华、黄永忠目录一、课程设计目的 (2)二、设计任务与要求 (2)三、硬件框图结构 (2)四、元件图及说明 (3)五、电路原理图与说明 (8)六、设计流程图及源程序 (10)七、课程设计心得 (20)八、参考文献 (20)一、课程设计目的《单片机原理与应用》是一门实践性和实用性都很强的课程,学习的目的在于应用。

通过实践与理论相结合,巩固课程与书本上的理论知识框架,提高综合能力和动手能力,提高系统设计水平和启发创新思想,使的自己有独立设计完成一个典型的微机应用系统。

掌握系统设计的一般步骤和方法,掌握一个大系统中各个子系统之间的相互作用和相互制约关系。

掌握用流程图来分析问题,使程序的编写与调试简单、有序的进行。

最终达到提升自己的动手能力和分析解决问题的能力,学会用正确的方法去发现问题、分析问题、解决问题。

二、设计任务与要求1、设计任务:1)两路秒表时间计时功能;2)具有时间查询功能;3) 全部采用LED显示。

2、设计说明:1)可以自增系统功能;2)允许用MCS-51系列或其他类型的单片机;3)系统程序采用汇编或C语言编程;4)硬件原理图采用电子CAD绘制。

3、设计要求:利用实验机上提供的8279键盘电路,数码显示电路,设计一个电子钟,用小键盘控制电子钟的启停及瞬时值的存储与显示子程的调用。

电子钟做成如下格式:XX XX XX由左向右分别为:分、秒、毫秒1)A键:启动键,电子钟计时;2)B键:存储键,存储当前值;3)C键:清零键,显示00.00.00;4)D键:停止键,电子钟停止计;5)E键:显示键,可显示多路存储时间的功能。

三、硬件框图结构硬件框图流程如下图所示:四、元件图及说明1、8279芯片简介:芯片功能说明:8279按功能可分为:键盘功能块、显示功能块、控制功能块与CPU接口功能块。

(1)DB0~DB7:双向数据总线。

单片机秒表仿真课程设计

单片机秒表仿真课程设计

单片机秒表仿真课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理和秒表的工作机制;2. 学生能掌握单片机编程中的基本指令和功能实现;3. 学生能了解仿真软件的使用,并运用其完成单片机秒表的模拟。

技能目标:1. 学生能运用已学知识,独立完成单片机秒表的编程;2. 学生能通过仿真软件对编写好的程序进行测试,并优化程序;3. 学生能培养实际操作能力,将理论知识应用于实践。

情感态度价值观目标:1. 学生培养对单片机编程的兴趣,激发创新意识和探索精神;2. 学生在团队协作中,提高沟通能力,培养合作精神;3. 学生通过课程学习,认识到科技发展对社会的重要性,增强社会责任感。

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

学生特点:学生具备一定的单片机基础知识,对编程有初步了解,对实际操作有较高的兴趣。

教学要求:教师需结合学生特点,以引导为主,注重培养学生的动手能力和团队协作能力,将理论知识与实践相结合,提高学生的综合素养。

通过课程目标的分解,使学生在课程结束后能够达到预定的学习成果。

二、教学内容1. 单片机基础原理回顾:复习单片机的内部结构、工作原理及指令系统,重点掌握定时器/计数器的工作机制。

相关教材章节:第一章单片机概述,第二章单片机内部结构及工作原理,第三章指令系统及编程。

2. 秒表功能分析:详细讲解秒表的原理,包括秒、分、时的计数关系,以及如何通过单片机的定时器实现计时功能。

相关教材章节:第四章定时器/计数器,第六章单片机应用实例。

3. 单片机编程实现:教授如何使用汇编语言或C语言编写单片机程序,实现秒表的基本功能。

相关教材章节:第五章编程语言及编程技巧。

4. 仿真软件操作:介绍仿真软件的使用方法,使学生能够利用仿真软件对编写好的程序进行调试和优化。

相关教材章节:第七章仿真软件的使用。

5. 实践操作:指导学生进行实际操作,分组完成单片机秒表的编程、仿真和调试,培养学生的动手能力和团队协作精神。

51单片机秒表课程设计

51单片机秒表课程设计

51单片机秒表课程设计一、课程目标知识目标:1. 学生能理解51单片机的基本原理,掌握其编程方法。

2. 学生能掌握秒表功能的基本组成部分,如计时、暂停、复位等。

3. 学生能理解并应用中断、定时器等51单片机的相关知识。

技能目标:1. 学生能运用C语言编写51单片机程序,实现秒表功能。

2. 学生能通过实验操作,调试并优化程序,解决实际问题。

3. 学生能熟练使用相关开发工具和调试设备,如编译器、仿真器等。

情感态度价值观目标:1. 学生培养对单片机编程的兴趣,激发创新意识和实践欲望。

2. 学生培养良好的团队合作意识,学会互相交流、协作解决问题。

3. 学生培养严谨的科学态度,注重实验数据的真实性,勇于面对和克服困难。

课程性质:本课程为实践性课程,以项目为导向,结合理论知识与实际操作,培养学生的动手能力和编程思维。

学生特点:学生具备一定的电子基础和编程基础,对51单片机有一定了解,但对中断、定时器等高级功能尚不熟悉。

教学要求:教师需引导学生运用已学知识,通过实际操作,逐步掌握51单片机的编程和应用。

在教学过程中,注重培养学生的实际操作能力、问题解决能力和团队协作能力。

课程目标的设定旨在使学生在完成本项目后,能够独立设计并实现简单的单片机应用系统。

二、教学内容1. 理论知识:- 51单片机结构及工作原理- C语言编程基础:数据类型、运算符、控制语句等- 中断和定时器的原理与应用- 键盘输入与数码管显示原理2. 实践操作:- 使用Keil软件编写和编译程序- 使用STC89C52RC单片机进行程序下载和调试- 设计并实现秒表功能,包括计时、暂停、复位等3. 教学大纲:- 第一周:回顾51单片机基本原理,学习C语言编程基础- 第二周:学习中断和定时器知识,分析秒表功能需求- 第三周:设计程序框架,编写中断处理程序和定时器程序- 第四周:编写键盘输入和数码管显示程序,实现秒表功能- 第五周:项目调试、优化和展示4. 教材章节及内容:- 第一章:51单片机概述,了解单片机的发展及其应用- 第二章:C语言编程基础,掌握基本语法和数据类型- 第三章:中断和定时器,学习中断处理和定时器编程方法- 第四章:输入输出接口,学习键盘输入和数码管显示技术教学内容的选择和组织旨在保证学生能够系统地掌握51单片机编程及应用,注重理论与实践相结合,培养学生的实际操作能力。

  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公司出版的仿真软件。

相关文档
最新文档