智能短跑计时器的设计方案与实现.pdf

上传人:tbuqq 文档编号:4654460 上传时间:2019-11-24 格式:PDF 页数:31 大小:2.46MB
返回 下载 相关 举报
智能短跑计时器的设计方案与实现.pdf_第1页
第1页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《智能短跑计时器的设计方案与实现.pdf》由会员分享,可在线阅读,更多相关《智能短跑计时器的设计方案与实现.pdf(31页珍藏版)》请在三一文库上搜索。

1、1 / 31 毕业设计论文 基于智能短跑计时器的设计与实现 摘要 :随着人们精神生活水平的不断提高,全民健身运动的开展,在体育场 上,短跑工程中传统的手工计时往往难以满足要求,裁判要求较高,人为因素 2 / 31 大,精度低,大量数据的保存查阅方面等都有很大的困难。而智能短跑计时器 是体育信息化的重要设备, 它实现了田径短跑比赛计时的自动化和智能化,使计 时更方便、更精确、更高效。本文主要介绍了利用AT89S51单片机实现智能短 跑计时器的硬件设计和软件设计,详细介绍了计时器系统的监测设备的硬件设 计和利用中断、中断扩展以及定时器等软件技术实现智能计时的功能,以及智 能短跑计时器的使用方法和注

2、意事项。 关键词 :AT89S51 单片机中断定时器 sprint timer dased on intelligent design Abstract:In recent years, Chinas sports to flourish. With the 3 / 31 launching of the National Fitness Campaign, in sports the traditional manual testing time is often difficult to meet the Bi requirements, referees are higher, and

3、people of the great and input, low precision and large amounts of data stored on the access difficulties. With the constant development of electronic information industry in all walks of life in the SCM is widely used, microcontroller technology continues to mature technology to enable automatic tim

4、e Sprint application in reality. Used in the Sprint with electronic timing methods impartial, accurate, fast and efficient other features. Smart sprint timer is the sports information of the important equipment.It implements automatic time track and field sprint race and intelligence, track and fiel

5、d sprint race over the years to solve the difficult problem of artificial time, so timing is more simple, more convenient, more accurate and more efficient. In this paper, 89S51 microcontroller design using smart sprint timer hardware design and software design, details of the timer system of monito

6、ring equipment hardware design and use of interrupts, interrupt expansion and timer function of timer software technology, and Smart Dash timer use and precautions. keywords: microcontroller interrupt timer hardware design 目录 4 / 31 前言 1 绪论 1 1.1 课题背景 1 1.2 设计简介 2 2 系统设计方案 3 2.1 系统设计方案的提出3 2.1.1方案一

7、3 2.1.2方案二 4 2.1.3方案三 5 2.2 方案的确定 5 3 系统硬件设计 6 3.1 主电路设计 7 3.2 控制台电路设计 7 3.3 信号装置设计 8 3.4监测装置设计 10 3.4.1 监测装置激光发射器10 3.4.2 监测装置接收转换器10 3.4.3 监测装置与系统的连接11 4 系统软件实现 13 4.1主程序设计 13 4.2 抢跑处理 20 4.3 计时处理 23 4.4 成绩查询 25 5 系统说明及注意事项26 5.1 系统功能及性能 26 5.2 使用说明 27 5.3 注意事项 28 结论 28 致谢 29 参考文献 29 5 / 31 前言 在电子

8、技术飞速发展的今天,电子产品的人性化和智能化已经非常成熟, 其发展前景仍然不可估量。如今的人们需求的是一种能给自己带来方便的电子 产品,当然最好是人性化和智能化的,如何能做到智能化呢?单片机的引入就 是一个很好的例子。单片机又称单片微型计算机,也称为微控制器,是微型计 算机的一个重要分支,单片机是20 世纪 70 年代中期发展起来的一种大规模集 成电路芯片,是集CPU ,RAM ,ROM ,I/O 接口和中断系统于同一硅片上的器件。 单片机的诞生标志着计算机正式形成了计算机系统和嵌入式计算机系统两个分 支。尤其是美国Intel公司的 MCS-51系列单片机,由于其具有集成度高,处理 功能强,可

9、靠性高,系统结构简单,价格低廉,易于使用等特点,在工业控 制,智能仪器仪表,办公室自动化,家用电器等诸多领域得到广泛的应用。美 国 ATMEL公司推出的AT89S5x 系列在世界的8 位单片机市场中占有较大的份 额,是替代 MCS-51系列单片机的主要机型。该系列中的AT89S51单片机是目前 与 MCS-51单片机兼容的最具典型性、代表性的机种,同时也是各种增强型、扩 展型等衍生的基础。 近年来,随着人们生活水平的提高,社会经济的发展,人们开始考虑精神 生活的享受,并开始注重身体素质的提高。随着全民健身运动的深入,田径运 动已逐步融入到现代人们的生活中。目前,各种群众竞技性运动会的计时依旧

10、停留在传统的人工秒表阶段。人工秒表由于受到计时操作人员的反应差异以及 实践经验等主客观因素的影响,测量精度和一致性都无法保证。而随着现代电 子技术的广泛应用,电子计时仪已开始应用于田径比赛中,一定程度上提高了 工作效率和计时的准确性。然而,对于一般竞赛组织单位而言,电动计时系统 价格过于昂贵,从而严重制约了它的推广使用。 针对以上实际情况,本人利用单片机设计了一套新型的短跑计时系统。它 不仅能精确计时,准确地分辩各跑道运动员的比赛成绩,并能在运动员冲过终 点时记录该运动员的比赛成绩,实时性、精确性优于人工秒表。现场监测装置 由激光发射器和激光接受器组成,每个赛道上的起点和终点均安置一现场监测

11、装置,的现场监测装置负责监视参赛者是否抢跑,终点线上的现场监测装置负 责向控制台发送该参赛者成绩的信号。最后还介绍了智能短跑计时器的使用方 法和注意事项。另外,该装置还具有一致性好,使用便捷,价格低廉等优点。 6 / 31 第 1 章绪论 1.1 课题背景 单片微计算机子20 世纪 70 年代问世以来,已对人类社会产生了巨大的影响。 尤其是美国 Intel公司的 MCS-51系列单片机,由于其具有集成度高,处理功能 强,可靠性高,系统结构简单,价格低廉,易于使用等特点,在工业控制,智 能仪器仪表,办公室自动化,家用电器等诸多领域得到广泛的应用。 美国 ATMEL 公司推出的 AT89S5x系列

12、在世界的 8 位单片机市场中占有较大 的份额,是替代MCS-51系列单片机的主要机型。该系列中的AT89S51单片机是 目前与MCS-51单片机兼容的最具典型性、代表性的机种,同时也是各种增强 型、扩展型等衍生的基础。 单片机已在广阔的计算机应用领域中表现得淋漓尽致。从家用消费类电器 到复印机、打印机、扫描仪、传真机等办公自动化产品;从智能仪表、工业测 控装置到CT 、MRI 、 刀等医疗设备;从数码相机、摄录一体机到航天技术、 导航设备、现代军事装备;从形形色色的电子货币如电话卡、水电气卡到身份 识别卡、门禁控制卡、档案管理卡及相关读/ 写卡机等等都有单片机在里面扮演 重要角色。因此,单片机

13、已成为电子类工作者必须掌握的专业技术之一。单片 机的出现给电子技术智能化和微型化起到了很大的推动作用。 本文主要介绍了利用89S51 单片机实现智能短跑计时器的硬件设计和软件设 计,详细介绍了计时器系统的监测设备的硬件设计和利用中断、中断扩展以及 定时器等软件技术实现智能计时的功能,现场监测装置由激光发射器和激光接 受器组成,每个赛道上的起点和终点均安置一现场监测装置,起跑线上的现场 监测装置负责监视参赛者是否抢跑,终点线上的现场监测装置负责向控制台发 送该参赛者成绩的信号。最后还介绍了智能短跑计时器的使用方法和注意事 项。 7 / 31 1.2 设计简介 短跑规则规定每位选手必须采用蹲踞式起

14、跑及使用起跑器。在枪响之前发 令员要发“预备”及“各就位”口令让参赛者完成有关准备动作。在枪声响起 前参赛者有任何起跑动作,属起跑犯规。目前短跑采取的是“一次抢跑”起跑 原则,每次短跑比赛中只允许发生一次抢跑事件,第一次抢跑的运动员将不会 遭到处罚,而第二次抢跑的运动员则将被罚出场,即使第一次抢跑的不是他。 对于短跑赛道规则要求整个过程中参赛者不得越出其指定之赛道。 根据要求,以AT89C51单片机为核心设计短跑计时器。系统由现场监测装 置,控制信号装置,控制台等部分组成。现场监测装置由激光发射器和激光接 受器组成,每个赛道上的起点和终点均安置一现场监测装置,起跑线上的现场 监测装置负责监视参

15、赛者是否抢跑,终点线上的现场监测装置负责向控制台发 送该参赛者成绩的信号。控制信号装置有信号灯和语音设备组成,起跑线上的 每个赛道上均设置红、绿、黄三信号灯和语音设置,以便使每位参赛者都能公 平一致的得到发令信号。显示装置负责显示比赛已进行时间和比赛结束后显示 每个赛道上参赛者的成绩以及抢跑的赛道。控制台上配有有一系列按键,由操 作人员控制。当系统开启后系统处于就绪状态,赛道上只有红色信号灯亮,显 示器状态位显示“AA ”等待发令人员在控制台按键发令。第一轮当操作人员按 “命令”按键时显示状态位器显示“BB ”,起跑线上的语音设备都发出“嘀嘀 嘀”三声。若有人抢跑则切换到第二轮,若无人抢跑再按

16、“命令”按键信号灯 切换成黄色信号灯亮,显示器状态位显示“CC ”,语音装置发出“嘀嘀”两 声。第一轮按第二次“命令”键后,若有人抢跑则进入第二轮,若无人抢跑操 作人员再按“命令”按键,信号灯切换成绿色信号灯,同时语音装置发出 “嘀”一声,显示器状态位显示已用的时间,参赛者跑到终点时终点监测装置 向系统发出记录成绩的信号,系统把该赛道上的参赛者成绩储存下来。该轮比 赛结束后操作员按“显示结果”按键,信号灯变成红色,并显示第一道状态和 结果,按“ UP ”显示上一赛道状态和结果,若当前是第一赛道则显示第8 赛道 状态和结果,按“ DOWN”时显示下一赛道状态和成绩,若当前是第八赛道则显 示第一赛

17、道状态和结果。若第一轮中有人抢跑,则信号灯切换成红色信号灯, 显示器状态位显示“AA”,操作人员再按“命令”键则分别依次是“各就 位”、“预备”“起跑”,其情景和第一次相同。若第二轮还有人抢跑则起点 监测装置向系统发该赛道参赛者抢跑的信号,系统记录该赛道状态位为“E”。 若最终显示成绩时,某道的状态为“E”,则表明该赛道参赛者抢跑,若某道状 态为“ A”、时间为 0,则表示该赛道缺跑,某道的状态为“A”时间不为 0,则 表明该赛道参赛者成绩有效。 本次设计注重对单片机工作原理以及键盘控制及显示原理的理解,以便今 后自己在单片机领域的学习和开发打下基础,提高自己的动手能力和设计能 力,培养创新能

18、力,丰富自己的理论知识,做到理论和实践相结合。本次设计 的重要意义还在于对单片机的内部结构和工作状态做更进一步的了解,同时还 对单片机的接口技术,中断技术,定时/ 计数器技术,存储方式和控制方式作更 深层次的了解。此次设计更进一步了解基本电路的设计流程,提高自己的设计 理念,丰富自己的理论知识,巩固所学知识,使自己的动手动脑能力有更进一 8 / 31 步提高,为自己今后的学习和工作打好基础,为自己的专业技能打好基础。 2 系统设计方案 2.1 系统设计方案的提出 本设计是基于89S51 单片机的的键盘控制、显示电路、以及监测装置等方 面设计。从系统的设计功能上看,系统可分为三大部分,即监测部分

19、、键盘输 入控制部分和显示部分,其中监测部分是重点。而且该系统对实时性和精确度 要求特别高。针对每一个部分都有不同的设计方案,起初我拟定了下面几种方 案: 2.1.1方案一 现场监测装置利用条形码识别技术,通过无线电技术和系统传送信息,在 每一位参赛者的运动服上贴一张条形码,只需在起跑线和终点线分别放置一激 光扫描枪,当扫描到条形码时,监测装置通过无线电把扫描到的信息传送给系 统,系统收到后可以识别参赛者的身份信息,并可以进行一些控制。键盘控制 采用矩阵扫描键盘,可以用普通按键构成44 矩阵键盘,直接接到89S51单片 机的 P0口,高四位作为行,低四位作为列,通过软件完成键盘的扫描和定位。

20、显示部分采用动态显示,采用移位寄存器74LS164 和译码器 74LS138通过显示 驱动程序驱动七段数码管显示。此方案单片机的I/O 口占用较少,可以节约单 片机接口资源,理论上实现简单,可以扩展适用范围,可以应用到长跑,无人 数限制,使用方便。但实时性不好,激光枪扫到条形码后要进行处理,把信息 发送给系统后系统还需处理,技术要求高,精度要求高,抗干扰能力差,可靠 性不好,在运动员穿过的瞬间扫描枪可能无法扫描到运动员身上的条形码。此 外精密条形码扫描技术成本高,难以实现。 2.1.2方案二 由于激光具有相干性好、方向性强、发散角小、亮度高等特点,故每个监 测装置用一对激光发射 / 接收器来实

21、现,起跑线和终点线的每个赛道上都安装一 个监测装置,当无人经过监测装置时监测装置输出高电平给系统,当运动员经 过检测装置时,监测装置发送低电平给系统,监测装置与单片机相连采用“矩 阵式键盘扫描技术”可以将监测装置的输出口接成构成44 矩阵式,直接接 到 89S51单片机的 P0口,高四位作为行,低四位作为列,通过软件完成监测装 9 / 31 置的扫描和定位以确定赛道。键盘控制采用独立式键盘,每个按键的“ 接零端 “ 均接地,每个按键的“ 测试端 “ 各接一条输入线,通过检测输入线的电平状态就 可以很容易地判断哪个键被按下了,这种方法操作速度高而且软件结构很简 单。这种方法比较适合按键较少或操作

22、速度较高的场合。显示部分采用静态显 示方法,所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的接 口用于笔划段字形代码。这样单片机只要把要显示的字形代码发送到接口电 路,就不用管它了,直到要显示新的数据时,再发送新的字形码。使用这种方 法可以适合每一轮参赛人数较多的场合,外界干扰对系统的影响小,但系统对 监测装置的扫描定位影响系统的实时性,故该系统的精确度不高,而且占用单 片机大量的 I/O 接口,浪费单片机接口资源。 2.1.3方案三 该方案是对第二种方案的改进,现场监测装置的硬件设计采用第二种方案 的激光发射 / 接收器装置,起跑线和终点线的每个赛道上仍都安装一个监测装 置,但每个

23、监测装置的输出口加了一个非门作为输出。与单片机相连时单片机 的 P0 口和 P1.0, 、P1.1 口连接到 8 位串行口接收端RXD后与单片机的P3.2、 P3.3 口相连,采用外部中断源的扩展方法利用中断技术进行监测装置的定位, 然后进行起点抢跑或终点计时处理。键盘控制仍采用独立式键盘,每个按键的 “接零端”均接地,每个按键的“测试端”各接一条输入线,通过检测输入线 的电平状态就可以很容易地判断哪个键被按下了。显示装置采用第一种方案中 的动态显示,采用移位寄存器4094 显示驱动程序驱动七段数码管显示。该方案 设计的系统每轮至多允许8 名运动员同时跑,而且占用单片机I/O 口较多,但 该方

24、案的实时性好,可靠性好,易于实现,而且一般的田径跑道几乎最多只能 同时容纳 8 人,该方案能满足大多数场合田径短跑比赛计时要求。 2.2 方案的确定 好的设计方案能使事半功倍,能以最低的成本满足系统功能和性能上的要 求。不好的设计方案可能成本高,最致命的是功能和性能无法满足系统的要 求,致使系统无法正常工作。所以确定好的设计方案是顺利完成系统设计的前 提。 本设计对系统的实时性和可靠性要求较高,在很短的时间内可能有多个人 几乎同时到达终点,因此系统的精确度必须很高才能测出微小的差距,如果可 靠性和实时性不够高也可能造成系统无法在很短的时间内处理多个记录,造成 部分人的成绩丢失。因此,实时性和可

25、靠性的影响对该系统是致命的。 由于本次设计只是对所学知识的一次实践,设计要求简单,容易实现,成 本低。比较以上三种设计方案,第一种方案理论上非常完美,占用I/O口少, 节约单片机接口资源,理论上无空间限制、无人数限制,可以扩展适用范围, 可以应用到长跑,使用方便等优点但凭现有水平实现起来非常困难,而且抗干 扰能力差,实时性和可靠性很难保证。第二种方案抗干扰性,可靠性和实时性 都优于第一种方案,但各种性能还不能满足计时系统的要求。第三种虽然功能 上不如前两种方案,但能满足大多数情况下的使用要求,在性能上,实时性、 可靠性较好、精确度等很多指标都远远优于前两种方案,并且容易实现,成本 也较低。综上

26、,所以第三种设计方案比较适合本次设计,故选择第三种方案作 10 / 31 为本次设计的方案。 3 系统硬件设计 硬件的设计应考虑到软件的可实现性,只有软硬件达到最好的结合才能显 示出系统的优越性,所以软硬件设计要想结合。 根据设计任务与要求,可初步将系统分为五大功能模块:主电路模块、监 测装置电路模块,信号电路模块、控制台电路模块和 5V 稳压电源模块。 进一步细说,主电路选用AT89S51作为中央处理器;监测装置电路用一对 激光发射 / 接收器组成;控制电路由“发令键”、“成绩查询键”UP “键”、 “DOWN”键、“复位”键,5 个按键组成;信号电路由蜂鸣器、信号灯、显示 器组成,显示器由

27、七个数码管和4094 移位寄存器组成;音响电路用蜂鸣器; 稳压电路把电源电压稳定在 5V。系统整体的模块图如图3 所示。 图 3 系统整体模块图 3.1 主电路设计 主电路是整个系统的核心部分,以89S51 单片机为中央处理器。主电路模 块包括现场监测模块、信号模块、控制模块,复位模块和晶振电路模块等几部 分组成。 现场监测模块接P0 口、P3.2 和 P3.3。监测装置与系统连接采用外部中断 11 / 31 源扩展的连接方法,每个赛道的起点和终点都安装监测装置,同一赛道起点和 终点的两个监测装置经过保护电阻连接到单片机P0 口上的同一接口上,然后 P0口通过 8 位串行口接收端RXD 连接到

28、外部中断接口P3.2 和 P3.3 上。 信号模块接 P1口、P2口的 P2.0、P2.1、P2.2 和 P3口的 P3.0。P1 口连接 信号模块的显示器,其中P1.0、P1.1 连接道号状态显示器, P1.2、P1.3 连接 分显示器, P1.4、P1.5 连接秒显示器, P1.6、P1.7 连接毫秒显示器。P2 口 中, P2.0、P2.1、P2.2 口连接信号模块的红色信号灯、黄色信号灯和绿色信 号,其中 P2.0 连接红灯, P2.1 连接黄灯, P2.2 连接绿灯。 P3.0 连接蜂鸣器。 控制模块由 P2.3、P2.4、P2.5、P2.6、和 RST五个接口连接。其中, P2.3

29、 接“发令”按键, P2.4 连接“显示成绩”按键, P2.5连接”UP ”按键, P2.6 连接“ DOWN”按键。 3.2 控制台电路设计 控制台由“复位”按键电路、“命令”按键电路、“查看结果”按键电 路、“ UP ”按键电路以及“DOWN”按键电路组成。控制模块由P2.3、P2.4、 P2.5、P2.6、和 RST五个接口连接。 P2.3 接“发令”键, P2.4 连接“显示成绩”键, P2.5连接” UP ”键, P2.6 连接“ DOWN”键。 复位电路连接+V 电源、地线,通过电容、电阻、和按键接在单片机的 VCC 、RST 、VSS三接口上。复位电路是连接电源和单片机的通道,负

30、责向系统 提供电源和复位。其功能是复位到系统初始化状态,而且其功能的实现是通过 硬件电路来实现的。 图 3-2 是控制台电路的电路连接、信号灯电路的连接以及音响设备电路的 连接的原理图。 3.3 信号装置设计 信号电路由显示器,信号灯、音响设备组成。 显示装置用的设计采用移位寄存器4094 与数码杆连接的方法。其中,道号 状态显示器由两个4094 移位寄存器和两位数码管组成,接在P1.0、P1.1 两个 接口;分显示器也由两个4094 移位寄存器和两位数码管组成,接在P1.2、 P1.3 两个接口;秒显示器由两个4094 移位寄存器和两位数码管组成,接在 P1.4、P1.5 两个接口上;毫秒显

31、示器由三个4094 移位寄存器和三位数码管组 成,接在 P1.6、P1.7 两个接口。其连接原理图见图3-3。 信号灯由红色信号灯、黄色信号灯、绿色信号灯组成。其中P2.0 接红色信 号灯、 P2.1 接黄色信号灯、 P2.2 接绿色信号灯。 音响设备使用驱动电路连接蜂鸣器,用单片机的P3.0 接口连接蜂鸣器的驱 动设备。 信号灯和音响设备电路的连接见图3-2。 12 / 31 图 3-2 控制台电路原理图 13 / 31 图 3-3 显示器电路原理图 14 / 31 3.4 监测装置设计 由于激光具有相干性好、方向性强、发散角小、亮度高等特点,故每个监 测装置用一对激光发射 / 接收器来实现

32、。激光发射器放置在赛道的一侧,激光接 收器安置在赛道对应的另一侧,使激光发射器发射的激光束恰好射到激光接收 装置的感应器上。当系统启动后,无人经过监测装置时激光发射器发射的激光 直接照射到激光接收器的感应器件上,此时激光接收装置输出一个高电平给系 统。当运动员经过现场监测装置时,激光发射器到激光束接收器间的激光束被 运动员的身体遮挡住,此时激光接收装置的感应器上无法接收到激光的照射, 故此时激光接收装置输出低电平给系统。 3.4.1 监测装置激光发射器 激光发射器是现场监测装置的组成部分,负责产生激光信号并发送给激光 接收装置。图 3-2-1 是激光发射器装置的电路原理图。该装置由PIC12C

33、508A芯 片、9014 三极管、和激光发射管等器件连接组成,在+5V 的电压下,激光发射 管 LD发射出激光束。 图 3-4-1 激光发射器电路原理图 3.4.2 监测装置接收转换器 激光接收器是现场监测装置的重要组成部分,负责监视激光发射器和自己 之间的激光路是否畅通,并对检测到的信息进行处理,并发送给系统。若有物 体遮挡激光发射器和激光接收器之之间的激光路,则输出低电平表示有人通 过,若激光路畅通则输出高电平表示无运动员通过。 激光接收器的电路原理图如图3-4-2 所示。图中的 IRM8881V可对接收到的 激光信号进行放大,并具有解调功能,而锁相环则起译码作用。将锁相环的压 控振荡频率

34、调到由软件确定的编码频率,则当接收器接收到激光器发射的编码 调制信号并经接收器放大、解调译码后,在LM567 的 8 端输出一个低电平信 号,则在PNP晶体管的集电极输出一个高电平,从而完成对发射信号的接收和 15 / 31 把监测到的信号通过OUT发送给系统的任务。与单片机连接时,只需把OUT与 单片机的相关接口直接相连即可。 图 3-4-2 激光接收器的电路原理图 3.4.3 监测装置与系统的连接 设计好系统监测装置后的任务就是把现场监测装置和单片机连接起来该系 统有 8 个赛道,每个赛道上的起点和终点都要安置现场监测装置,起点的装置 负责监视运动员是否抢跑,终点上的监测装置负责监测运动员

35、是否到达终点。 但为了节省I/O 接口,可以把同一赛道上的两个监测装置的输出端连接到单片 机的同一接口,可以用软件来实现它们的功能。 8 个赛道上的监测装置与单片机上对应8 个接口连接后,监测装置就可以 把检测到的信息传送到单片机。然后采用外部中断源扩展方法把8 个接口和一 个 8 位串行口接收端RXD连接起来连接到单片机两外部中断接口上。这样当监 测器向系统发送消息后,系统就可以分辨出是哪一个接口接收到的信号,即可 以分辨出是哪一个赛道上的运动员。 图 3-2-3是监测装置与系统连接的示意图。如图监测装置与系统连接可采 用外部中断源扩展的连接方法,每个赛道的起点和终点都安装监测装置,同一 赛

36、道起点和终点的两个监测装置经过保护电阻连接到单片机P0口上的同一接口 上,然后 P0 口通过 8 位串行口接收端RXD连接到外部中断接口P3.2 和 P3.3 上。 16 / 31 图 3-4-3 监测装置连接电路原理图 4 系统软件实现 系统软件模块分为:主程序模块,抢跑中断1 处理模块,计时中断0 处理 模块,成绩查询模块 4.1 主程序设计 在硬件连接中, P0 口和现场监测装置相连并与P3.2、P3.3 相连。 P2.0 连 接红灯, P2.1 连接黄灯, P2.2 连接绿灯。 P2.3 连接“发令”键,P2.4 连接 “显示成绩”键,P2.5 连接” UP ”键, P2.6 连接“

37、DOWN”键。 P1.0、P1.1 连接道号状态显示器, P1.2、P1.3 连接分显示器, P1.4、P1.5 连接秒显示器, P1.6、P1.7 连接毫秒显示器。 P3.0 连接蜂鸣器。 存储单元中用, 30H 37H 单元依次存放18 赛道的道号和状态,38H 3FH存储 18 赛道用时的分钟数, 40H 47H存储 18 赛道用时的数钟, 48H 17 / 31 4FH存储 18 赛道用时的毫秒数。用51H存储开跑以来时间的分钟数,52H存 储秒数, 53H存储毫秒数。 代码中用 XSZ模块显示道号和状态,用XSF模块显示分钟数, XSM模块显 示秒数, XSHM 模块显示毫秒数。 I

38、NT0 模块处理中断0 计时处理, INT1 模块处 理中断 1 抢跑处理。 初始化时,赛道18 的状态分别为1A、2A、3A、4A、5A、6A、7A、8A, 赛道 18 的分钟数,秒钟数,毫秒数都为0。状态显示器显示十六进制数据, 分钟显示器、秒数显示器、毫秒显示器都显示十进制数据。 图 4-1 是主程序流程图。 18 / 31 图 4-1 主程序流程图 19 / 31 这程序代码如下: ORG 0000H LJMP MAIN ORG 0003H LJMP INT0 ORG 0013H LJMP INT1 ORG 0030H MAIN: MOV R4,#0H 。存放计数器数据 MOV 30H

39、,#1AH MOV 31H,#2AH MOV 32H,#3AH MOV 33H,#4AH MOV 34H,#5AH MOV 35H,#6AH MOV 36H,#7AH MOV 37H,#8AH MOV 38H,#0 MOV 4FH,#0 MOV 51H,#0AAH MOV 52H,#0H MOV 53H,#0H CLR EA MOV P0,#0FFH 。P0口置高电平 SETB P2.0 CLR P2.1 CLR P2.2 LCALL XSZ LCALL XSF LCALL XSM LCALL XSHM 。初始化,状态 AA JB P2.3,$ 。=各就位 CLR P3.0 LCALL TDE

40、LAY SETB P3.0 LCALL TDELAY CLR P3.0 LCALL TDELAY SETB P3.0 LCALL TDELAY CLR P3.0 LCALL TDELAY SETB P3.0 。三声蜂鸣器 20 / 31 MOV 51H,#0BBH 。状态显示 BB LCALL XSZ YB: MOV A,P0 JNZ QP1 。=判断是否有人抢跑 JB P2.2,YB 。判断“预备” CLR P3.0 LCALL TDELAY SETB P3.0 LCALL TDELAY CLR P3.0 LCALL TDELAY SETB P3.0 。两声蜂鸣器 CLR 2.0 SETB

41、P2.1 CLR P2.2 MOV 51H,#0CCH LCALL XSZ 。状态显示 CC KP: MOV A,P0 JNZ QP1 。判断抢跑 JB P2.2,KP 。“起跑”? QP: CLR EA 。禁止中断 CLR 2.0 CLR P2.1 SETB P2.2 CLR P3.0 LCALL TDELAY SETB P3.0 。一声蜂鸣器 MOV 51H,#0DDH LCALL XSZ 。状态显示 DD XS1: INC 53H 。=计时 显示程序 LCALL XSHM 。调显示毫秒 JB P2.2,XSCJ 。判断是否按显示成绩 MOV A,53H CJNE A,#999,XS1 ;

42、判断是否到 99 毫秒 XM: INC 52H ;到 999ms ,m+1 LCALL XSM MOV 53H,#0 ;ms清 0 MOV A,52H CJNE A,#2,KZD CJNE A,#59,XS1 ;判断是否到 59s KZD: SETB IT0 SETB EX0 CLR IT1 21 / 31 CLR EX1 SETB EA 。开跑两秒允许中断0,禁止中断 1 LJMP XS1 XF: INC 51H ;59s,f+1 LCALL XSF MOV 52H,#0 ;s 清零 SJMP XS1 QP1: SETB IT1 。= 抢跑处理模块 SETB EX1 CLR IT0 CLR

43、EX0 SETB EA 。禁止中断0,允许中 断 1 SETB P2.0 CLR P2.1 CLR P2.2 MOV 51H,#0AAH LCALL XSZ 。状态显示 AA LCALL XSF LCALL XSM LCALL XSHM JB P2.3,$ 。等待发“各就位”命令 CLR P3.0 LCALL TDELAY SETB P3.0 LCALL TDELAY CLR P3.0 LCALL TDELAY SETB P3.0 LCALL TDELAY CLR P3.0 LCALL TDELAY SETB P3.0 。三声蜂鸣器 MOV 51H,#BBH 。状态显示 BB LCALL XS

44、Z YB1: JB P2.2,$ 。等待按“预备” CLR P3.0 LCALL TDELAY SETB P3.0 LCALL TDELAY CLR P3.0 LCALL TDELAY SETB P3.0 。两声蜂鸣器 MOV 51H,#0CCH 。状态显示 CC 22 / 31 CLR 2.0 SETB P2.1 CLR P2.2 JB P2.2,$ 。等待按“跑” LCALL QP TDELAY: MOV R6,#14H 。显示延时子程序 DL1: MOV R7, #19H 。 DL2: DJNZ R7,DL2 DJNZ R6,DL1 RET XSSJ: XHM: INC 53H LCAL

45、L XSHM MOV A,53H CJNE A,#999,XHM XM: INC 52 LCALL XSM MOV A,52H CJNE A,#59,XM XF: INC 51H LCALL XSF XSZ: MOV A,50H ;显示状态程序 RET XSF: MOV A,51H 。显示分程序 RET XSM: MOV A,52H 。显示秒程序 RET XSHM: MOV A,53H 。显示毫秒程序 RET XSTAB: DB 0C0H,0F9H,0A4H,0B0H 。 0 ,1,2,3 显示字 型码 DB 99H,92H,82H,0F8H, 。 4 ,5,6,7 显示字 型码 DB 80H

46、,90H,88H,83H 。 8 ,9,A,B 显示字 型码 DB 0C6H,0A1H,86H,8EH 。 C ,D,E,F 显示字 型码 END 23 / 31 4.2 抢跑处理 若第一轮有人抢跑,则系统运行QP1 程序,此时系统允许中断1,不允 许中断 0,若此时有人抢跑,则监测系统触发中断1,中断 1 负责记录抢跑信 息,然后中断返回。 抢跑中断 1 处理流程图如图4-2 所示。抢抢跑中断1 处理程序代码如下: 24 / 31 图 4-2 中断 1 流程图 抢跑中断 1 处理程序代码如下: INT1: PUSH PSW 25 / 31 PUSH ACC JNB P1.0,EXT0 JNB

47、 P1.1,EXT1 JNB P1.2,EXT2 JNB P1.3,EXT3 JNB P1.4,EXT4 JNB P1.5,EXT5 JNB P1.6,EXT6 JNB P1.7,EXT7 EXIT: POP ACC POP PSW RETI EXT0: MOV 30H,#1EH LJMP EXIT EXT1: MOV 31H,#2EH LJMP EXIT EXT2: MOV 32H,#3EH LJMP EXIT EXT3: MOV 33H,#4EH LJMP EXIT EXT4: MOV 34H,#5EH LJMP EXIT EXT5: MOV 35H,#6EH LJMP EXIT EXT6

48、: MOV 36H,#7EH LJMP EXIT EXT7: MOV 37H,#8EH LJMP EXIT 4.3 计时处理 若第一次按“起跑”键前无人抢跑,或第一次抢跑第二次按“起跑” 键,则系统禁止中断。延时两秒后系统禁止中断1,允许中断 0。若此时运动员 跑到终点,则监测系统触发中断0 进行记录成绩。 中断 0 的流程图如图 4-3 所示。 26 / 31 图 4-3 计时中断0 处理流程图 中断 0 处理程序代码如下: INT0: PUSH PSW PUSH ACC JNB P1.0,EXT00 JNB P1.1,EXT01 JNB P1.2,EXT02 JNB P1.3,EXT03

49、JNB P1.4,EXT04 JNB P1.5,EXT05 27 / 31 JNB P1.6,EXT06 JNB P1.7,EXT07 EXIT0: POP ACC POP PSW RETI EXT00: MOV 30H,#1BH MOV 38H,51H MOV 40H,52H MOV 48H,53H LJMP EXIT0 EXT01: MOV 31H,#2BH MOV 39H,51H MOV 41H,52H MOV 49H,53H LJMP EXIT0 EXT02: MOV 32H,#3BH MOV 3AH,51H MOV 41H,52H MOV 4AH,53H LJMP EXIT0 EXT03: MOV 33H,#4BH MOV 3BH,51H MOV 42H,52H MOV 4BH,53H LJMP EXIT0 EXT04: MOV 34H,#5BH MOV 3CH,51H MOV 43H,52H MOV 4CH,53H LJMP EXIT0 EXT05: MOV 35H,#6BH MOV 3DH,51H MOV 44H,52H MOV 4DH,53H LJMP EXIT0 EXT06: MOV 36H,#7BH MOV 3EH,51

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1