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

合集下载

课程设计单片机秒表

课程设计单片机秒表

课程设计单片机秒表一、教学目标本课程旨在通过学习单片机秒表的设计与实现,让学生掌握单片机的基本原理、编程方法和实际应用。

具体的教学目标如下:1.了解单片机的基本结构和工作原理;2.掌握C语言编程的基本语法;3.掌握单片机秒表的设计方法和步骤。

4.能够使用单片机开发工具进行程序编写和调试;5.能够独立完成单片机秒表的设计和实现;6.能够对单片机程序进行优化和升级。

情感态度价值观目标:1.培养学生的创新意识和团队合作精神;2.培养学生对新技术的敏感度和持续学习的兴趣;3.培养学生对社会和科学的负责任态度。

二、教学内容本课程的教学内容主要包括以下几个部分:1.单片机的基本原理:介绍单片机的结构、工作原理和编程语言;2.C语言编程:讲解C语言的基本语法和编程技巧;3.单片机秒表的设计:讲解单片机秒表的设计方法和步骤,包括硬件设计和软件编程;4.实践操作:安排实验室实践环节,让学生亲手操作单片机,完成秒表的设计和实现。

三、教学方法为了达到上述教学目标,我们将采用以下教学方法:1.讲授法:讲解单片机的基本原理和C语言编程基础知识;2.案例分析法:分析具体的单片机秒表设计案例,让学生了解实际应用;3.实验法:安排实验室实践环节,让学生亲手操作单片机,完成秒表的设计和实现;4.讨论法:学生进行小组讨论,培养团队合作精神和创新意识。

四、教学资源为了支持本课程的教学内容和教学方法,我们将准备以下教学资源:1.教材:选择合适的单片机和C语言编程教材;2.参考书:提供相关的参考书籍,供学生自主学习;3.多媒体资料:制作PPT和教学视频,帮助学生更好地理解教学内容;4.实验设备:准备单片机开发板和实验工具,让学生进行实践操作。

五、教学评估为了全面、客观地评估学生的学习成果,我们将采用以下评估方式:1.平时表现:通过课堂参与、提问和小组讨论等方式,评估学生的学习态度和积极性;2.作业:布置相关的编程练习和设计任务,评估学生的编程能力和设计水平;3.考试:安排期末考试,测试学生对单片机秒表设计和C语言编程知识的掌握程度。

基于单片机的多功能秒表系统课程设计

基于单片机的多功能秒表系统课程设计

单片机课程设计报告多功能秒表系统设计姓名:学号:专业班级:指导老师:所在学院: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 系统总体方案及硬件设计 (4)2.1、电源 (5)2.2、复位电路 (5)2.3、晶体振荡电路 (6)2.4、显示电路 (7)2.5、键盘电路 (8)3 软件设计 (9)3.1、设计思想 (10)3.2、系统流程图 (15)4 Proteus软件仿真 (17)5 课程设计体会 (19)参考文献 (20)附1:源程序代码 (21)附2:系统原理图 (25)1 概述1.1单片机简介单片机是性能价格比高、体积小、对国民经济渗透力大、最有前途的微控制器。

基于51单片机的数字秒表课程设计、毕业设计论文

基于51单片机的数字秒表课程设计、毕业设计论文

基于51单片机的数字秒表课程设计、毕业设计论文三、课题名称基于51单片的数字秒表设计二、目的和意义1、通过本次课程设计可以灵活运用单片机的基础知识,依据课程设计内容,能够完成从硬件电路图设计,到电路搭建焊接,再到软件编程及系统调试实现系统功能,完成课程设计,加深对单片机基础知识的理解,并灵活运用,将各门知识综合应用。

2、本次课程设计还可以通过上网查询器件资料,培养对新知识新技术的独立的学习能力和应用能力。

3、在这次课程设计中,我们运用到了很多一切所学的知识和一些很有用的软件和工具,如keil4编程软件、Proteus仿真软件、Visio软件、等。

4、通过独立完成一个小的数字秒表系统设计,从硬件设计到软件设计,增强分析问题、解决问题的能力,为日后的毕业设计及科研工作奠定良好的基础。

5、掌握51单片机软件编程知识、实现功能、设计方法,及KEIL软件使用方法;6、应用所学模拟电子线路的知识,掌握电路的设计与应用;7、熟悉PROTEUS的设计与仿真;8、STC——ISP的使用方法;9、掌握焊接电子元器件的方法以及查阅元件功能与参数的方法、步骤。

三、设计目标或任务要求1 、设计目标以单片机为核心,设计数字秒表。

通过硬件电路设计,软件设计,电路搭建,作品调试。

最后完成本次课程设计。

2 、设计要求1、计时范围:0~59分59.59秒,整数四位数和小数两位数显示;2、计时精度10毫秒;3、复位按钮,计时器清零,并做好下次及时准备;4、可以对三个对象(A、B)计时,具有启/停控制;5、设开始、停止A、停止B、显示A、显示B、复位按钮。

四、任务分析、设计方案1、任务分析数字电子秒表具有显示直观、读取方便、精度高等优点,在计时中广泛使用。

本设计用单片机组成数字电子秒表,力求结构简单、精度高为目标。

设计中包括硬件电路的设计和系统程序的设计。

其硬件电路主要有主控制器,计时与显示电路和回零、启动和停表电路等。

主控制器采用单片机89C52显示电路采用共阳极LED数码管显示计时时间。

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

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

基于单片机的秒表课程设计————————————————————————————————作者:————————————————————————————————日期:基于单片机的秒表课程设计姓名:班级:学号:专业:指导老师:年月日目录1、总体设计方案简介1.1设计课程任务1。

2系统分析1。

3系统方案1.4方案论证2、硬件设计2。

1控制芯片的介绍2.2硬件接线2。

2。

1硬件接线接口2。

2。

2硬件接线图3、软件设计3.1程序设计思路3.2流程图3.3源程序3.4仿真结果4、元件清单5、心得体会基于单片机的秒表课程设计摘要本设计的成品是在单片机最小系统的基础上增加显示电路和控制电路来完成数字式秒表的硬件电路的。

电子秒表电路主要由AT89S51单片机最小系统电路、七段数码管动态显示电路和控制电路组成,它能实现八段数码显示和计时,能通过控制电路控制时间的暂停和开始。

关键字:AT89S51 数码管最小系统1总体设计方案简介1。

1设计课题任务设计一个具有特定功能的数字式秒表。

用AT89C52设计一个2位LED 数码显示“秒表”,显示时间为00-59,另设计一个“开始”按钮和一个“复位”按钮。

按键说明:按“开始"按键,开始计数,数码管从00开始每秒自动加一;按“复位”按键,系统清零,数码管显示00。

1.2系统分析设计的电路主要是能多次计时,计时的多少通过显示电路出来,设计框图如图所示;控制部分技术和存储部显示部分1.3系统方案利用AT89C52单片机设计数显定时器。

此方案采用AT89C52单片机系统来实现。

AT89C52芯片内含8KB 的EEPROM ,不需要外扩展存储器,可是系统整体结构更为简单。

设计框图如图所示;1.4方案论证此方案是以AT89C52芯片为中心控制系统,可实现计时、清零等功能,大大提高了系统的智能化,也是的系统所测结果精度大大提高。

所以此方案可行。

2硬件设计2。

1控制芯片的介绍AT89S52是一种低功耗、高性能的片内含有4KB 快闪可编程/擦除只读存储器,的8位CMOS 微控制器,使用高密度、非易失存储技术制造,并外部控制开关AT89C52单 片 机七段数码显示与80S52引脚和指令系统完全兼容。

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

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

电气与自动化工程学院卓越工程师培养计划暑期实训报告题目秒表系统的设计年级11级专业自动化班级卓越班学号*********姓名俞雷地点大学生创新实验室日期2012年8月12日~2012年8月20日目录一、单片机简介............................................................................- 2 -二、设计目标................................................................................- 3 -1、设计目的: (3)2、具体操作: (3)三、硬件设计................................................................................- 4 -原理图:. (4)四、系统的软件设计....................................................................- 5 -1、软件整体设计思路: (5)2、软件流程图: (5)3、程序: (6)(1)数码管秒表显示程序: ...................................................- 6 -(2)1602液晶秒表显示程序:............................................ - 13 -五、系统的调试及设计结果..................................................... - 18 -1602液晶——秒表显示效果图:. (18)LED数码管——秒表显示效果图: (18)六、创新实验室课程设计小结................................................. - 19 -一、单片机简介单片机以其高可靠性、高性价比、低电压、低功耗等一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。

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

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

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

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

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

2、计时精度达到 001 秒。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

基于单片机的多功能秒表的课程设计报告书

基于单片机的多功能秒表的课程设计报告书

单片机课程设计题目基于单片机的多功能秒表目录1 设计总体方案 (1)1.1 设计要求与目的 (1)1.2 设计思路 (1)1.3工作原理 (2)1.4 功能说明 (2)2 主要元器件介绍 (3)2.1 AT89C51单片机 (3)2.2 四位共阴数码管 (5)3 系统硬件设计 (6)3.1 电源电路 (6)3.2 时钟电路 (6)3.3 复位电路 (7)3.4 显示电路 (7)3.5 键盘电路 (8)4 软件设计 (9)5 系统调试及结果分析 (11)6 总结 (12)参考文献 (13)附录1:总体电路原理图 (14)附录2:元器件清单 (15)附录3:实物图 (16)附录4:源程序 (17)1 设计总体方案1.1 设计要求与目的设计一个单片机控制的多功能秒表系统,利用单片机的定时器/计时器定时和计数的原理,结合显示电路、用四位共阴极LED数码管以及按键来设计秒表计时器,实现暂停与清零功能,并多次计数。

在设计系统前,我们主要考虑以下一些原则:节约元器件,尽量降低系统实现成本;硬件电路尽量简单,使得硬件实现、问题检查、软件编程以及系统调试的难度都降低;能在软件上实现,使芯片利用率尽可能高;软件设计方案要优化,使得做成实物尽可能简单,方便仿真与检测;设计方案要和当前的试验平台相应;充分利用各种资源,尽量采用成熟与经典的电路。

1.2 设计思路因为秒表的设计相对较为简单,因此在软件设计中我们一般采用模块化程序设计的方法。

模块是一个具有独立功能的程序,可以单独设计、调试与管理,模块可以分为功能模块和控制模块两类。

我们通过模块化程序设计可按适当的原则把一个情况复杂、规模较大的程序划分为一个个较小的、功能相关而又相对独立的模块。

根据电子秒表的设计要求,主要设计一个计数系统、译码驱动、数码显示系统、控制系统。

其主要核心技术在于产生秒表信号的计数脉冲与计数器之间的级联。

1.3工作原理本系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等来设计计时器,将软、硬件有机地结合起来。

基于单片机的电子秒表课程设计

基于单片机的电子秒表课程设计

基于单⽚机的电⼦秒表课程设计⽬录第⼀章绪论 (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)⼀、题⽬:基于单⽚机的电⼦秒表⼆、任务要求:本设计以MCS-51系列单⽚机为核⼼,采⽤常⽤电⼦器件设计,⼀个电源开关,两个按键,三位数码管显⽰,打开电源开关后显⽰8,每秒循环左移⼀位,按A键开始计时,实时显⽰所经历的时间,按B键停⽌计时并显⽰从开始到当前时刻的时间,要求精确到0.1秒,量程为0—99.9秒。

要求按键输⼊采⽤中断⽅式,按键A接INT0,B接INT1。

三、组内成员:XXXXXXXXXXXXXXXX四、指导⽼师:XXX2019.7.7第⼀章绪论1.1概述单⽚微型计算机简称单⽚机,⼜称微控制器,是微型计算机的⼀个重要分⽀。

单⽚机是20世纪七⼗年代中期发展起来的⼀种⼤规模集成电路芯⽚,是集CPU、RAM、ROM、I/O接⼝和终端系统与同⼀硅⽚的器件。

20世纪⼋⼗年代以来单⽚机发展迅速各类新产品不断涌现出现许多新产品,出现了许多⾼性能新型机种现已成为⼯业控制和各控制领域的⽀柱产业之⼀。

由于单⽚机功能功能强、体积⼩、可靠性好、价格便宜等独特优点因⽽受到⼈们的⾼度重视并取到了⼀系列的科研成果,成为传统⼯1.2设计⽬的加强对单⽚机和C51语⾔的认识,充分掌握和理解设计各部分的⼯作原理、设计过程、选择芯⽚器件、模块化编程等多项知识。

(1)⽤单⽚机模拟实现具体应⽤使个⼈设计系统能够真正使⽤。

(2)把理论知识与实践知识相结合,充分发挥个⼈能⼒,并在实践中得到锻炼。

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

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

单片机课程设计项目名称基于单片机的秒表设计专业班级通信102班学生姓名青瓜指导教师…摘要本课程设计的数字电子秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。

将软、硬件有机地结合起来,使得系统能够实现五位LED显示,显示时间为0~99.99秒,计时精度为0.01秒,能精确地进行计时,并可以随时暂停和开始。

软件系统采用C语言编写,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,硬件系统利用PROTEUS强大的功能来实现,简单且易于观察,在仿真中就可以观察到系统实际的工作状态。

关键词:AT89C51单片机;数字秒表;数码管AbstractThis course is designed digital electronic stopwatch system uses the AT89C51 microcontroller devices, the use of timer / counter timing and counting principle, combined with the display circuit LED digital tube as well as the external interrupt circuit designed timer. The hardware and software combine to enable the system to achieve five LED display, the display time of 99.99 seconds, the timing accuracy of 0.01 seconds, the correct timing, and the right to suspend and start. Software system using C language, including the display program, the timer interrupt service external interrupt service routine, delay procedures, hardware system to implement the use of the PROTEUS powerful functionality, simple cut easily observed in the simulation to the actual work can be observed status.Keywords: AT89C51 Microcontroller; Digital stopwatch; Digital tubes目录摘要 (II)Abstract .................................................................................................................................... I II 第1章绪论. (1)1.1 概述 (1)1.2 定时器术的研究现状 (1)1.2.1 定时器的应用 (1)1.2.2 定时器定时软件 (2)1.3 本文研究的意义 (2)第2章系统总体设计 (3)2.1 总体方案的设计 (3)2.2 系统总电路的设计 (3)第3章系统硬件设计 (5)3.1 单片机的选择 (5)3.2 显示电路的选择与设计 (6)3.3 复位电路模块 (8)3.4 系统总体设计 (8)第4章系统的软件设计 (10)第5章实物焊接、仿真与调试 (12)5.1 软件的仿真与调试 (12)5.2 硬件的安装与调试 (13)第6章结论 (14)致谢 (15)参考文献 (16)附录1....................................................................................................... 错误!未定义书签。

单片机秒表系统课程设计

单片机秒表系统课程设计

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

单片机数字秒表课程设计

单片机数字秒表课程设计

单片机数字秒表课程设计一、课程目标知识目标:1. 理解单片机的基本原理,掌握其编程方法;2. 学习并掌握计时器/计数器的原理和使用方法;3. 了解数字秒表的原理,学会设计简单的数字秒表电路。

技能目标:1. 能够运用所学知识,独立完成单片机数字秒表的编程和调试;2. 能够运用电子元件搭建简单的数字秒表电路,并进行功能测试;3. 培养动手实践能力,提高问题解决能力和团队协作能力。

情感态度价值观目标:1. 培养学生对单片机及电子制作的兴趣,激发创新意识;2. 培养学生严谨的科学态度,养成细致观察、精益求精的习惯;3. 培养学生团队合作精神,学会相互尊重、相互帮助。

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

学生特点:学生已具备一定的单片机基础知识,对编程和电子制作有一定的了解,但对实际应用尚缺乏经验。

教学要求:结合学生特点,注重理论与实践相结合,引导学生通过实践解决问题,提高学生的实际操作能力和创新思维。

将课程目标分解为具体的学习成果,以便于教学设计和评估。

1. 单片机基础理论回顾:主要包括单片机的内部结构、工作原理、指令系统等,为后续编程打下基础。

相关教材章节:第一章 单片机概述。

2. 计时器/计数器原理与使用:详细介绍计时器/计数器的工作原理、编程方法及应用。

相关教材章节:第三章 定时器/计数器。

3. 数字秒表的原理与设计:分析数字秒表的电路原理,学习如何利用单片机和外围元件设计数字秒表。

相关教材章节:第五章 数字电路设计。

4. 单片机编程与调试:学习使用编程软件,编写数字秒表的程序,并进行调试。

相关教材章节:第二章 单片机编程。

5. 实践操作:学生分组进行数字秒表的搭建、编程、调试及功能测试。

教学进度安排:1. 课时1:回顾单片机基础理论;2. 课时2:学习计时器/计数器原理与使用;3. 课时3:讲解数字秒表的原理与设计;4. 课时4:学习单片机编程与调试;5. 课时5-6:实践操作,完成数字秒表的设计与制作。

基于c语言单片机秒表课程设计

基于c语言单片机秒表课程设计

课程设计报告课程名称:单片机原理及应用报告题目:秒表学生姓名:所在学院:信息科学与工程学院专业班级:学生学号:指导教师:2013 年12 月25 日课程设计任务书摘要近年来随着科技的飞速发展,单片机的应用正在不断的走向深入,秒表计时器是电器制造,工业自动化控制、国防、实验室以及科研单位理想的计时仪器,它广泛应用于各种继电器、电磁开关,控制器、延时器、定时器等时间测试。

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

本设计主要特点是计时从00到99秒秒表系统,方便了在计时精度要求不高的情况下计时。

因为计时精度为1,所以系统电路比较简单。

另外硬件部分设置了开始、暂停、清零、复位按键,可以对秒表系统进行计时控制。

本设计的数字电子秒表系统采用AT89C51单片机位中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。

将软、硬件有机的相结合起来,使得系统能够实现两位LED显示,显示时间为00-99秒,计时精度为1秒,能正确地进行计时,同时能记录一次时间,其中软件系统采用C语言编写程序,包括显示程序,定时中断服务,延时程序等,并用KeiL中调试运行,硬件系统利用Proteus强大的功能来实现,简单且易于观察,在仿真中就可以观察到实际的工作状态。

关键词:单片机;数字电子秒表;仿真目录一、概述 (1)1.1设计目的 (1)1.2设计要求 (1)1.3设计意义 (1)二、系统总体方案及硬件设计 (1)2.1系统总体方案 (2)2.2硬件设计 (2)2.21晶体振荡电路 (2)2.22复位电路 (3)2.23按键电路 (3)2.24 显示电路 (4)2.25系统电路 (4)三、软件设计 (5)1.设计特点 (5)2.秒表设计源程序 (9)3.程序流程图 (10)四、结论与心得 (11)五、参考文献 (11)一、概述1.1设计目的设计一个单片机控制的秒表系统。

利用单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码以及按键来设计秒表。

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.1 单片机的发展概况单片机以其高可靠性、高性价比、低电压、低功耗等一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。

并且已经深入到工业生产的各个环节以及人民生活的各层次中,如车间流水线控制、自动化系统等、智能型家用电器(冰箱、空调、彩电)等。

管脚图如图1.1所示。

图1.1 AT89C52单片机引脚图(1) 电源地组Vcc和Vss;VCC—(40)脚接+5V电压;VSS—(20)脚接地(2) 时钟电路组XTAL1和XTAL2(3) 控制信号组RST/ALE/PSEN和EA(4) I/O端口P0, P1, P2和P3近来,单片机的发展尤为迅猛,并且趋于高智能化、存储器大量化、更多的外围电路内装化以及工艺上的多元化等方向,广泛应用于单机应用领域、多机应用领域、自动控制领域和智能化控制领域等。

单片机应用系统的结构通常分为三个层次,即单片机、单片机系统和单片机应用系统。

单片机通常指应用系统主处理机,即所选择的单片机器件等。

单片机系统指按照单片机的技术要求和嵌入对象的资源要求而构成的基本系统。

时钟电路、复位电路和扩展存储器等与单片机共同构成了单片机系统。

单片机应用系统指能满足嵌入对象要求的全部电路系统。

在单片机系统的基础上加上面向对象的接口电路,如前向通道、后向通道、人机交互通道(键盘、显示器、打印机等)和串行通信口(RS232)以及应用程序等。

单片机应用系统层次关系如图1.2所示。

图1.2 单片机应用系统三个层次的关系1.2 数字秒表的描述与分析1.21问题描述设计一个秒表,第一次按键,开始计数,数码管显示从00.00每10毫秒自动加1;第两二次按键,系统暂停计数,数码管显示当前的计数;第三次按键系统清零,数码管显示00.00 。

1.22设计要求1.使用四位数码管显示,显示时间00.00~99.99秒; 2.正常计数时,每10毫秒自动加1;3.一个按键(包括开始、暂停、清零),一个复位按键; 4.实现计数、复位、清零功能;单片机向后通道单片机系统单片机应用系统向前通道人机交互通道应用程序串行通信口5.单片机通电后,首先初始化。

基于单片机的电子秒表设计

基于单片机的电子秒表设计

目录第一章绪论 (1)1.1 秒表及其发展现状 (1)1.2 设计目的及意义 (1)1.3 设计内容 (1)1.4 课题设计要求 (1)第二章硬件设计 (2)2.1 总体方案的设计 (2)2.2 单片机的选择 (3)2.2.1 AT89C51单片机性能介绍 (4)2.2.2 单片机最小系统 (6)2.3 显示电路的选择与设计 (8)2.4 按键电路的选择与设计 (11)2.5 时钟电路的选择与设计 (12)2.6 系统总电路的设计 (13)第三章软件设计 (15)3.1 程序设计思想 (15)3.2 程序框 (16)3.3 源程序及说明 (17)第四章系统的仿真与调试 (18)4.1 硬件的调试 (18)4.1.1 排除元器件失效 (18)4.1.2 排除电源故障 (18)4.1.3 联机仿真调试 (18)4.2 软件的仿真与调试 (18)4.2.1 Proteus简介 (18)4.2.2 软件的仿真 (19)4.2.3 软件的调试 (19)结论 (21)致谢 (22)参考文献 (23)附录源程序及说明 (24)摘要电子秒表在生活中的应用,它可广泛应用于对运动物体的速度、加速度的测量实验,还可用来验证牛顿第二定律、机械能守恒等物理实验,同时也适用于对时间测量精度要求较高的场合.测定短时间间隔的仪表。

有机械秒表和电子秒表两类。

机械秒表与机械手表相仿,但具有制动装置,可精确至百分之一秒;电子秒表用微型电池作能源,电子元件测量显示,可精确至千分之一秒。

广泛应用于科学研究、体育运动及国防等方面在当今非常注重工作效率的社会环境中,定时器能给我们的工作、生活以及娱乐带来很大的方便,充分利用定时器,能有效的加强我们的工作效率。

数字电子秒表是利用数字电子技术把模拟信号转换成数字信号来完成的,具有直观、准确性高的特点。

本设计的数字电子秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。

单片机课程设计秒表

单片机课程设计秒表

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

2. 使学生了解秒表的计时原理,掌握秒表的程序设计方法。

3. 帮助学生掌握单片机I/O口的使用,定时器/计数器的工作原理及其编程方法。

技能目标:1. 培养学生运用C语言进行单片机程序设计的能力,能够编写简单的秒表程序。

2. 培养学生动手实践能力,能够独立完成单片机秒表的硬件连接和程序下载。

3. 提高学生分析问题、解决问题的能力,能够对程序进行调试和优化。

情感态度价值观目标:1. 培养学生对单片机及嵌入式系统的兴趣,激发学生学习主动性和创新精神。

2. 培养学生团队合作意识,学会在团队中分享观点、沟通协作。

3. 培养学生严谨的科学态度和良好的学习习惯,注重实践与理论相结合。

课程性质分析:本课程为单片机原理与应用课程的一部分,以实践操作为主,理论讲解为辅。

针对学生特点,注重培养学生的学习兴趣和动手能力。

学生特点分析:学生为高中二年级学生,具备一定的电子基础和编程能力,对新鲜事物充满好奇心,喜欢动手实践。

教学要求:结合课程性质和学生特点,将课程目标分解为具体的学习成果,注重理论与实践相结合,确保学生能够掌握单片机秒表设计的相关知识和技能。

在教学过程中,关注学生的个体差异,提供个性化指导,以促进全体学生的全面发展。

二、教学内容1. 单片机基础理论:- 单片机原理与结构- 单片机的I/O口操作- 定时器/计数器原理与应用2. C语言编程基础:- 数据类型与运算符- 控制结构(循环、分支)- 函数的定义与调用3. 秒表程序设计:- 秒表的计时原理- 程序流程图设计- 编程实现秒表功能(启动、停止、复位、计次等)4. 硬件连接与调试:- 单片机与按键、显示器的连接方法- 程序下载与调试方法- 故障分析与排查技巧教学大纲安排:第一课时:单片机基础理论,介绍单片机原理、结构及I/O口操作第二课时:C语言编程基础,讲解数据类型、运算符、控制结构等第三课时:定时器/计数器原理与应用,分析秒表的计时原理第四课时:秒表程序设计,学习程序流程图设计及编程实现第五课时:硬件连接与调试,动手实践单片机秒表的硬件连接和程序下载,进行调试与优化教材章节关联:《单片机原理与应用》第三章:单片机I/O口编程《单片机原理与应用》第四章:定时器/计数器《C语言程序设计》第二章:数据类型与运算符《C语言程序设计》第三章:控制结构《C语言程序设计》第五章:函数教学内容确保科学性和系统性,结合课程目标和教学大纲,按照以上进度进行教学,使学生能够全面掌握单片机秒表设计与实现的相关知识与技能。

基于单片机的多功能秒表课程设计

基于单片机的多功能秒表课程设计
P2.7/A15
■ 32
21 22
P3.0/RXD P3.1/TXD
P3.2/INTL
P3.3/lNT 厂
P3.4/T0
P3.5/T1 P3.6/W R
P3.7/RD
图 4-1 仿真结果图 仿真结果描述:
按“开始”键,秒表开始计时;按“暂停”键,秒表暂停计时; 按记 录键,秒表记录时间,共可记录八个数值;按上翻下翻键,可 查看这八个 不同的计时值。 结论及进一步设想:
根据实验要求,本次课设基本完成了设计要求,由于秒表系统 并不一 定仅仅局限于计时,定时等功能,还可以进行多项的扩展, 可以利用 AT89C51 强大的扩展功能,进一步丰富秒表的功能,例如 可设定计时时 间,倒计时等等众多功能。单片机以其强大的功能和 良好的兼容性可以更
3.2 程序流程框图设计
精品文档,知识共享!
程序流程框图如图 3-1 所示 开始
初始化
P1.0=0?
Y
1r
P1.1=0?
―* 记录
够8个
P1.2=0? 上翻
P1.3=0?
N
> ---------
Y
1E
P1.4=0?
Y
下翻
1
清零
停止
图 3-1 程序流程框图
精品文档,知识共享!
4 PROTEUS 软件仿真
精品文档,知识共享!
1 设计概述
1.1 设计目的
设计一个单片机控制的秒表系统。利用单片机的定时器/计数器定 时和 记数的原理,结合显示电路、LED 数码管以及按键来设计秒表。 将软、硬件 有机地结合起来,使得系统能够正确地进行计时,同时具 有开始/暂停,记 录,上翻下翻,清零等功能。
1.2 设计要求

基于单片机的电子秒表的设计

基于单片机的电子秒表的设计

电子秒表的设计一、设计目的掌握定时器使用方法,掌握单片机管理键盘、显示器的方法。

二、技术指标12.按键启动、停止秒表计数。

三、设计方案基本定时时间为100us。

中断10000次为1秒。

秒和分逢60进1。

1/1000秒不显示,做四舍五入处理。

参考实验十八电子钟程序。

设计任务设计任务:利用LAB6000单片机实验箱实现数字秒表设计1.设计电子秒表,精度为0.01秒2.具有启动、停止、清零功能3.每到1秒蜂鸣提示,此功能可关闭。

基本定时时间为100us。

中断10000次为1秒。

秒和分逢60进1。

1/1000秒不显示,做四舍五入处理。

利用数码管扫描显示,将数据显示在数码管上。

程序是从左边开始显示,然后显示下一位,四位显示完后返回。

不断的循环扫描,由于扫描时间小于20ms,人眼有时间暂留现象,能看到同时亮。

还利用了键盘扫描程序,能够设置键盘按钮控制程序,本课程设计利用了15个按键,0~9十个数字输入按键,一个开始按键,一个暂停按键,一个复位清零按键,一个控制输入按键。

程序流程图程序模块功能1、主程序Start:设置初始化,包括初值的设置,计数器的设置和中断的设置。

2、中断程序T0Int、T1Int:分别实现正数计时和倒数计时功能。

3、数码管扫描及显示程序DisplayLED:利用数码管扫描显示,将数据显示在数码管上。

4、键盘扫描及读键值程序TestKey、GetKey:利用了键盘扫描程序,设置键盘按钮控制,一个开始按键,一个暂停按键,一个复位清零按键,一个控制输入按键。

程序清单OUTBIT equ 08002h ; 位控制口OUTSEG equ 08004h ; 段控制口IN equ 08001h ; 键盘读入口LEDBuf equ 60h ; 显示缓冲Minute equ 40hSecond equ 41hNSecond equ 42hMSecond equ 43hC100us equ 44hTick equ 100T100us equ 206org 0000hljmp Startorg 000bhajmp t0intorg 1bhajmp t1intT0Int:push PSWpush ACCdec C100usmov a, C100usjnz Exitmov C100us,#Tickinc Msecondmov a,Msecondcjne a,#10,Exitmov Msecond,#0mov a,Nsecondcjne a,#10,Exitmov Nsecond,#0inc Secondmov a, Secondcjne a, #60, Exitmov Second, #0inc Minutemov a, Minutecjne a, #60, Exitmov Minute, #0pop ACCpop PSWretiT1Int: push PSW ;恢卸? 倒数计时 push ACCdec C100usmov a, C100usjnz Exitmov C100us,#TickDEC Msecondmov a,Msecondcjne a,#0,Exitmov Msecond,#9DEC Nsecondmov a,Nsecondcjne a,#0,Exitmov Nsecond,#9mov a, Secondcjne a, #0, ExitJZ WWWW: CLR TR1SETB P1.0mov r4,#255qq1: call displayleddjnz r4,qq1CLR P1.0Exit:pop ACCpop PSWretiDelay: ; 延时子程序mov r7, #0DelayLoop:djnz r7, DelayLoopdjnz r6, DelayLoopretLEDMAP: ; 八段管显示码db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71h DisplayLED:mov r0, #LEDBufmov r1, #6 ; 共6个八段管mov r2, #00100000b ; 从左边开始显示Loop:mov dptr, #OUTBITmov a, #0movx @dptr, a ; 关所有八段管 mov a, @r0mov dptr, #OUTSEGmovx @dptr,amov dptr, #OUTBITmov a, r2movx @dptr, a ; 显示一位八段管 mov r6, #1call Delaymov a, r2 ; 显示下一位rr amov r2, ainc r0djnz r1, LoopretTestKey:mov dptr, #OUTBITmov a, #0 ;movx @dptr, a ; 输出线置为0 mov dptr, #INmovx a, @dptr ; 读入键状态cpl aanl a, #0fh ; 高四位不用retKeyTable: ; 键码定义db 16h, 15h, 14h, 0ffhdb 13h, 12h, 11h, 10hdb 0dh, 0ch, 0bh, 0ahdb 0eh, 03h, 06h, 09hdb 0fh, 02h, 05h, 08hdb 00h, 01h, 04h, 07hGetKey:mov dptr, #OUTBITmov P2, dphmov r0, #Low(IN)mov r1, #00100000bmov r2, #6KLoop:mov a, r1 ; 找出键所在列cpl amovx @dptr, acpl arr amov r1, a ; 下一列movx a, @r0cpl aanl a, #0fhjnz Goon1 ; 该列有键入djnz r2, KLoopmov r2, #0ffh ; 没有键按下, 返回 0ffh sjmp Exit1Goon1:mov r1, a ; 键值 = 列 X 4 + 行mov a, r2dec arl arl amov r2, a ; r2 = (r2-1)*4mov a, r1 ; r1中为读入的行值 mov r1, #4LoopC:rrc a ; 移位找出所在行jc Exit1inc r2 ; r2 = r2+ 行值djnz r1, LoopCExit1:mov a, r2 ; 取出键码mov dptr, #KeyTablemovc a, @a+dptrmov r2, aWaitRelease:mov dptr, #OUTBIT ; 等键释放clr amovx @dptr, amov r6, #10call Delaycall TestKeyjnz WaitReleasemov a, r2retToLED:mov dptr, #LEDMapmovc a, @a+dptrretStart:mov LEDBuf,#3fhmov LEDBuf+1,#0bfhmov LEDBuf+2,#3fhmov LEDBuf+3,#0bfhmov LEDBuf+4,#3fhmov LEDBuf+5,#3fhmov TMOD, #00100010b ; 模式2, 定时器 mov TH0, #T100usmov TL0, #T100usmov TH1, #T100usmov TL1, #T100usmov IE, #10001010b ; EA=1, IT0 = 1mov Minute, #0mov Second, #0mov NSecond, #0mov MSecond, #0mov C100us, #Tickclr p1.0MLoop: call DisplayLEDcall loopdcall Testkeyjz MLoopcall Getkeycjne a,#11h,L0call ssajmp Mloopl0: cjne a,#15h,L1setb TR0L1: cjne a,#16h,L2clr TR0clr cmov a,C100ussubb a,#50jc L4ljmp MLoopL2: cjne a,#0ffh,L3mov Minute, #0mov Second, #0mov NSecond, #0 mov MSecond, #0 mov C100us, #Tick ljmp MLoopL4: ljmp NLoopL3:ljmp MLoop NLoop: inc Msecondmov a,Msecondcjne a,#10,MLoop mov Msecond,#0inc Nsecondmov a,Nsecondcjne a,#10,MLoop mov Nsecond,#0inc Secondmov a, Secondcjne a, #60, MLoop mov Second, #0inc Minutemov a, Minutecjne a, #60, MLoop mov Minute, #0retLoopd: mov a, Minutemov b, #10div abcall ToLEDmov LEDBuf, amov a, bcall ToLEDorl a, #80hmov LEDBuf+1, a mov a, Secondmov b, #10div abcall ToLEDmov LEDBuf+2, a mov a, bcall ToLEDorl a, #80hmov LEDBuf+3, a mov a, NSecondcall ToLEDmov LEDBuf+4, a mov a, MSecondcall ToLEDmov LEDBuf+5, a RETDLOOP: call DisplayLEDcall loopdcall Testkeyjz DLoopcall GetkeyCJNE A,#15H,l000 setb TR1L000: cjne a,#16h,L222 clr TR1clr cmov a,C100ussubb a,#50jc L444ljmp DLoopL222: cjne a,#0ffh,L333mov Minute, #00 mov Second, #00 mov Nsecond,#0mov MSecond, #0 mov C100us, #Tick ljmp startL444: ljmp ELoopL333: ljmp DLoop ELoop: dec Msecondmov a,Msecondcjne a,#0,DLoopmov Msecond,#9dec Nsecondmov a,Nsecondcjne a,#0,DLoopmov Nsecond,#9dec Secondmov a, Secondcjne a, #00, DLoop retss: call testkeyjz sscall getkeymov ledbuf+2,acall toledss1: call testkeyjz ss1call getkeymov ledbuf+3,acall toledMOV A,LEDBUF+2MOV B,#10MUL ABADD A,LEDBUF+3mov Minute, #0MOV SECOND,Amov NSecond, #9 mov MSecond, #9 mov C100us, #Tick qq: call displayledcall DLOOPretend硬件资源分配表。

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

基于单片机的秒表课程设计基于单片机的秒表课程设计姓名:班级:学号:专业:指导老师:年月日目录1、总体设计方案简介1.1设计课程任务1.2系统分析1.3系统方案1.4方案论证2、硬件设计2.1控制芯片的介绍2.2硬件接线2.2.1硬件接线接口2.2.2硬件接线图3、软件设计3.1程序设计思路3.2流程图3.3源程序3.4仿真结果4、元件清单5、心得体会基于单片机的秒表课程设计摘要本设计的成品是在单片机最小系统的基础上增加显示电路和控制电路来完成数字式秒表的硬件电路的。

电子秒表电路主要由AT89S51单片机最小系统电路、七段数码管动态显示电路和控制电路组成,它能实现八段数码显示和计时,能通过控制电路控制时间的暂停和开始。

关键字:AT89S51 数码管最小系统1总体设计方案简介1.1设计课题任务设计一个具有特定功能的数字式秒表。

用AT89C52设计一个2位LED 数码显示“秒表”,显示时间为00-59,另设计一个“开始”按钮和一个“复位”按钮。

按键说明:按“开始”按键,开始计数,数码管从00开始每秒自动加一;按“复位”按键,系统清零,数码管显示00。

1.2系统分析设计的电路主要是能多次计时,计时的多少通过显示电路出来,设计框图如图所示;控制部分技术和存储部显示部分1.3系统方案利用AT89C52单片机设计数显定时器。

此方案采用AT89C52单片机系统来实现。

AT89C52芯片内含8KB 的EEPROM ,不需要外扩展存储器,可是系统整体结构更为简单。

设计框图如图所示;1.4方案论证此方案是以AT89C52芯片为中心控制系统,可实现计时、清零等功能,大大提高了系统的智能化,也是的系统所测结果精度大大提高。

所以此方案可行。

2硬件设计2.1控制芯片的介绍AT89S52是一种低功耗、高性能的片内含有4KB 快闪可编程/擦除只读存储器,的8位CMOS 微控制器,使用高密度、非易失存储技术制造,外部控制开关AT89C52单 片 机七段数码显示并与80S52引脚和指令系统完全兼容。

主要性能:与MCS-51微控制器产品系列兼容。

片内有4KB可在线重复编程的快闪擦写存储器存储数据保存时间为10年宽工作电压范围:VCC可为2.7V到6V全静态工作:可从0Hz至16MHz程序存储器具有3级加密保护128*8位内部RAB32条可编程I/O线两个16位定时器/计数器中断结构具有5个中断源和2个优先级可编程全双串行通道空闲状态维持低功耗和掉电状态保存存储内容2.2硬件接线2.2.1硬件接线端口时钟引脚:XTAL1和XTAL2与内部的反相放大器构成一个振荡器,它提供单片机的时钟控制信号。

RST:复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

P2口:P2.6和P2.7端口分别控制数码管的十位和个位供电,当相应的端口变成低电平时,驱动相应的三极管会导通,+5V通过三极管给数码管相应的位供电,这是只要PO口送出数字的显示代码,数码管就能正常显示数字。

PO口:PO.O-PO.6端口用排线连接到数码管显示模块区域中的A-G端口上;PO.O对应着A,......,PO.6对应着G。

P0.7接高电平。

P1.0接“开始”按键2.2.2硬件接线图(见附录图)3软件设计3.1程序设计思路在硬件的基础上,可以通过软件完成数字式秒表的设计。

我先用了矩阵键盘上的任意两个独立按键作为控制键。

用一个键去控制计时的开始;用一个键做计时的清零按键。

用按键扫描的方式判断按键是否按下。

用动态显示的方法扫描秒表的计数,显示所记下的数。

用中断的方法来进行计时加1,每10ms中断一次进行重新赋值并加1,当10ms单元达到10,就令该单元赋0,并让100ms单元加1,以此类推。

3.2流程图1主程序流程图程序开程序初开个中P1.0关定时器调用显示P1.0=开定时器3.3源程序FIRST EQU P2.7 ;第一位数码管的位控制SECOND EQU P2.6 ;第二位数码管的位控制SEC EQU 00H ;1S到的标记UALUE EQU 21H ;秒计数器COUNT EQU 22H ;软件计数器DISPBUF1 EQU 5EH ;5EH是显示缓冲区DISPBUF2 EQU 5FH ;5EF是显示缓冲区HIDDEN EQU 10 ;消隐码在字型码表的第10位ORG 0000HLJMP START1ORG 000BHLJMP INT_T0ORG 0100HSTART1:JB P1.0,START1LJMP STARTSTART:MOV SP,#5FH ;设置堆栈指针初值MOV VALUE,#0 ;秒计数器MOV COUNT,#0 ;软件计数器MOV DISPBUF1,#0 ;显示缓冲区填充0MOV DISPBUF2,#0 ; 显示缓冲区填充0MOV TMOD,#01HMOV TH0,#0ECH ;取60536的高8位,60536=65536-10000*6/12定时器初值,定时时间10msMOV TL0,#98H ; 取60536的高8位,60536=65536-10000*6/12定时器初值,定时时间10msSETB ET0 ;开T0中断SETB TR0 ;定时器T0开始运行CLR SECSETB EA ;开总中断LOOP:JBC SEC,NEXT ;1s到,消除1s到的标记LCALL DISP ;1s未到,调用显示程序SJMP LOOP ;继续循环NEXT:MOV A,VALVE ;获得秒的数值MOV B,#10DIV AB ;二进制转化为十进制,十位和个位分别送显示缓冲区JZ NEXT1 ;如果A中值是0,高位0消隐SJMP NEXT2 ;否则直接送去显示NEXT1:MOV A,#HIDDENNEXT2:MOV DISPBUF1,AMOV DISPBUF2,B ;个位送显示缓冲区LCALL DISPLJMP LOOP ;主程序到此结束DISP: : 显示子程序PUSH ACC ;ACC入栈PUSH PSW ;PSW入栈MOV A,DISPBUF1 ;取第一个带显示数MOV DPTR,#DISPTAB ;字型表首地址MOVC A,@A+DPTR ;取字形码MOV P0,A ;将字型码送P0位CLR FIRST ;开第一位显示器口LCALL DELAY ;延时5MSSETB FIRST ;关闭第一位显示器(开始准备第二位的数字)MOV A,DISPBUF2 ;去显示缓冲区的第二位MOV DPTR,#DISPTABMOVC A,@A+DPTRMOV P0,A ;将第二个字型码送P0口CLR SECOND ;开第二位显示器LCALL DELAY ;延时SETB SECOND ;关第二位显示器POP PSWPOP ACCRET ;显示程序结束DELAY:;以下是延时程序PUSH PSW ;5ms延时程序SETB RSOMOV R7,#50D1: MOV R6,#50D2: DJNZ R6,$DJNZ R7,D1POP PSWRETDISPTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH ;显示字型表,最后一个OFFH是消隐码,它是表中的第11位元素INT_T0: ;定时中断处理PUSH ACCPUSH PSW ;中断保护MOV TH0,#OECHMOV TLH,#98H ;定时计数器重置初值INC COUNT ;软件计数器加一MOV A,COUNTCJNE A,#100,INT_RETMOV COUNT,#0 ;计到100,软件计数器清零SETB SEC ;将秒标志置位一INC VALVE ;秒的值加一MOV A,VALVECJNE A,#60,INT_RETMOV VALVE,#0INT_RET: POP PSWPOP ACCRETIEND4元件清单元件名数量AT89C52 1八段数码管 2NPN三极管 212M晶振 1按键 2330Ω电阻9200Ω电阻 1无极性电容(30pf) 2电解电容(10U/25V) 15心得体会本文主要从硬件方面说明设计的总体思路和设计的实现过程,预期的设计目的是:能够实现秒表的基本功能,正常显示计数。

在设计中有好多问题都是因为理论知识不扎实,在有些管脚的置零和置一上概念模糊,这让我知道自己的理论知识学习的不够扎实,同时我明白要把所学的理论转化为实践需要一段努力学习的过程。

最近几年,科学发展很快,通过本次课程设计让我有了更深的认识,只有在设计制作的过程中不断的学习才能有更新的进步,不论我们在什么地方、什么岗位上都要以学为主、学以致用,才能把我们的工作做得更好。

相关文档
最新文档