抢答器毕业设计

江西机电职业技术学院

I

江西机电职业技术学院

电气工程系

10 应用电子班

应用电子技术

熊涛

指导老师

樊辉娜

[1**********]

2012 年 10 月 13 日

江西机电职业技术学院

II

单片机抢答器设计与实现 摘 要

此次设计提出了用 AT89C51 单片机为核心控制元件,设计一个简易的抢答器, 本方案 以 AT89C51 单片机作为主控核心,与 MAX232、发光二极管、数码管、蜂鸣器等构成硬件 操作,再利用 C 语言编程,来控制抢答器的功能实现。本设计的系统实用性强、判断精确、 操作简单、扩展功能强。其实在以往企业或学校等举行自己搞的知识竞赛中,都是主持人 读题,观众选手得安静仔细听题目,有条件的花上万元买个电子抢答器,算是给知识竞赛 赛场添彩了。大多依靠主持人发挥水平,选手和观众渴望的类似电视台的节目效果难以实 现。与电视播放的那些竞赛场面对照——选手坐在显示器前答题,观众看着大屏幕显示题 目和答案,大屏幕有抢答显示计分排行等,绚丽的画面有节奏的音乐——差距很大,但这 些都不是电视台的专利,利用竞赛软件,运用互动式多媒体技术,将竞赛题目制作成演示 程序。通过投影仪大屏幕或电视墙在现场播放,给观众强烈的视听感受,凝聚竞赛现场气 氛。通过选手面前的显示器,为参赛队员提供最直接的看题效果,保证队员对题目的正确 理解。而我们设计的抢答器节省的不小的开支,还能直观公正的看清哪位选手先抢答到题 并有主持人来往下读题目。它的功能实现是有主持人按键来控制总开关,主持人按下开关 那么选手开始抢答,此时数码管开始 0—60 计数,并且选手们必须在规定的时间内进行抢 答,若过了 60 秒还没抢答那么抢答失效,选手们若有一个在规定的时间内抢答成功则其 余的选手不可以再抢答,在数码管上会显示哪位选手抢答到题目及其所用的时间。 关键字:STC89C52 单片机、动态显示、中断

江西机电职业技术学院

III

第一章 绪论 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1

1.1 单片机抢答器的背景 „„„„„„„„„„„„„„„„„„„„„„„„1 1.2 单片机抢答器的意义 „„„„„„„„„„„„„„„„„„„„„„„„1 1.3 抢答器的应用 „„„„„„„„„„„„„„„„„„„„„„„„„„„1 第二章 整体设计方案 „„„„„„„„„„„„„„„„„„„„„„„„„„2 2.1 单片机的选择 „„„„„„„„„„„„„„„„„„„„„„„„„„„2 2.2 单片机的基本结构 „„„„„„„„„„„„„

„„„„„„„„„„„„4 2.3 单片机的存储器配置 „„„„„„„„„„„„„„„„„„„„„„„„6 第三章 硬件设计 „„„„„„„„„„„„„„„„„„„„„„„„„„„„8 3.1 最小系统的设计 „„„„„„„„„„„„„„„„„„„„„„„„„„8 3.2 数码管显示电路 „„„„„„„„„„„„„„„„„„„„„„„„„„8 3.3 按键控制电路 „„„„„„„„„„„„„„„„„„„„„„„„„„„9

第四章 软件设计 „„„„„„„„„„„„„„„„„„„„„„„„„„„„11

4.1 抢答器系统软件设计的流程图 „„„„„„„„„„„„„„„„„„„„11 4.2 主程序 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„12 4.3 中断程序 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„15

第五章 系统的仿真„„„„„„„„„„„„„„„„„„„„„„„„„„„18

5.1 protenus 软件的介绍及使用 „„„„„„„„„„„„„„„„„„„„„18

江西机电职业技术学院

5.2 抢答器 protenus 软件的仿真 „„„„„„„„„„„„„„„„„„„„22

IV

第六章 调试功能说明„„„„„„„„„„„„„„„„„„„„„„„„„„23

6.1 系统的调试 „„„„„„„„„„„„„„„„„„„„„„„„„„„„23 6.2 软件调试问题及解决 „„„„„„„„„„„„„„„„„„„„„„„„23 6.3 焊接的问题及解决 „„„„„„„„„„„„„„„„„„„„„„„„„24 6.4 单片机的通信 „„„„„„„„„„„„„„„„„„„„„„„„„„„25

结论 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„27

工作展望 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„28

参考文献 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„29 致谢„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„30

电气工程系

第一章 绪论

1.1 单片机抢答器的背景

二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不 过,这种电脑,通常是指个人计算机,简称 PC 机。它由主机、键盘、显示器等组成。还有一 类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微 控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控 制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着

有如人类头 脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如 智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就 能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣 机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂, 就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑 器件上。 在知识竞赛中,特别是做抢答题时,在抢答过程中,为了更确切的知道哪一组或哪一位 选手先抢答到题,必须要有一个系统来完成这个任务。若在抢答中,只靠人的视觉(或者是 听觉)是很难判断出哪一组(或哪一个选手)先抢答到题的。利用单片机编程来设计抢答器, 可以使以上问题得以解决,即使两组的抢答时间相差几微秒,也能轻松的分辨出哪一组(或 哪个选手)先抢答到题的。本文主要介绍了抢答器的工作原理及设计,以及它的实际用途。

1.2 单片机抢答器的意义

本系统采用单片机作为整个控制核心。控制系统的四个模块为:显示模块、存储模块、 语音模块、抢答开关模块。该系统通过开关电路四个按键输入抢答信号;利用一个数码管来 完成显示功能;用按键来让选手进行抢答,在数码管上显示哪一组先答题的,从而实现整个 抢答过程。在知识比赛中, 特别是做抢答题目的时候, 在抢答过程中,为了知道哪一组或 哪一位选手先答题,必须要设计一个系统来完成这个任务。如果在抢答中,靠视觉是很难判 断出哪组先答题。利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时 间相差几微秒,也可分辨出哪组优先答题。本文主要介绍了单片机抢答器设计及工作原理, 以及它的实际用途。系统工作原理本系统采用 89c52 单片机作为核心。控制系统的四个模块 分别为:存储模块、显示模块、语音模块、抢答开关模块。该抢答器系统通过开关电路四个 按键输入抢答信号; 利用一个数码管来完成显示功能。工作时,用按键通过开关电路输入各

1

电气工程系

路的抢答信号,经单片机的处理, 输出控制信号,单片机控制的智能抢答器设计。

1.3 抢答器的应用

随着我国经济和文化事业的发展,在很多公开竞争场合要求有公正的竞争裁决,诸如证 券、股票交易及各种智力竞赛等,因此出现了抢答器。抢答器一般是由很多电路组成的,线路 复杂,可靠性不高,功能也比较简单,特别是当抢答路数很多时,实现起来就更为困难。因 此我们设

计了以单片机为核心的新型智能的抢答器,在保留了原始抢答器的基本功能的同时 又增加一系列的实用功能并简化其电路结构。抢答器又称为第一信号鉴别器,其主要应用于 各种知识竞赛、文艺活动等场合。传统普通抢答器主要存在以下缺陷: (一) 、在一次抢答过程中,当出现超前违规抢答时,只能处理违规抢答信号,而对没有 违规的有效抢答信号不能进行处理,因而使该次抢答过程变为无效。 (二) 、当有多个违规抢答时,普通抢答器或采用优先编码电路选择其中一个,或利用抢 答电路电子元件的“竞争”选择其中一个。 对于后者由于抢答电路制作完毕后电子元件被固定。 各路抢答信号的“竞争”能力也被固定,因而本质上也有优先权。普通抢答器存在不公平性。 (三) 、当有多个违规抢答时,普通抢答器只能“抓住”其中一个而出现“漏洞” 。

2

电气工程系

第二章 整体设计方案

2.1 单片机的选择

2.1.1 什么是单片机 单片机是指一个集成在一块芯片上的完整计算机系统。尽管它的大部分功能集成在一块 小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系 统。单片机是将中央处理器,随机存储器。只读存储器,定时器芯片和 I/O 接口电路集成于 一个芯片上的微控制器。 单片机也被称为微控制器(Microcontroler),是因为它最早被用在工业控制领域。单 片机由芯片内仅有 CPU 的专用处理器发展而来。 最早的设计理念是通过将大量外围设备和 CPU 集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备 当中。INTEL 的 Z80 是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器 的发展便分道扬镳。 早期的单片机都是 8 位或 4 位的。其中最成功的是 INTEL 的 8031,因为简单可靠而性能 不错获得了很大的好评。此后在 8031 上发展出了 MCS51 系列单片机系统。基于这一系统的单 片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了 16 位单片机, 但因为性价比不理想并未得到很广泛的应用。90 年代后随着消费电子产品大发展,单片机技 术得到了巨大的提高。随着 INTEL i960 系列特别是后来的 ARM 系列的广泛应用,32 位单片 机迅速取代 16 位单片机的高端地位,并且进入主流市场。而传统的 8 位单片机的性能也得到 了飞速提高,处理能力比起 80 年代提高了数百倍。目前,高端的 32 位单片机主频已经超过 300MHz,性能直追 90 年代中期的专用处理器,而普通的型号出厂价格跌落至 1 美元,最高端 的型号也只有 10 美元。当代单片机

系统已经不再只在裸机环境下开发和使用,大量专用的嵌 入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单 片机甚至可以直接使用专用的 Windows 和 Linux 操作系统。 单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独 特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。 一个不是很复杂的功能要是用美国 50 年代开发的 74 系列,或者 60 年代的 CD4000 系列这些 纯硬件来搞定的话,电路一定是一块大 PCB 板!但是如果要是用美国 70 年代成功投放市场的

3

电气工程系

系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高 效率,以及高可靠性! 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导 弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的 实时控制和数据处理,广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统,录象机、 摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不 用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将 造就一批计算机应用与智能化控制的科学家、工程师。 2.1.2 单片机的应用 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理 及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛 应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、 流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得 仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的 测量设备(功率计,示波器,各种分析仪)。 2.在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理, 电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、 空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4.在计算机网络和通信领域中的应用 现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据

通信,为在计算机网 络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能 控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日 常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5.单片机在医用设备领域中的应用

4

电气工程系

单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声 诊断设备及病床呼叫系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。 2.1.3 如何选择单片机 ATMEL 公司的 89C52 单片机,是增强型 RISC 内载 Flash 的单片机,芯片上的 Flash 存储器 附在用户的产品中,可随时编程,再编程,使用户的产品设计容易,更新换代方便。89C52 单片 机采用增强的 RISC 结构,使其具有高速处理能力,在一个时钟周期内可执行复杂的指令,每 MHz 可实现 1MIPS 的处理能力。 89C52 单片机工作电压为 2.7~6.0V,可以实现耗电最优化。 89C52 的单片机广泛应用于计算机外部设备,工业实时控制,仪器仪表,通讯设备,家用电器,宇航设 备等各个领域. 由于单片机的种类很多,在选择单片机时要依据实际设计要求选择合适的单片机。例如 当设计仅仅需要一个单片机定时器那么选择 89C1051 或 89C2051 即可,而不选择 89C52,因为 后者的价格较高一些。当然若程序和数据区的要求较高那么选择的单片机还要满足程序空间 的要求。 下面我们来比较 89C51 和 89C52: 数据存储器 51 系列 52 系列 128B 256B 程序存储器 4KB 8KB

表 2-1-1 51 和 52 的比较

定时器 2 3

中断 5 8

在本课题中,我们选用现在较为流行的 52 系列单片机,即选用 ATMEL 公司的 STC89C52。

2.2 单片机的基本结构

2.2.1 单片机的引脚分布及功能

MCS-52 的引脚说明: MCS-52 系列单片机中的 8032、8052 及 8752 均采用 40Pin 封装的双列直接 DIP 结构,右 图是它们的引脚配置,40 个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明:

5

电气工程系

图 2-2-1 STC89C52 的引脚图

Pin9:RESET/Vpd 复位信号复用脚,当 8052 通电,时钟电路开始工作,在 RESET 引脚上 出现 24 个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器 PC 指向 0000H, P0-P3 输出口全部为高电平,堆栈指针写入 07H,其它专用寄存器被清“0”。RESET 由高电平 下降为低电平后,系统即从 0000H 地址开始执行程序。然而,初始复位不改变 RAM(包括 工作寄存器 R0-R7)的状态,8052 的初始态。 8052 的复位方式可以是自动

复位,也可以是手动复位,见下图 4。此外,RESET/Vpd 还是 一复用脚,Vcc 掉电其间,此脚可接上备用电源,以保证单片机内部 RAM 的数据不丢失。

图 2-2-2 复位电路和晶振电路图

1、8 位微处理器和控制器 2、内部含有 4KB 的程序 ROM。 3、2 个 16 位的计数/定时器。 4、内部时钟振荡器 5、全双工方式的串行接口(UART)种寻址方式。 6、最高时钟振荡频率可达 12MHZ,大部分指令执行时间为 1µs,乘、除指令为 4µs。 2.2 信号引脚介绍:

6

电气工程系

1.输入/输出口线 2.ALE 地址锁存控制信号 3.在系统扩展时,ALE 用于控制把 口输出的底 8 位地址送入锁存器锁存起来,以实现低位地 址和数据的分时传送。此外由于 ALE 是以十二分之一晶振频率的固定频率输出的正脉冲,因 此可作为外部时钟或外部定时脉冲使用。 4.外部程序存储器读选通信号 5.在读外部 ROM 时 有效(低电平) ,以实现外部 ROM 单元的读操作 6.访问程序存储器控制信号 7.当信号为低电平时,对 ROM 的读操作限定在外部程序存储器;而当 信号为高电平时,则对 ROM 的读操作是从内部程序存储器开始,并可延续至外部程序存储 8.RST 复位信号 当输入的复位信号延续 2 个机器周期以上高电平时即为有效,用以完成单片机的复位操 作。 9.XTAL1 和 XTAL2 外接晶体引线端 当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时, 用于接外部时钟脉冲信号。 10.VSS 地线 11.VCC+5V 电源

2.3 单片机的存储器配置

(b)

图 2-3-1 单片机的内部存储器配置

从用户的角度存储器分 3 个逻辑地址空间:

7

电气工程系

1. 片内外统一编址的 64KB 程序存储器地址空间 0000H~FFFFH 即(a)图; 2. 256B 的片内数据存储器地址空间 00H~FFH(包括低 128B 的内部 RAM 地址 00H~7FH 和 高 128B 的特殊功能寄存器地址空间)即(b)图; 3. 64KB 的外部数据存储器或扩展 I/O 接口地址空间 0000H~FFFFH 如(c)图。 4. 画出 RAM 的组成 RAM 共有 256 个单元,按功能分为两部分低 128 单元(单元地址 00H~7FH)和高 128 单元(单元地址 80H~FFH) 。其中高 128 单元是供给专用寄存器使用,因这些寄存器的功能 已作为专门规定故此称之为特殊功能寄存器 SFR—11 个 SFR 有位寻址作用,而且要说明低 128 单元是单片机的真正 RAM 存储器。

30H~7FH 20H~2FH 18H~1FH 10H~17H 08H~0FH 00H~07H

通用 RAM 区 位寻址区(00H~7FH) 工作寄存器 3 区(R7~R0) 工作寄存器 2 区(R7~R0) 工作寄存器 1 区(R7~R0) 工作寄存器 0 区 (R7~R0)

图 2-3-2 RAM 的组成图

低 128 单元是单片机的真正 RAM 存储器,按其用途划分为三个区域: ⒈通用寄存器区 通用寄存器为 CPU 提供了就近数据存

储的便利,有利于提高单片机的运算速度。此外, 使用通用存储器还能提高程序编制的灵活性,因此在单片机的应用编程中应充分利用这些寄 存器,以简化程序设计,提高程序运行速度。 ⒉位寻址区 内部 RAM 的 20H~2FH 单元,即可作为一般 RAM 单元使用,进行字节操作,也可以对单 元中每一位进行位操作,因此把该区称之为位寻址区。 ⒊工作寄存区 用户存储数据的。

8

电气工程系

第三章 硬件设计

3.1 单片机的最小系统

52 单片机的最小系统电路图:

图 3-1-1 单片机的最小系统图

说明: ①复位电路:由电容串联电阻构成,由图并结合, 但究竟是那个数码管会显示出字形, 取决于单片机对位选通COM端电路的控制, 所以我们只要将需要显示的数码管选通控制打开,该位就显示出字形,没有选通的数码管就 不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态 驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光 二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人 的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能 够节省大量的I/O端口,而且功耗更低。 从电路上,按数码管的接法不同又分为共阴和共阳两种。图1-1 是共阴和共阳极数码管

10

电气工程系

的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。其数码管的外形如 下图所示:

图3-2 数码管的共阴和共阳极接法

第四章 软件设计

4.1 抢答器流程图

流程图是使用图形表示算法的思路是一种极好的方法,不论采用何种程序设计方法,程 序总体结构确定后,一般以程序流程图的形式对其进行描述。总体框图中的各个子模块或各 个子任务也应该结合具体的教学模型和算法画出较详细的程序流程图,供后面编写具体程序 和阅读程序使用。 流程图是由一些图框和流程线组成的,其中图框表示各种操作的类型,图框中的文字和 符号表示操作的内容,流程线表示操作的先后次序。流程图的基本结构为顺序结构,分支结 构(又称选择结构) ,循环结构。为便于识别,绘制流程图的习惯做法是: 方框表示:要执行的处理(Process) 平行四边型表示:代表资料输入(Input) 不规则图形代表资料输出(Output)或报表输出(Print) 菱形表示:决策或判断(例如:If...Then...Else)

11

电气工程系

图 4-1-1 抢答器主程序流程图

图 4-1-2 抢答器定时器中断流程图

12

电气工程系

图 4-1-3 外部中断程序图

4.2 主程序

我们组所设计的抢答器的程序采用的是 C 程序设计,C 语言的显著特点是用二进制来编 写程序,程序的各个部分除了必要的信息交流外彼此之间相互独立。 这种结构化方式可使程序 层次清晰, 便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的 调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。虽然 C 语言也是强 类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。本次设计的主程序中包 括时钟设计程序,定时器中断子程序,LED 显示程序以及按键控制子程序,程序设计如下: #include sbit k0=

P1^0; sbit k1=P1^1; sbit k2=P1^2; sbit k3=P1^3; sbit d0=P1^4; sbit d1=P1^5;

13

电气工程系

sbit d2=P1^6; sbit d3=P1^7; sbit B0=P3^7; sbit l0=P2^0; sbit l1=P2^2; sbit l2=P2^3; sbit l3=P2^4; sbit kz=P3^0; unsigned char qiangdanum=0x3f; unsigned char code table[]={0x3f,0xxx,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; unsigned char ge=0,shi=0; unsigned int num=0,time=0; void display(); void delay(unsigned int); main() { TMOD=0X01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; IT0=0; EA=1;ET0=1; EX0=1; {while(1) {display(); if(kz==0) TR0=1; if(num==20) { num=0; time++; if(time==60) /*60 秒的计时*/

14

/*显示函数*/

/*采用方式一,即十六位计数器*/ /*设置初始值*/

/*开启总中断源*/ /*启动外部中断 0*/

/*开启定时器 0 中断*/

电气工程系

time=0; } } }

} void exter0() interrupt 0 {EA=0;l0=0; if(k0==0) {d0=0;qiangdanum=1;B0=1; }/* 1 号选手抢答成功,数码管显示 1,蜂鸣器响,第 1 个二极管亮*/ if(k1==0) {d1=0;qiangdanum=2;B0=1; }/* 2 号选手抢答成功,数码管显示 2,蜂鸣器响,第 2 个二极管亮*/ if(k2==0) {d2=0;qiangdanum=3;B0=1; }/* 3 号选手抢答成功,数码管显示 3,蜂鸣器响,第 3 个二极管亮*/ /*开关 2 按下*/ /*开关 1 按下*/ /*开关 0 按下*/ /*外部中断程序*/

if(k3==0) {d3=0;qiangdanum=4;B0=1;

/*开关 3 按下*/

}/* 4 号选手抢答成功,数码管显示 4,蜂鸣器响,第 4 个二极管亮*/ } void time0() interrupt 1 {num++; TH0=(65536-50000)/256; TL0=(65536-50000)%256; } void delay(unsigned int z) {unsigned int x,y; for(x=z;x>0;x--)

15

/*1 秒定时函数*/

电气工程系

for(y=110;y>0;y--); } void display(void) {shi=time/10; ge=time%10; P2=0xef; P0=table[ge]; delay(5); P2=0xf7; P0=table[shi]; delay(5); P2=0xFE; P0=table[qiangdanum]; delay(5); } /*显示函数:来显示 0-60 的计数*/ /*延迟函数*/

4.3 中断程序

4.3.1 什么是中断 中断是指由于某种随机事件的发生,计算机暂停现行的程序的运行,转去执行另一个程 序,以处理发生的事件,处理完毕后又自动返回原来的程序继续运行。 有五种中断源:外部中断 0、外部中断 1、定时器中断 0、定时器中断 1、串行中断。它 们的描述如下图所示:

中断源符号 INT0 T0 INT1 T1 TI/RI

名称 外部中断 0 定时器中断 0 外部中断 1 定时器中断 1 串行中断

终端引起的原因 由 P3.2 低电平或下降沿信号 定时/计数器 0 回零溢出 P3.4 由 P3.3 低电平或下降沿信号 定时/计数器 1 回零溢出 P3.5 串行口接收或发送完帧数据引起的中断

表 4-3-1 五种中断源的表示

中断矢量地址 0003H 0013H 000BH 001BH 0023H

4.3.2 中断所用到的寄存器

16

电气工程系

介绍定时器/计数器中所介绍的寄存器: (1) 、定时器/计数器控制寄存器 TCON TCON 的作用是控制定时器的启动`停止,标志定时器的溢出和中断情况; (2) 、中断允许控制寄存器

IE 对中断源的开放或屏蔽是由中断寄存器 IE 控制的,地址为 0A8H,即可以按字节寻址,也可 以按位寻址。当单片机复位时,IE 被清零。 (3) 、串行控制寄存器 SCON 定时/计数器的控制方法:在启动定时/计数器工作之前 CPU 必须将一些命令(称为控制字) 写入定时/计数器中,这个过程称为定时/计数的初始化。 (定时/计数器的初始化通过定时/ 计数器的方式寄存器 TMOD 和控制寄存器 TCON 来完成。︱ ①定时/计数器方式寄存器 TMOD GATE C/T M1

定时器 1

M0

GATE

C/T

M1

定时器 0

M0

M1 0 0 1 1

M0 0 1 0 1

工作方式 方式 0 方式 1 方式 2 方式 3

功能说明 13 位计数器 16 位计数器 自动再装入 8 位计数器 定时器 0:分成两个 8 位计数器;定时器 1:停止计数

表 4-3-2 选择定时方式表

②中断程序的编写的步骤: (1) 、根据要求设置 IE(中断允许寄存器)的对应位 EA(EA—总中断允许位 放所有的中断;EA=0 禁止所有的中断) ,某个中断源还有相应的中断允许位 ①、当=1 时:允许相应中断源的中断; ②、当=0 时:禁止相应中断源的中断; (2) 、INT0、INT1 设定触发方式 IT0(外部中断触发方式控制位)当为 0 时:低电平触 发;当为 1 时:下降沿触发; (3) 、返回值是 Void 中断函数名() interrupt() 4.3.2 为什么采用中断控制方式 CPU 与外部设备的数据传送方式:

17

EA=1 开

电气工程系

(1) 、无条件传送方式 CPU 总认为外设处于准备好的状态,外设比较简单 (2) 、程序查询传送方式 外设有一个状态(状态存储在寄存器内) 缺点:CPU 工作效率低,CPU 处于等待的状态,为解决此缺点便出现了第三种传送方式 (3) 、中断传送方式 中断是指由于某种随机事件的发生,计算机暂停现行的程序,转去执行另一程序以处理 发生的 事件,处理完毕后又自动返回原来的程序继续运行。 优点: 、实现分时操作 (1) CPU 分为多个 I/O 设备服务,提高计算机的利用率(提前安排好的函数而中断不同) ; (2) 、实时响应 CPU 能够及时处理应用系统的随机事件,系统的实时性大大增强; (3) 、可靠性高 CPU 具有处理设备故障及掉电等突发性事件的能力,从而使系统的可靠性提高。 定时器的初始化 (1) (2) (3) (4) 确定工作方式-对 TMOD 赋值; 设置初始值-直接将初值写入 THO,TLO; 开启定时器的中断-{ETO=1 EA=1}; 启动定时器-将 TR0 或 TRI 置“1” 。

第五章 系统的仿真

5.1 proteus 软件的介绍及使用

5.1.1 什么是 Proteus 软件

18

电气工程系

Proteus 软件是 Labcenter Electronics 公司的一款电路设计与仿真软件,它包括 ISIS、 ARES 等软件模块,ARES 模块主要用来完成 PCB 的设计,而 IS

IS 模块用来完成电路原理 图的布图与仿真。Proteus 的软件仿真基于 VSM 技术,它与其他软件最大的不同也是最大的 优势就在于它能仿真大量的单片机芯片,比如 MCS-51 系列、PIC 系列等等,以及单片机外 围电路,比如键盘、LED、LCD 等等。通过 Proteus 软件的使用我们能够轻易地获得一个功 能齐全、实用方便的单片机实验室。 5.1.2 怎样操作 Proteus 仿真软件 在进行下面的操作前,我先说明一点:我的 Proteus 版本是 7.1,如果你使用的是 6.9 以前的版本,可能你发现在鼠标操作上会略有不同。这主要表现在 6.9 以前的版本鼠标左右 键的作用与一般软件刚好相反, 7.0 以后已经完全改过。 而 首先我们把压缩文件解压到 D 盘, 然后找到 ISIS Manage 找到 Find key 然后再安装即可使用,双击打开桌面是上的那个软件 即可使用。 下面我们首先来熟悉一下 Proteus 的界面。Proteus 是一个标准的 Windows 窗口程序, 和大多数程序一样,没有太大区别,其启动界面如下图所示:

图 5-1-1 proteus 启动界面图

如图中所示,区域①为菜单及工具栏,区域②为预览区,区域③为元器件浏览区,区域 ④为编辑窗口,区域⑤为对象拾取区,区域⑥为元器件调整工具栏,区域⑦为运行工具条。 下面我们就以建立一个和我们在 Keil 简介中所讲的工程项目相配套的 Proteus 工程为例 来详细讲述 Proteus 的操作方法以及注意事项。

19

电气工程系

首先点击启动界面区域③中的“P”按钮(Pick Devices,拾取元器件)来打开“Pick Devices”(拾取元器件)对话框从元件库中拾取所需的元器件。对话框如下图所示:

图 5-1-2 用 proteus 软件查找元器件

在对话框中的“Keywords”里面输入我们要检索的元器件的关键词,比如我们要选择项 目中使用的 AT89C51,就可以直接输入。输入以后我们能够在中间的“Results”结果栏里面 看到我们搜索的元器件的结果。在对话框的右侧,我们还能够看到我们选择的元器件的仿真 模型、引脚以及 PCB 参数。 搜索到所需的元器件以后,我们可以双击元器件名来将相应的元器件加入到我们的文档 中,那么接着我们还可以用相同的方法来搜索并加入其他的元器件。当我们已经将所需的元 器件全部加入到文档中时,我们可以点击“OK”按钮来完成元器件的添加。 添加好元器件以后,下面我们所需要做的就是将元器件按照我们的需要连接成电路。首 先在元器件浏览区中点击我们需要添加到文档中的元器件,这时我们就可以在浏览区看到我 们所选择的元器件的形状与方向,如果其方向不符合你的要求,你可以通过点击元器件调整 工具栏中的工具来任意进行调整, 调整完成之

后在文档中单击并选定好需要放置的位置即可。 接着按相同的操作即可完成所有元器件的布置,接下来是连线。事实上 Proteus 的自动布线 功能是如此的完美以至于我们在做布线时从来都不会觉得这是一项任务,而通常像是在享受 布线的乐趣。布线时我们只需要单击选择起点,然后在需要转弯的地方单击一下,按照你所 需走线的方向移动鼠标到线的终点单击即可。本例我们布线的结果如下图所示(仿真我们在 上面的 Keil 操作介绍中的简单例子)。

20

电气工程系

图 5-1-3 发光二极管发光原理图

因为该工程十分简单,我们没有必要加上复位电路,所以这点在图中予以忽略,请大家 注意。除此以外,你可能还发现,单片机系统没有晶振,这一点你需注意。事实上在 Proteus 中单片机的晶振可以省略,系统默认为 12MHz,而且很多时候,当然也为了方便,我们只需 要取默认值就可以了。 Proteus 中单片机芯片默认已经添加电源与地,所以我们可以省略。然后在添加电源与 地以前,我们先来看一下上面第一个图中区域⑤的对象拾取区,在这里只说明本文中可能会 用得到的以及比较重要的工具。 l 线时。 l :(Component Mode)。组件模式,点击该按钮,能够显示出区域③中的元器件, :(Selection Mode)。选择模式,通常情况下我们都需要选中它,比如布局时和布

以便我们选择。 l :(Wire Label Mode)。线路标签模式,选中它并单击文档区电路连线能够为连

线添加标签。经常与总线配合使用。 l l :(Text Script Mode)。文本模式,选中它能够为文档添加文本。 :(Buses Mode)。总线模式,选中它能够在电路中画总线。关于总线画法的详

细步骤与注意事项我们在下面会进行专门讲解。 l :(Terminals Mode)。终端模式,选中它能够为电路添加各种终端,比如输入、

输出、电源、地等等。

21

电气工程系

l

:(Virtual Instruments Mode)。虚拟仪器模式,选中它我们能够在区域③中看到

很多虚拟仪器,比如示波器、电压表、电流表等等。关于它们的用法我们会在后面的相应章 节中详细讲述。 添加电源:首先点击 ,选择终端模式,然后在元器件浏览区中点击 POWER(电源)

来选中电源,通过区域⑥中的元器件调整工具进行适当的调整,然后就可以在文档区中单击 放置电源了。 连接好电路图以后我们还需要做一些修改,由上 5-1-3 图我们可以看出,图中的 R1 电 阻值为 10k, 这个电阻作为限流电阻显然太大, 将使发光二极管 D1 亮度很低或者根本就不亮, 影响我们的仿真结果。 故要进行修改, 修改方法: 首先我们双击电阻图标, 这时软件将弹出“Edit Component

”对话框(见下图所示的对话框),对话框中的“Component Referer”是组件标签 之意,可以随便填写,也可以取默认,但要注意在同一文档中不能有两个组件标签相同; “Resistance”就是电阻值了, 我们可以在其后的框中根据需要填入相应的电阻值。 填写时需注 意其格式,如果直接填写数字,则单位默认为 Ω;如果在数字后面加上 K 或者 k,则表示 kΩ 之意。这里我们填入 220,表示 220Ω。 修改好各组件属性以后就要将程序(HEX 文件)载入单片机了。首先双击单片机图标, 系统同样会弹出“Edit Component”对话框,如下图。在这个对话框中我们点击“Program files” 框右侧的 ,来打开选择程序代码窗口,选中相应的 HEX 文件后返回,这时,按钮左侧的框 中就填入了相应的 HEX 文件,我们点击对话框的“OK”按钮,回到文档,程序文件就添加完 毕了。

图 5-1-4 装载程序

22

电气工程系

装载好程序,我们就可以进行仿真了。首先来熟悉一下上面第一个图中区域⑦的运行工 具条。因为比较简单,我们只作一下介绍。 工具条从左到右依次是“Play”、“Step”、“Pause”、“Stop”按钮,即运行、步进、 暂停、停止。下面我们点击“Play”按钮来仿真运行,效果如下图所示,可以看到系统按照 我们的程序在运行着,而且我们还能看到其高低电平的实时变化。如果我们已经观察到了结 果就可以点击“Stop”来停止运行。

5.2 抢答器 protenus 软件的仿真

绘制抢答器的软件仿真图步骤分一下四步: (1) 、查找所需要的元器件; (2) 、根据电路图进行连线; (3) 、l 是用来写线所对应的坐标,即下图所示的 P1.1 等坐标;

(4)、下载所写完的 C 程序即可以仿真。 通过以上步骤,来实现抢答器设计的仿真实现,仿真如下图所示:

图 5-2-1 抢答器的 proteus 仿真图

23

电气工程系

第六章 调试功能说明

6.1 系统的调试

系统调试包括硬件调试和软件调试,而且两者是密不可分的。我们设计好的硬件电路和 软件程序,只有经过联合调试,才能验证其正确性;软硬件的配人情况以及是否达到设计任 务的要求,也只有经过调试,才能发现问题并加以解决、完善,最终开发成实用产品。 硬件调试分单元电路调试和联机调试,单元电路试验在硬件电路设计时已经进行,这里 的调试只是将其制成印刷电路板后试验电路是否正确,并排除一些加工工艺性错误(如错线、 开路、短路等) 。这种调试可单独模拟进行,也可通过开发装置由软件配合进行。硬件联机调 试则必须在系统软件的配合下进行。 软件调试一般包括分块调试和联机调试两个阶段。程序的分块调试一般在单

片机开发装 置上进行,可根据所调程序功能块的入口参量初值编制一个特殊的程序段,并连同被调程序 功能块一起在开发装置上运行;也可配合对应硬件电路单独运行某程序功能块,然后检查是 否正确,如果执行结果与预想的不一致,可以通过单步运行或设置断点的方法,查出原因并 加以改正,直到运行结果正确为止。这时该 程序功能块已调试完毕,可去掉附加程序段。其 它程序功能块可按此法进行调试。程序联机调试就是将已调试好的各程序功能块按总体结构 联成一个完整程序,在所研制的硬件电路上运行。从而试验程序整体运行的完整性、正确性 和与硬件电路的配合情况。在联调中可能会有某些支路上的程序、功能块因受条件制约而得 不到相应的输入参数,这时,调试人员应创造条件进行模拟调试。在联调中如发现硬件问题 也应及时修正,直到单片机系统的软件、硬件全部调试成功为止。系统调试完成后,还要进 行一段时间的试运行,从而检验系统的稳定性和抗干扰能力,验证系统功能是否达到设计要 求,是否达到预期的效果。

6.2 软件调试问题及解决

首先对所用软件及使用方法介绍如下: 1、Keil 是德国开发的一个 51 单片机开发软件平台,最开始只是一个支持 C 语言和汇编语言 的编译器软件。后来随着开发人员的不断努力以及版本的不断升级,使它已经成为了一个重 要的单片机开发平台,不过 KEIL 的界面并不是非常复杂,操作也不是非常困难,很多工程 师的开发的优秀程序都是在 KEIL 的平台上编写出来的。可以说它是一个比较重要的软件, 熟悉他的人很多很多,用户群极为庞大,要远远超过伟福等厂家软件用户群,操作有不懂的

24

电气工程系

地方只要找相关的书看看,到相关的单片机技术论坛问问,很快就可以掌握它的基本使用了。 2、 总调,即应用软件的链接调试,程序固化,软、硬件结合的应用系统 软硬件联合仿真系统由一个硬件执行环境和一个软件执行环境组成,通常软件环境和硬件环 境都有自己的除错和控制界面,Keil 与 Proteus 的整合调试可以实现系统的总调,在该系统 中,Keil 作为软件调试界面,Proteus 作为硬件仿真和调试界面,下面说一下如何在 keil 中 调用 proteus 进行 MCU 外围器件的仿真。 (1) 、安装 keil 与 proteus。 (2) 、把安装 proteus\ MODELS 目录下 VDM51.dll 文件复制到 Keil 安装目录的 \C51\BIN 目 录中。 (3) 、修改 keil 安装目录下 Tools.ini 文件,在 C51 字段加入 TDRV5=BIN\VDM51.DLL (的名字 随意) 3、 打开 proteus, 画出相应电路, proteus 的 debug 菜单中选中 use remote debug monitor 在 4、在 keil 中编写 C 语言程序 5、进入 KEIL 的 project 菜单 option for target '工程名'。在 DEBUG 选项中右栏上部的下 拉菜单选中 Proteus VSM Monitor-51 Driver。 6、在 keil 中进行 debug 吧,同时在 proteus 中查看直观的结果(如 LCD 显示„)这样就可 以像使用仿真器一样调。 问题:有时候在自己创建的元器件的管脚上无法实现连线。 回答:应该是管脚的间距太小了。因为在 ISIS 中,每个元器件的管脚都要占据一块区域(就 像自己的保护区一样,不容别人随意侵犯) ,该区域会排斥外部的走线。解决问题的方法是在 走线的同时按住 “CTRL”键,直到走线绕过狭窄的保护区。当然最根本的办法是重新编辑元 器件,把其管脚间距调大一些。 主持人按键来控制总开关,主持人按下开关那么选手开始抢答,此时数码管开始 0—60 计数,并且选手们必须在规定的时间内进行抢答,若过了 60 秒还没抢答那么抢答失效,选手 们若有一个在规定的时间内抢答成功则其余的选手不可以再抢答,即该选手抢答成功。

6.3 焊接的问题及解决

一般来说,造成硬件问题的首要问题就是焊接了,也就是说焊接的好与坏直接响产品的

25

电气工程系

正常运行。造成焊接质量不高的常见原因是:①焊锡用量过多,形成焊点的锡堆积;焊锡过少, 不足以包裹焊点。②冷焊。焊接时烙铁温度过低或加热时间不足,焊锡未完全熔化、浸润、焊 锡表面不光亮(不光滑),有细小裂纹(如同豆腐渣一样!)。 ③夹松香焊接,焊锡与元器件或印刷 板之间夹杂着一层松香,造成电连接不良。若夹杂加热不足的松香,则焊点下有一层黄褐色松 香膜; 若加热温度太高,则焊点下有一层碳化松香的黑色膜。 对于有加热不足的松香膜的情况, 可以用烙铁进行补焊。对于已形成黑膜的,则要引脚的电压要正常为 5V 左右。

6.4 单片机的通信

图 6-4 MAX232 与 RS-232D 的连接图

(1) 、RS232C 是一种标准接口,D 型插座,采用 25 芯引脚或 9 芯引脚的连线器,我们一般采 用 9 芯引脚的。信号线的引脚和功能如下: TXD(第 2 脚) :发送数据线,输出。发送数据到 MODEN。 RXD(第 3 脚) :接受数据线,输入。接收数据到计算机或终端。 RTS(第 7 脚) :请求发送,输出。计算机通过此引脚通知 MODEN,要求发送数据。

26

电气工程系

CTS(第 8 脚) :允许发送,输入。发出作为对的回答,计算机才可以进行发送数据。 DSR(第 6 脚) :数据装置就绪(即 MODEN 准备好) ,输入。表示调制解调器可以使用, 该信号有时直接接到电源上,这样当设备连通 shir 时即有效。 CD(第 1 脚) :载波检测(接收线信号测定器) ,输入。表示 MODEN 已与电话线路连接 好。 RI(第 9 脚) :振铃指示,输入。MODEN 若接到交换台送来的振铃呼叫信号,就发出该 信号来通知计算机或终端。 DTR(第 4 脚) :数据终端就绪,输出。计算机收到 RI 信号以后,就发出信号到 MODEN 作为回答,以控制它的转换设备,建立通信链路。 GND(第 5 脚) :接地,信号地。 规定:对 TXD 和 RXD 上的数据信号“1”的逻辑电平在-3V——-15V 之间, “0”的逻辑电平在 +3V——+15V 之间;对于 DTR、DSR、RTS、CTS、CD 等控制信号,-3V——-25V 表示信号无效, 即断开,+3V——+25V 表示信号有效,即接通。 (2) 、MAX232 接口电路 MAX232 芯片是 MAXIM 公司生产的具有两路接收器和驱动器 IC 芯片,其内部有一个电源 电压变化器,可以将输入+5V 的电压变换成 RS-232C 输出电平所需的+12V、-12V 电压。在其 内部同时也完成 TTL 信号电平和 RS-232C 信号电平的转换。所以,采用此芯片实现接口电路 只需要单一的+5V 电源就可以了。 MAX232 芯片的引脚图如 6-4 所示,其中管脚 1 到 6 用于电源电压的转换,值要在外部接 入相应的电解电容即可;管脚 7 到 10 和管脚 11 到 14 构成两组 TTL 信号电平与 RS232C 信号 电平的转换电路,对应管脚可直接与单片机串行口的 TTL 电平引脚和 PC 机的 RS232C 电平引 脚相连。

27

电气工程系

经过近一个月的努力,在老师和同学的商讨和帮助下,我较好的完成了设计任务,通过此 次课程设计,我重新认识到了自学的重要性,以及学以致用的道理。我在图书馆查阅了大量 的资料,同时也认识到了图书馆的重要作用。通过此次的抢答器的设计,让我重新拾起了以 前所学习的电子知识,及我觉得此次设计让我更加巩固了所学的知识并在设计的过程中学会 了与时俱进,克服了编程的枯燥感,让

我受益匪浅。在学习单片机这门课程的时候,我们应 该好好你的记笔记,课下好好的做练习题才能把 C 程序设计灵活的运用到单片机程序的设计 上,在单片机这门课程的学习上,我们还应该知道一种常用的仿真软件 proteus 软件,可以 让你我们更为清晰的掌握 89C51/52 系列的实际应用上的设计。在今后的学习过程中,应该多 到图书馆看一些专业方面的书籍,以丰富自己的知识。也使我加深了对单片机及接口技术的 理解和应用,由于知识水平的局限,设计中可能会存在着一些不足,我真诚的接受老师和同 学的批评和指正.。

28

电气工程系

工作展望

经过一个月的毕业设计,我深刻明白了理论知识与社会实践相结合的道理,也得到了以前书本知识 所不曾得到的知识,更加明白了如今信息时代电子技能知识的重要性。

本设计增强了我对实际通信技术、电子信息等方面的认识,掌握了分析、处理问题的方 法、逻辑思维能力等基本技能的训练,具有了一定程度的实际工作能力。 面对如此激烈的市场竞争体系,只有努力掌握好电子通信知识方可在竞争中立于不败之 地,我对从事电子设计、C 语言编程和研究产生了浓厚的兴趣。希望自己以后能通过自己的 不懈努力取得更大的进步。 从上述单片机计术的发展现状与趋势来看,可以认为单片机又一次进入了蓬勃发展的新 高潮。而这一次发展高潮涉及的范围更广,技术更新更难,影响力和影响面也更宽,势必对 整个信息产业产生更加深远的影响,也将对下一世纪的社会经济发展产生巨大影响,值得密 切注视和研究。

29

电气工程系

参考文献、资料索引

文献、资料名称

编著者

出版单位

30

电气工程系

《单片机典型模块设计实例导航》 求是科技,张立科 《单片机原理及应用技术》 《单片机原理及接口技术》 李金利 董晓红

北京:人民邮电出版社 北京:高等教育出版社

2004 年 2004 年

西安电子科技大学出版社 2004 年 北京:电子工业出版社 2007 年 北京:机械工业出版社 清华大学出版社 清华大学出版社 高等教育出版社 高等教育出版社 高等教育出版社 高等教育出版社 高等教育出版社 高等教育出版社 2003 年 2003 年 2004 年 2005 年 2003 年 2002 年 2005 年 2001 年 2003 年

《数字电路设计与应用实践教程》 王振红 《单片机系统的 proteus 设计及仿真》 张靖武,周灵斌 《C 程序设计》 《单片机原理与实用技术》 《电子技术基础》 《电路基础》 《数字电子技术》 《模拟电子技术》 《电路基本分析》 《电子电路及电子器件》 潭浩强 付晓光 邹寿彬 徐熙文 杨志忠 胡宴如 石生 郭培源

31

电气工

程系

首先衷心地感谢我的导师樊辉娜。本文从选题到完成,从理论上的探讨到实际问题的解 决,无处不饱含着樊辉娜导师的心血。樊辉娜导师的悉心指导和建议给了我极大的帮助和支 持,使我受益匪浅,在此论文完成之际,谨向樊辉娜导师致以深深的谢意和崇高的敬意。

32

江西机电职业技术学院

I

江西机电职业技术学院

电气工程系

10 应用电子班

应用电子技术

熊涛

指导老师

樊辉娜

[1**********]

2012 年 10 月 13 日

江西机电职业技术学院

II

单片机抢答器设计与实现 摘 要

此次设计提出了用 AT89C51 单片机为核心控制元件,设计一个简易的抢答器, 本方案 以 AT89C51 单片机作为主控核心,与 MAX232、发光二极管、数码管、蜂鸣器等构成硬件 操作,再利用 C 语言编程,来控制抢答器的功能实现。本设计的系统实用性强、判断精确、 操作简单、扩展功能强。其实在以往企业或学校等举行自己搞的知识竞赛中,都是主持人 读题,观众选手得安静仔细听题目,有条件的花上万元买个电子抢答器,算是给知识竞赛 赛场添彩了。大多依靠主持人发挥水平,选手和观众渴望的类似电视台的节目效果难以实 现。与电视播放的那些竞赛场面对照——选手坐在显示器前答题,观众看着大屏幕显示题 目和答案,大屏幕有抢答显示计分排行等,绚丽的画面有节奏的音乐——差距很大,但这 些都不是电视台的专利,利用竞赛软件,运用互动式多媒体技术,将竞赛题目制作成演示 程序。通过投影仪大屏幕或电视墙在现场播放,给观众强烈的视听感受,凝聚竞赛现场气 氛。通过选手面前的显示器,为参赛队员提供最直接的看题效果,保证队员对题目的正确 理解。而我们设计的抢答器节省的不小的开支,还能直观公正的看清哪位选手先抢答到题 并有主持人来往下读题目。它的功能实现是有主持人按键来控制总开关,主持人按下开关 那么选手开始抢答,此时数码管开始 0—60 计数,并且选手们必须在规定的时间内进行抢 答,若过了 60 秒还没抢答那么抢答失效,选手们若有一个在规定的时间内抢答成功则其 余的选手不可以再抢答,在数码管上会显示哪位选手抢答到题目及其所用的时间。 关键字:STC89C52 单片机、动态显示、中断

江西机电职业技术学院

III

第一章 绪论 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1

1.1 单片机抢答器的背景 „„„„„„„„„„„„„„„„„„„„„„„„1 1.2 单片机抢答器的意义 „„„„„„„„„„„„„„„„„„„„„„„„1 1.3 抢答器的应用 „„„„„„„„„„„„„„„„„„„„„„„„„„„1 第二章 整体设计方案 „„„„„„„„„„„„„„„„„„„„„„„„„„2 2.1 单片机的选择 „„„„„„„„„„„„„„„„„„„„„„„„„„„2 2.2 单片机的基本结构 „„„„„„„„„„„„„

„„„„„„„„„„„„4 2.3 单片机的存储器配置 „„„„„„„„„„„„„„„„„„„„„„„„6 第三章 硬件设计 „„„„„„„„„„„„„„„„„„„„„„„„„„„„8 3.1 最小系统的设计 „„„„„„„„„„„„„„„„„„„„„„„„„„8 3.2 数码管显示电路 „„„„„„„„„„„„„„„„„„„„„„„„„„8 3.3 按键控制电路 „„„„„„„„„„„„„„„„„„„„„„„„„„„9

第四章 软件设计 „„„„„„„„„„„„„„„„„„„„„„„„„„„„11

4.1 抢答器系统软件设计的流程图 „„„„„„„„„„„„„„„„„„„„11 4.2 主程序 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„12 4.3 中断程序 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„15

第五章 系统的仿真„„„„„„„„„„„„„„„„„„„„„„„„„„„18

5.1 protenus 软件的介绍及使用 „„„„„„„„„„„„„„„„„„„„„18

江西机电职业技术学院

5.2 抢答器 protenus 软件的仿真 „„„„„„„„„„„„„„„„„„„„22

IV

第六章 调试功能说明„„„„„„„„„„„„„„„„„„„„„„„„„„23

6.1 系统的调试 „„„„„„„„„„„„„„„„„„„„„„„„„„„„23 6.2 软件调试问题及解决 „„„„„„„„„„„„„„„„„„„„„„„„23 6.3 焊接的问题及解决 „„„„„„„„„„„„„„„„„„„„„„„„„24 6.4 单片机的通信 „„„„„„„„„„„„„„„„„„„„„„„„„„„25

结论 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„27

工作展望 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„28

参考文献 „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„29 致谢„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„30

电气工程系

第一章 绪论

1.1 单片机抢答器的背景

二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不 过,这种电脑,通常是指个人计算机,简称 PC 机。它由主机、键盘、显示器等组成。还有一 类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微 控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控 制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着

有如人类头 脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如 智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就 能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣 机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂, 就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑 器件上。 在知识竞赛中,特别是做抢答题时,在抢答过程中,为了更确切的知道哪一组或哪一位 选手先抢答到题,必须要有一个系统来完成这个任务。若在抢答中,只靠人的视觉(或者是 听觉)是很难判断出哪一组(或哪一个选手)先抢答到题的。利用单片机编程来设计抢答器, 可以使以上问题得以解决,即使两组的抢答时间相差几微秒,也能轻松的分辨出哪一组(或 哪个选手)先抢答到题的。本文主要介绍了抢答器的工作原理及设计,以及它的实际用途。

1.2 单片机抢答器的意义

本系统采用单片机作为整个控制核心。控制系统的四个模块为:显示模块、存储模块、 语音模块、抢答开关模块。该系统通过开关电路四个按键输入抢答信号;利用一个数码管来 完成显示功能;用按键来让选手进行抢答,在数码管上显示哪一组先答题的,从而实现整个 抢答过程。在知识比赛中, 特别是做抢答题目的时候, 在抢答过程中,为了知道哪一组或 哪一位选手先答题,必须要设计一个系统来完成这个任务。如果在抢答中,靠视觉是很难判 断出哪组先答题。利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时 间相差几微秒,也可分辨出哪组优先答题。本文主要介绍了单片机抢答器设计及工作原理, 以及它的实际用途。系统工作原理本系统采用 89c52 单片机作为核心。控制系统的四个模块 分别为:存储模块、显示模块、语音模块、抢答开关模块。该抢答器系统通过开关电路四个 按键输入抢答信号; 利用一个数码管来完成显示功能。工作时,用按键通过开关电路输入各

1

电气工程系

路的抢答信号,经单片机的处理, 输出控制信号,单片机控制的智能抢答器设计。

1.3 抢答器的应用

随着我国经济和文化事业的发展,在很多公开竞争场合要求有公正的竞争裁决,诸如证 券、股票交易及各种智力竞赛等,因此出现了抢答器。抢答器一般是由很多电路组成的,线路 复杂,可靠性不高,功能也比较简单,特别是当抢答路数很多时,实现起来就更为困难。因 此我们设

计了以单片机为核心的新型智能的抢答器,在保留了原始抢答器的基本功能的同时 又增加一系列的实用功能并简化其电路结构。抢答器又称为第一信号鉴别器,其主要应用于 各种知识竞赛、文艺活动等场合。传统普通抢答器主要存在以下缺陷: (一) 、在一次抢答过程中,当出现超前违规抢答时,只能处理违规抢答信号,而对没有 违规的有效抢答信号不能进行处理,因而使该次抢答过程变为无效。 (二) 、当有多个违规抢答时,普通抢答器或采用优先编码电路选择其中一个,或利用抢 答电路电子元件的“竞争”选择其中一个。 对于后者由于抢答电路制作完毕后电子元件被固定。 各路抢答信号的“竞争”能力也被固定,因而本质上也有优先权。普通抢答器存在不公平性。 (三) 、当有多个违规抢答时,普通抢答器只能“抓住”其中一个而出现“漏洞” 。

2

电气工程系

第二章 整体设计方案

2.1 单片机的选择

2.1.1 什么是单片机 单片机是指一个集成在一块芯片上的完整计算机系统。尽管它的大部分功能集成在一块 小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系 统。单片机是将中央处理器,随机存储器。只读存储器,定时器芯片和 I/O 接口电路集成于 一个芯片上的微控制器。 单片机也被称为微控制器(Microcontroler),是因为它最早被用在工业控制领域。单 片机由芯片内仅有 CPU 的专用处理器发展而来。 最早的设计理念是通过将大量外围设备和 CPU 集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备 当中。INTEL 的 Z80 是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器 的发展便分道扬镳。 早期的单片机都是 8 位或 4 位的。其中最成功的是 INTEL 的 8031,因为简单可靠而性能 不错获得了很大的好评。此后在 8031 上发展出了 MCS51 系列单片机系统。基于这一系统的单 片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了 16 位单片机, 但因为性价比不理想并未得到很广泛的应用。90 年代后随着消费电子产品大发展,单片机技 术得到了巨大的提高。随着 INTEL i960 系列特别是后来的 ARM 系列的广泛应用,32 位单片 机迅速取代 16 位单片机的高端地位,并且进入主流市场。而传统的 8 位单片机的性能也得到 了飞速提高,处理能力比起 80 年代提高了数百倍。目前,高端的 32 位单片机主频已经超过 300MHz,性能直追 90 年代中期的专用处理器,而普通的型号出厂价格跌落至 1 美元,最高端 的型号也只有 10 美元。当代单片机

系统已经不再只在裸机环境下开发和使用,大量专用的嵌 入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单 片机甚至可以直接使用专用的 Windows 和 Linux 操作系统。 单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独 特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。 一个不是很复杂的功能要是用美国 50 年代开发的 74 系列,或者 60 年代的 CD4000 系列这些 纯硬件来搞定的话,电路一定是一块大 PCB 板!但是如果要是用美国 70 年代成功投放市场的

3

电气工程系

系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高 效率,以及高可靠性! 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导 弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的 实时控制和数据处理,广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统,录象机、 摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不 用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将 造就一批计算机应用与智能化控制的科学家、工程师。 2.1.2 单片机的应用 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理 及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛 应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、 流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得 仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的 测量设备(功率计,示波器,各种分析仪)。 2.在工业控制中的应用 用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理, 电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用 可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、 空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。 4.在计算机网络和通信领域中的应用 现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据

通信,为在计算机网 络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能 控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日 常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5.单片机在医用设备领域中的应用

4

电气工程系

单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声 诊断设备及病床呼叫系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。 2.1.3 如何选择单片机 ATMEL 公司的 89C52 单片机,是增强型 RISC 内载 Flash 的单片机,芯片上的 Flash 存储器 附在用户的产品中,可随时编程,再编程,使用户的产品设计容易,更新换代方便。89C52 单片 机采用增强的 RISC 结构,使其具有高速处理能力,在一个时钟周期内可执行复杂的指令,每 MHz 可实现 1MIPS 的处理能力。 89C52 单片机工作电压为 2.7~6.0V,可以实现耗电最优化。 89C52 的单片机广泛应用于计算机外部设备,工业实时控制,仪器仪表,通讯设备,家用电器,宇航设 备等各个领域. 由于单片机的种类很多,在选择单片机时要依据实际设计要求选择合适的单片机。例如 当设计仅仅需要一个单片机定时器那么选择 89C1051 或 89C2051 即可,而不选择 89C52,因为 后者的价格较高一些。当然若程序和数据区的要求较高那么选择的单片机还要满足程序空间 的要求。 下面我们来比较 89C51 和 89C52: 数据存储器 51 系列 52 系列 128B 256B 程序存储器 4KB 8KB

表 2-1-1 51 和 52 的比较

定时器 2 3

中断 5 8

在本课题中,我们选用现在较为流行的 52 系列单片机,即选用 ATMEL 公司的 STC89C52。

2.2 单片机的基本结构

2.2.1 单片机的引脚分布及功能

MCS-52 的引脚说明: MCS-52 系列单片机中的 8032、8052 及 8752 均采用 40Pin 封装的双列直接 DIP 结构,右 图是它们的引脚配置,40 个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明:

5

电气工程系

图 2-2-1 STC89C52 的引脚图

Pin9:RESET/Vpd 复位信号复用脚,当 8052 通电,时钟电路开始工作,在 RESET 引脚上 出现 24 个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器 PC 指向 0000H, P0-P3 输出口全部为高电平,堆栈指针写入 07H,其它专用寄存器被清“0”。RESET 由高电平 下降为低电平后,系统即从 0000H 地址开始执行程序。然而,初始复位不改变 RAM(包括 工作寄存器 R0-R7)的状态,8052 的初始态。 8052 的复位方式可以是自动

复位,也可以是手动复位,见下图 4。此外,RESET/Vpd 还是 一复用脚,Vcc 掉电其间,此脚可接上备用电源,以保证单片机内部 RAM 的数据不丢失。

图 2-2-2 复位电路和晶振电路图

1、8 位微处理器和控制器 2、内部含有 4KB 的程序 ROM。 3、2 个 16 位的计数/定时器。 4、内部时钟振荡器 5、全双工方式的串行接口(UART)种寻址方式。 6、最高时钟振荡频率可达 12MHZ,大部分指令执行时间为 1µs,乘、除指令为 4µs。 2.2 信号引脚介绍:

6

电气工程系

1.输入/输出口线 2.ALE 地址锁存控制信号 3.在系统扩展时,ALE 用于控制把 口输出的底 8 位地址送入锁存器锁存起来,以实现低位地 址和数据的分时传送。此外由于 ALE 是以十二分之一晶振频率的固定频率输出的正脉冲,因 此可作为外部时钟或外部定时脉冲使用。 4.外部程序存储器读选通信号 5.在读外部 ROM 时 有效(低电平) ,以实现外部 ROM 单元的读操作 6.访问程序存储器控制信号 7.当信号为低电平时,对 ROM 的读操作限定在外部程序存储器;而当 信号为高电平时,则对 ROM 的读操作是从内部程序存储器开始,并可延续至外部程序存储 8.RST 复位信号 当输入的复位信号延续 2 个机器周期以上高电平时即为有效,用以完成单片机的复位操 作。 9.XTAL1 和 XTAL2 外接晶体引线端 当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时, 用于接外部时钟脉冲信号。 10.VSS 地线 11.VCC+5V 电源

2.3 单片机的存储器配置

(b)

图 2-3-1 单片机的内部存储器配置

从用户的角度存储器分 3 个逻辑地址空间:

7

电气工程系

1. 片内外统一编址的 64KB 程序存储器地址空间 0000H~FFFFH 即(a)图; 2. 256B 的片内数据存储器地址空间 00H~FFH(包括低 128B 的内部 RAM 地址 00H~7FH 和 高 128B 的特殊功能寄存器地址空间)即(b)图; 3. 64KB 的外部数据存储器或扩展 I/O 接口地址空间 0000H~FFFFH 如(c)图。 4. 画出 RAM 的组成 RAM 共有 256 个单元,按功能分为两部分低 128 单元(单元地址 00H~7FH)和高 128 单元(单元地址 80H~FFH) 。其中高 128 单元是供给专用寄存器使用,因这些寄存器的功能 已作为专门规定故此称之为特殊功能寄存器 SFR—11 个 SFR 有位寻址作用,而且要说明低 128 单元是单片机的真正 RAM 存储器。

30H~7FH 20H~2FH 18H~1FH 10H~17H 08H~0FH 00H~07H

通用 RAM 区 位寻址区(00H~7FH) 工作寄存器 3 区(R7~R0) 工作寄存器 2 区(R7~R0) 工作寄存器 1 区(R7~R0) 工作寄存器 0 区 (R7~R0)

图 2-3-2 RAM 的组成图

低 128 单元是单片机的真正 RAM 存储器,按其用途划分为三个区域: ⒈通用寄存器区 通用寄存器为 CPU 提供了就近数据存

储的便利,有利于提高单片机的运算速度。此外, 使用通用存储器还能提高程序编制的灵活性,因此在单片机的应用编程中应充分利用这些寄 存器,以简化程序设计,提高程序运行速度。 ⒉位寻址区 内部 RAM 的 20H~2FH 单元,即可作为一般 RAM 单元使用,进行字节操作,也可以对单 元中每一位进行位操作,因此把该区称之为位寻址区。 ⒊工作寄存区 用户存储数据的。

8

电气工程系

第三章 硬件设计

3.1 单片机的最小系统

52 单片机的最小系统电路图:

图 3-1-1 单片机的最小系统图

说明: ①复位电路:由电容串联电阻构成,由图并结合, 但究竟是那个数码管会显示出字形, 取决于单片机对位选通COM端电路的控制, 所以我们只要将需要显示的数码管选通控制打开,该位就显示出字形,没有选通的数码管就 不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态 驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光 二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人 的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能 够节省大量的I/O端口,而且功耗更低。 从电路上,按数码管的接法不同又分为共阴和共阳两种。图1-1 是共阴和共阳极数码管

10

电气工程系

的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。其数码管的外形如 下图所示:

图3-2 数码管的共阴和共阳极接法

第四章 软件设计

4.1 抢答器流程图

流程图是使用图形表示算法的思路是一种极好的方法,不论采用何种程序设计方法,程 序总体结构确定后,一般以程序流程图的形式对其进行描述。总体框图中的各个子模块或各 个子任务也应该结合具体的教学模型和算法画出较详细的程序流程图,供后面编写具体程序 和阅读程序使用。 流程图是由一些图框和流程线组成的,其中图框表示各种操作的类型,图框中的文字和 符号表示操作的内容,流程线表示操作的先后次序。流程图的基本结构为顺序结构,分支结 构(又称选择结构) ,循环结构。为便于识别,绘制流程图的习惯做法是: 方框表示:要执行的处理(Process) 平行四边型表示:代表资料输入(Input) 不规则图形代表资料输出(Output)或报表输出(Print) 菱形表示:决策或判断(例如:If...Then...Else)

11

电气工程系

图 4-1-1 抢答器主程序流程图

图 4-1-2 抢答器定时器中断流程图

12

电气工程系

图 4-1-3 外部中断程序图

4.2 主程序

我们组所设计的抢答器的程序采用的是 C 程序设计,C 语言的显著特点是用二进制来编 写程序,程序的各个部分除了必要的信息交流外彼此之间相互独立。 这种结构化方式可使程序 层次清晰, 便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的 调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。虽然 C 语言也是强 类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。本次设计的主程序中包 括时钟设计程序,定时器中断子程序,LED 显示程序以及按键控制子程序,程序设计如下: #include sbit k0=

P1^0; sbit k1=P1^1; sbit k2=P1^2; sbit k3=P1^3; sbit d0=P1^4; sbit d1=P1^5;

13

电气工程系

sbit d2=P1^6; sbit d3=P1^7; sbit B0=P3^7; sbit l0=P2^0; sbit l1=P2^2; sbit l2=P2^3; sbit l3=P2^4; sbit kz=P3^0; unsigned char qiangdanum=0x3f; unsigned char code table[]={0x3f,0xxx,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; unsigned char ge=0,shi=0; unsigned int num=0,time=0; void display(); void delay(unsigned int); main() { TMOD=0X01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; IT0=0; EA=1;ET0=1; EX0=1; {while(1) {display(); if(kz==0) TR0=1; if(num==20) { num=0; time++; if(time==60) /*60 秒的计时*/

14

/*显示函数*/

/*采用方式一,即十六位计数器*/ /*设置初始值*/

/*开启总中断源*/ /*启动外部中断 0*/

/*开启定时器 0 中断*/

电气工程系

time=0; } } }

} void exter0() interrupt 0 {EA=0;l0=0; if(k0==0) {d0=0;qiangdanum=1;B0=1; }/* 1 号选手抢答成功,数码管显示 1,蜂鸣器响,第 1 个二极管亮*/ if(k1==0) {d1=0;qiangdanum=2;B0=1; }/* 2 号选手抢答成功,数码管显示 2,蜂鸣器响,第 2 个二极管亮*/ if(k2==0) {d2=0;qiangdanum=3;B0=1; }/* 3 号选手抢答成功,数码管显示 3,蜂鸣器响,第 3 个二极管亮*/ /*开关 2 按下*/ /*开关 1 按下*/ /*开关 0 按下*/ /*外部中断程序*/

if(k3==0) {d3=0;qiangdanum=4;B0=1;

/*开关 3 按下*/

}/* 4 号选手抢答成功,数码管显示 4,蜂鸣器响,第 4 个二极管亮*/ } void time0() interrupt 1 {num++; TH0=(65536-50000)/256; TL0=(65536-50000)%256; } void delay(unsigned int z) {unsigned int x,y; for(x=z;x>0;x--)

15

/*1 秒定时函数*/

电气工程系

for(y=110;y>0;y--); } void display(void) {shi=time/10; ge=time%10; P2=0xef; P0=table[ge]; delay(5); P2=0xf7; P0=table[shi]; delay(5); P2=0xFE; P0=table[qiangdanum]; delay(5); } /*显示函数:来显示 0-60 的计数*/ /*延迟函数*/

4.3 中断程序

4.3.1 什么是中断 中断是指由于某种随机事件的发生,计算机暂停现行的程序的运行,转去执行另一个程 序,以处理发生的事件,处理完毕后又自动返回原来的程序继续运行。 有五种中断源:外部中断 0、外部中断 1、定时器中断 0、定时器中断 1、串行中断。它 们的描述如下图所示:

中断源符号 INT0 T0 INT1 T1 TI/RI

名称 外部中断 0 定时器中断 0 外部中断 1 定时器中断 1 串行中断

终端引起的原因 由 P3.2 低电平或下降沿信号 定时/计数器 0 回零溢出 P3.4 由 P3.3 低电平或下降沿信号 定时/计数器 1 回零溢出 P3.5 串行口接收或发送完帧数据引起的中断

表 4-3-1 五种中断源的表示

中断矢量地址 0003H 0013H 000BH 001BH 0023H

4.3.2 中断所用到的寄存器

16

电气工程系

介绍定时器/计数器中所介绍的寄存器: (1) 、定时器/计数器控制寄存器 TCON TCON 的作用是控制定时器的启动`停止,标志定时器的溢出和中断情况; (2) 、中断允许控制寄存器

IE 对中断源的开放或屏蔽是由中断寄存器 IE 控制的,地址为 0A8H,即可以按字节寻址,也可 以按位寻址。当单片机复位时,IE 被清零。 (3) 、串行控制寄存器 SCON 定时/计数器的控制方法:在启动定时/计数器工作之前 CPU 必须将一些命令(称为控制字) 写入定时/计数器中,这个过程称为定时/计数的初始化。 (定时/计数器的初始化通过定时/ 计数器的方式寄存器 TMOD 和控制寄存器 TCON 来完成。︱ ①定时/计数器方式寄存器 TMOD GATE C/T M1

定时器 1

M0

GATE

C/T

M1

定时器 0

M0

M1 0 0 1 1

M0 0 1 0 1

工作方式 方式 0 方式 1 方式 2 方式 3

功能说明 13 位计数器 16 位计数器 自动再装入 8 位计数器 定时器 0:分成两个 8 位计数器;定时器 1:停止计数

表 4-3-2 选择定时方式表

②中断程序的编写的步骤: (1) 、根据要求设置 IE(中断允许寄存器)的对应位 EA(EA—总中断允许位 放所有的中断;EA=0 禁止所有的中断) ,某个中断源还有相应的中断允许位 ①、当=1 时:允许相应中断源的中断; ②、当=0 时:禁止相应中断源的中断; (2) 、INT0、INT1 设定触发方式 IT0(外部中断触发方式控制位)当为 0 时:低电平触 发;当为 1 时:下降沿触发; (3) 、返回值是 Void 中断函数名() interrupt() 4.3.2 为什么采用中断控制方式 CPU 与外部设备的数据传送方式:

17

EA=1 开

电气工程系

(1) 、无条件传送方式 CPU 总认为外设处于准备好的状态,外设比较简单 (2) 、程序查询传送方式 外设有一个状态(状态存储在寄存器内) 缺点:CPU 工作效率低,CPU 处于等待的状态,为解决此缺点便出现了第三种传送方式 (3) 、中断传送方式 中断是指由于某种随机事件的发生,计算机暂停现行的程序,转去执行另一程序以处理 发生的 事件,处理完毕后又自动返回原来的程序继续运行。 优点: 、实现分时操作 (1) CPU 分为多个 I/O 设备服务,提高计算机的利用率(提前安排好的函数而中断不同) ; (2) 、实时响应 CPU 能够及时处理应用系统的随机事件,系统的实时性大大增强; (3) 、可靠性高 CPU 具有处理设备故障及掉电等突发性事件的能力,从而使系统的可靠性提高。 定时器的初始化 (1) (2) (3) (4) 确定工作方式-对 TMOD 赋值; 设置初始值-直接将初值写入 THO,TLO; 开启定时器的中断-{ETO=1 EA=1}; 启动定时器-将 TR0 或 TRI 置“1” 。

第五章 系统的仿真

5.1 proteus 软件的介绍及使用

5.1.1 什么是 Proteus 软件

18

电气工程系

Proteus 软件是 Labcenter Electronics 公司的一款电路设计与仿真软件,它包括 ISIS、 ARES 等软件模块,ARES 模块主要用来完成 PCB 的设计,而 IS

IS 模块用来完成电路原理 图的布图与仿真。Proteus 的软件仿真基于 VSM 技术,它与其他软件最大的不同也是最大的 优势就在于它能仿真大量的单片机芯片,比如 MCS-51 系列、PIC 系列等等,以及单片机外 围电路,比如键盘、LED、LCD 等等。通过 Proteus 软件的使用我们能够轻易地获得一个功 能齐全、实用方便的单片机实验室。 5.1.2 怎样操作 Proteus 仿真软件 在进行下面的操作前,我先说明一点:我的 Proteus 版本是 7.1,如果你使用的是 6.9 以前的版本,可能你发现在鼠标操作上会略有不同。这主要表现在 6.9 以前的版本鼠标左右 键的作用与一般软件刚好相反, 7.0 以后已经完全改过。 而 首先我们把压缩文件解压到 D 盘, 然后找到 ISIS Manage 找到 Find key 然后再安装即可使用,双击打开桌面是上的那个软件 即可使用。 下面我们首先来熟悉一下 Proteus 的界面。Proteus 是一个标准的 Windows 窗口程序, 和大多数程序一样,没有太大区别,其启动界面如下图所示:

图 5-1-1 proteus 启动界面图

如图中所示,区域①为菜单及工具栏,区域②为预览区,区域③为元器件浏览区,区域 ④为编辑窗口,区域⑤为对象拾取区,区域⑥为元器件调整工具栏,区域⑦为运行工具条。 下面我们就以建立一个和我们在 Keil 简介中所讲的工程项目相配套的 Proteus 工程为例 来详细讲述 Proteus 的操作方法以及注意事项。

19

电气工程系

首先点击启动界面区域③中的“P”按钮(Pick Devices,拾取元器件)来打开“Pick Devices”(拾取元器件)对话框从元件库中拾取所需的元器件。对话框如下图所示:

图 5-1-2 用 proteus 软件查找元器件

在对话框中的“Keywords”里面输入我们要检索的元器件的关键词,比如我们要选择项 目中使用的 AT89C51,就可以直接输入。输入以后我们能够在中间的“Results”结果栏里面 看到我们搜索的元器件的结果。在对话框的右侧,我们还能够看到我们选择的元器件的仿真 模型、引脚以及 PCB 参数。 搜索到所需的元器件以后,我们可以双击元器件名来将相应的元器件加入到我们的文档 中,那么接着我们还可以用相同的方法来搜索并加入其他的元器件。当我们已经将所需的元 器件全部加入到文档中时,我们可以点击“OK”按钮来完成元器件的添加。 添加好元器件以后,下面我们所需要做的就是将元器件按照我们的需要连接成电路。首 先在元器件浏览区中点击我们需要添加到文档中的元器件,这时我们就可以在浏览区看到我 们所选择的元器件的形状与方向,如果其方向不符合你的要求,你可以通过点击元器件调整 工具栏中的工具来任意进行调整, 调整完成之

后在文档中单击并选定好需要放置的位置即可。 接着按相同的操作即可完成所有元器件的布置,接下来是连线。事实上 Proteus 的自动布线 功能是如此的完美以至于我们在做布线时从来都不会觉得这是一项任务,而通常像是在享受 布线的乐趣。布线时我们只需要单击选择起点,然后在需要转弯的地方单击一下,按照你所 需走线的方向移动鼠标到线的终点单击即可。本例我们布线的结果如下图所示(仿真我们在 上面的 Keil 操作介绍中的简单例子)。

20

电气工程系

图 5-1-3 发光二极管发光原理图

因为该工程十分简单,我们没有必要加上复位电路,所以这点在图中予以忽略,请大家 注意。除此以外,你可能还发现,单片机系统没有晶振,这一点你需注意。事实上在 Proteus 中单片机的晶振可以省略,系统默认为 12MHz,而且很多时候,当然也为了方便,我们只需 要取默认值就可以了。 Proteus 中单片机芯片默认已经添加电源与地,所以我们可以省略。然后在添加电源与 地以前,我们先来看一下上面第一个图中区域⑤的对象拾取区,在这里只说明本文中可能会 用得到的以及比较重要的工具。 l 线时。 l :(Component Mode)。组件模式,点击该按钮,能够显示出区域③中的元器件, :(Selection Mode)。选择模式,通常情况下我们都需要选中它,比如布局时和布

以便我们选择。 l :(Wire Label Mode)。线路标签模式,选中它并单击文档区电路连线能够为连

线添加标签。经常与总线配合使用。 l l :(Text Script Mode)。文本模式,选中它能够为文档添加文本。 :(Buses Mode)。总线模式,选中它能够在电路中画总线。关于总线画法的详

细步骤与注意事项我们在下面会进行专门讲解。 l :(Terminals Mode)。终端模式,选中它能够为电路添加各种终端,比如输入、

输出、电源、地等等。

21

电气工程系

l

:(Virtual Instruments Mode)。虚拟仪器模式,选中它我们能够在区域③中看到

很多虚拟仪器,比如示波器、电压表、电流表等等。关于它们的用法我们会在后面的相应章 节中详细讲述。 添加电源:首先点击 ,选择终端模式,然后在元器件浏览区中点击 POWER(电源)

来选中电源,通过区域⑥中的元器件调整工具进行适当的调整,然后就可以在文档区中单击 放置电源了。 连接好电路图以后我们还需要做一些修改,由上 5-1-3 图我们可以看出,图中的 R1 电 阻值为 10k, 这个电阻作为限流电阻显然太大, 将使发光二极管 D1 亮度很低或者根本就不亮, 影响我们的仿真结果。 故要进行修改, 修改方法: 首先我们双击电阻图标, 这时软件将弹出“Edit Component

”对话框(见下图所示的对话框),对话框中的“Component Referer”是组件标签 之意,可以随便填写,也可以取默认,但要注意在同一文档中不能有两个组件标签相同; “Resistance”就是电阻值了, 我们可以在其后的框中根据需要填入相应的电阻值。 填写时需注 意其格式,如果直接填写数字,则单位默认为 Ω;如果在数字后面加上 K 或者 k,则表示 kΩ 之意。这里我们填入 220,表示 220Ω。 修改好各组件属性以后就要将程序(HEX 文件)载入单片机了。首先双击单片机图标, 系统同样会弹出“Edit Component”对话框,如下图。在这个对话框中我们点击“Program files” 框右侧的 ,来打开选择程序代码窗口,选中相应的 HEX 文件后返回,这时,按钮左侧的框 中就填入了相应的 HEX 文件,我们点击对话框的“OK”按钮,回到文档,程序文件就添加完 毕了。

图 5-1-4 装载程序

22

电气工程系

装载好程序,我们就可以进行仿真了。首先来熟悉一下上面第一个图中区域⑦的运行工 具条。因为比较简单,我们只作一下介绍。 工具条从左到右依次是“Play”、“Step”、“Pause”、“Stop”按钮,即运行、步进、 暂停、停止。下面我们点击“Play”按钮来仿真运行,效果如下图所示,可以看到系统按照 我们的程序在运行着,而且我们还能看到其高低电平的实时变化。如果我们已经观察到了结 果就可以点击“Stop”来停止运行。

5.2 抢答器 protenus 软件的仿真

绘制抢答器的软件仿真图步骤分一下四步: (1) 、查找所需要的元器件; (2) 、根据电路图进行连线; (3) 、l 是用来写线所对应的坐标,即下图所示的 P1.1 等坐标;

(4)、下载所写完的 C 程序即可以仿真。 通过以上步骤,来实现抢答器设计的仿真实现,仿真如下图所示:

图 5-2-1 抢答器的 proteus 仿真图

23

电气工程系

第六章 调试功能说明

6.1 系统的调试

系统调试包括硬件调试和软件调试,而且两者是密不可分的。我们设计好的硬件电路和 软件程序,只有经过联合调试,才能验证其正确性;软硬件的配人情况以及是否达到设计任 务的要求,也只有经过调试,才能发现问题并加以解决、完善,最终开发成实用产品。 硬件调试分单元电路调试和联机调试,单元电路试验在硬件电路设计时已经进行,这里 的调试只是将其制成印刷电路板后试验电路是否正确,并排除一些加工工艺性错误(如错线、 开路、短路等) 。这种调试可单独模拟进行,也可通过开发装置由软件配合进行。硬件联机调 试则必须在系统软件的配合下进行。 软件调试一般包括分块调试和联机调试两个阶段。程序的分块调试一般在单

片机开发装 置上进行,可根据所调程序功能块的入口参量初值编制一个特殊的程序段,并连同被调程序 功能块一起在开发装置上运行;也可配合对应硬件电路单独运行某程序功能块,然后检查是 否正确,如果执行结果与预想的不一致,可以通过单步运行或设置断点的方法,查出原因并 加以改正,直到运行结果正确为止。这时该 程序功能块已调试完毕,可去掉附加程序段。其 它程序功能块可按此法进行调试。程序联机调试就是将已调试好的各程序功能块按总体结构 联成一个完整程序,在所研制的硬件电路上运行。从而试验程序整体运行的完整性、正确性 和与硬件电路的配合情况。在联调中可能会有某些支路上的程序、功能块因受条件制约而得 不到相应的输入参数,这时,调试人员应创造条件进行模拟调试。在联调中如发现硬件问题 也应及时修正,直到单片机系统的软件、硬件全部调试成功为止。系统调试完成后,还要进 行一段时间的试运行,从而检验系统的稳定性和抗干扰能力,验证系统功能是否达到设计要 求,是否达到预期的效果。

6.2 软件调试问题及解决

首先对所用软件及使用方法介绍如下: 1、Keil 是德国开发的一个 51 单片机开发软件平台,最开始只是一个支持 C 语言和汇编语言 的编译器软件。后来随着开发人员的不断努力以及版本的不断升级,使它已经成为了一个重 要的单片机开发平台,不过 KEIL 的界面并不是非常复杂,操作也不是非常困难,很多工程 师的开发的优秀程序都是在 KEIL 的平台上编写出来的。可以说它是一个比较重要的软件, 熟悉他的人很多很多,用户群极为庞大,要远远超过伟福等厂家软件用户群,操作有不懂的

24

电气工程系

地方只要找相关的书看看,到相关的单片机技术论坛问问,很快就可以掌握它的基本使用了。 2、 总调,即应用软件的链接调试,程序固化,软、硬件结合的应用系统 软硬件联合仿真系统由一个硬件执行环境和一个软件执行环境组成,通常软件环境和硬件环 境都有自己的除错和控制界面,Keil 与 Proteus 的整合调试可以实现系统的总调,在该系统 中,Keil 作为软件调试界面,Proteus 作为硬件仿真和调试界面,下面说一下如何在 keil 中 调用 proteus 进行 MCU 外围器件的仿真。 (1) 、安装 keil 与 proteus。 (2) 、把安装 proteus\ MODELS 目录下 VDM51.dll 文件复制到 Keil 安装目录的 \C51\BIN 目 录中。 (3) 、修改 keil 安装目录下 Tools.ini 文件,在 C51 字段加入 TDRV5=BIN\VDM51.DLL (的名字 随意) 3、 打开 proteus, 画出相应电路, proteus 的 debug 菜单中选中 use remote debug monitor 在 4、在 keil 中编写 C 语言程序 5、进入 KEIL 的 project 菜单 option for target '工程名'。在 DEBUG 选项中右栏上部的下 拉菜单选中 Proteus VSM Monitor-51 Driver。 6、在 keil 中进行 debug 吧,同时在 proteus 中查看直观的结果(如 LCD 显示„)这样就可 以像使用仿真器一样调。 问题:有时候在自己创建的元器件的管脚上无法实现连线。 回答:应该是管脚的间距太小了。因为在 ISIS 中,每个元器件的管脚都要占据一块区域(就 像自己的保护区一样,不容别人随意侵犯) ,该区域会排斥外部的走线。解决问题的方法是在 走线的同时按住 “CTRL”键,直到走线绕过狭窄的保护区。当然最根本的办法是重新编辑元 器件,把其管脚间距调大一些。 主持人按键来控制总开关,主持人按下开关那么选手开始抢答,此时数码管开始 0—60 计数,并且选手们必须在规定的时间内进行抢答,若过了 60 秒还没抢答那么抢答失效,选手 们若有一个在规定的时间内抢答成功则其余的选手不可以再抢答,即该选手抢答成功。

6.3 焊接的问题及解决

一般来说,造成硬件问题的首要问题就是焊接了,也就是说焊接的好与坏直接响产品的

25

电气工程系

正常运行。造成焊接质量不高的常见原因是:①焊锡用量过多,形成焊点的锡堆积;焊锡过少, 不足以包裹焊点。②冷焊。焊接时烙铁温度过低或加热时间不足,焊锡未完全熔化、浸润、焊 锡表面不光亮(不光滑),有细小裂纹(如同豆腐渣一样!)。 ③夹松香焊接,焊锡与元器件或印刷 板之间夹杂着一层松香,造成电连接不良。若夹杂加热不足的松香,则焊点下有一层黄褐色松 香膜; 若加热温度太高,则焊点下有一层碳化松香的黑色膜。 对于有加热不足的松香膜的情况, 可以用烙铁进行补焊。对于已形成黑膜的,则要引脚的电压要正常为 5V 左右。

6.4 单片机的通信

图 6-4 MAX232 与 RS-232D 的连接图

(1) 、RS232C 是一种标准接口,D 型插座,采用 25 芯引脚或 9 芯引脚的连线器,我们一般采 用 9 芯引脚的。信号线的引脚和功能如下: TXD(第 2 脚) :发送数据线,输出。发送数据到 MODEN。 RXD(第 3 脚) :接受数据线,输入。接收数据到计算机或终端。 RTS(第 7 脚) :请求发送,输出。计算机通过此引脚通知 MODEN,要求发送数据。

26

电气工程系

CTS(第 8 脚) :允许发送,输入。发出作为对的回答,计算机才可以进行发送数据。 DSR(第 6 脚) :数据装置就绪(即 MODEN 准备好) ,输入。表示调制解调器可以使用, 该信号有时直接接到电源上,这样当设备连通 shir 时即有效。 CD(第 1 脚) :载波检测(接收线信号测定器) ,输入。表示 MODEN 已与电话线路连接 好。 RI(第 9 脚) :振铃指示,输入。MODEN 若接到交换台送来的振铃呼叫信号,就发出该 信号来通知计算机或终端。 DTR(第 4 脚) :数据终端就绪,输出。计算机收到 RI 信号以后,就发出信号到 MODEN 作为回答,以控制它的转换设备,建立通信链路。 GND(第 5 脚) :接地,信号地。 规定:对 TXD 和 RXD 上的数据信号“1”的逻辑电平在-3V——-15V 之间, “0”的逻辑电平在 +3V——+15V 之间;对于 DTR、DSR、RTS、CTS、CD 等控制信号,-3V——-25V 表示信号无效, 即断开,+3V——+25V 表示信号有效,即接通。 (2) 、MAX232 接口电路 MAX232 芯片是 MAXIM 公司生产的具有两路接收器和驱动器 IC 芯片,其内部有一个电源 电压变化器,可以将输入+5V 的电压变换成 RS-232C 输出电平所需的+12V、-12V 电压。在其 内部同时也完成 TTL 信号电平和 RS-232C 信号电平的转换。所以,采用此芯片实现接口电路 只需要单一的+5V 电源就可以了。 MAX232 芯片的引脚图如 6-4 所示,其中管脚 1 到 6 用于电源电压的转换,值要在外部接 入相应的电解电容即可;管脚 7 到 10 和管脚 11 到 14 构成两组 TTL 信号电平与 RS232C 信号 电平的转换电路,对应管脚可直接与单片机串行口的 TTL 电平引脚和 PC 机的 RS232C 电平引 脚相连。

27

电气工程系

经过近一个月的努力,在老师和同学的商讨和帮助下,我较好的完成了设计任务,通过此 次课程设计,我重新认识到了自学的重要性,以及学以致用的道理。我在图书馆查阅了大量 的资料,同时也认识到了图书馆的重要作用。通过此次的抢答器的设计,让我重新拾起了以 前所学习的电子知识,及我觉得此次设计让我更加巩固了所学的知识并在设计的过程中学会 了与时俱进,克服了编程的枯燥感,让

我受益匪浅。在学习单片机这门课程的时候,我们应 该好好你的记笔记,课下好好的做练习题才能把 C 程序设计灵活的运用到单片机程序的设计 上,在单片机这门课程的学习上,我们还应该知道一种常用的仿真软件 proteus 软件,可以 让你我们更为清晰的掌握 89C51/52 系列的实际应用上的设计。在今后的学习过程中,应该多 到图书馆看一些专业方面的书籍,以丰富自己的知识。也使我加深了对单片机及接口技术的 理解和应用,由于知识水平的局限,设计中可能会存在着一些不足,我真诚的接受老师和同 学的批评和指正.。

28

电气工程系

工作展望

经过一个月的毕业设计,我深刻明白了理论知识与社会实践相结合的道理,也得到了以前书本知识 所不曾得到的知识,更加明白了如今信息时代电子技能知识的重要性。

本设计增强了我对实际通信技术、电子信息等方面的认识,掌握了分析、处理问题的方 法、逻辑思维能力等基本技能的训练,具有了一定程度的实际工作能力。 面对如此激烈的市场竞争体系,只有努力掌握好电子通信知识方可在竞争中立于不败之 地,我对从事电子设计、C 语言编程和研究产生了浓厚的兴趣。希望自己以后能通过自己的 不懈努力取得更大的进步。 从上述单片机计术的发展现状与趋势来看,可以认为单片机又一次进入了蓬勃发展的新 高潮。而这一次发展高潮涉及的范围更广,技术更新更难,影响力和影响面也更宽,势必对 整个信息产业产生更加深远的影响,也将对下一世纪的社会经济发展产生巨大影响,值得密 切注视和研究。

29

电气工程系

参考文献、资料索引

文献、资料名称

编著者

出版单位

30

电气工程系

《单片机典型模块设计实例导航》 求是科技,张立科 《单片机原理及应用技术》 《单片机原理及接口技术》 李金利 董晓红

北京:人民邮电出版社 北京:高等教育出版社

2004 年 2004 年

西安电子科技大学出版社 2004 年 北京:电子工业出版社 2007 年 北京:机械工业出版社 清华大学出版社 清华大学出版社 高等教育出版社 高等教育出版社 高等教育出版社 高等教育出版社 高等教育出版社 高等教育出版社 2003 年 2003 年 2004 年 2005 年 2003 年 2002 年 2005 年 2001 年 2003 年

《数字电路设计与应用实践教程》 王振红 《单片机系统的 proteus 设计及仿真》 张靖武,周灵斌 《C 程序设计》 《单片机原理与实用技术》 《电子技术基础》 《电路基础》 《数字电子技术》 《模拟电子技术》 《电路基本分析》 《电子电路及电子器件》 潭浩强 付晓光 邹寿彬 徐熙文 杨志忠 胡宴如 石生 郭培源

31

电气工

程系

首先衷心地感谢我的导师樊辉娜。本文从选题到完成,从理论上的探讨到实际问题的解 决,无处不饱含着樊辉娜导师的心血。樊辉娜导师的悉心指导和建议给了我极大的帮助和支 持,使我受益匪浅,在此论文完成之际,谨向樊辉娜导师致以深深的谢意和崇高的敬意。

32


相关文章

  • 四人智力竞赛抢答器的设计
  • 年论文﹙设计题 目 学生姓名 学号 所在院(系) 专业班级 指导教师 2012年06月10日 学﹚ 四人智力竞赛抢答器的设计 [摘要]应用Multisim 10软件对4路竞赛抢答器进行设计与仿真.四人智力竞赛抢答器电路主要由抢答电路.倒计时 ...查看


  • 智能抢答器毕业设计
  • 电 子 机 械 高 等 专 科 学 校 2011 届毕业设计(论文) 智能抢答器毕业设计 学生姓名: 指导教师: 专 业: 班 级: - 1 - 目 录 摘要 ········································ ...查看


  • 八路抢答器EDA课程设计VHDL
  • 第一章 EDA技术简介 EDA在通信行业(电信)里的另一个解释是企业数据架构,EDA给出了一个企业级的数据架构的总体视图,并按照电信企业的特征,进行了框架和层级的划分. 20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新 ...查看


  • 智力竞赛抢答器逻辑电路设计1
  • 多路智力竞赛抢答器 XXXX (XXXX 学院 电子信息工程学院,XXXX XXXX) 摘要:抢答器作为一种工具,已经广泛应用于各种智力和知识竞赛场合.本设计以多路智力竞赛抢答器为基本概念,从实际应用出发, 利用电子设计自动化( EDA) ...查看


  • PLC六路抢答器课程设计
  • 漯职业技术学院 毕业设计说明书 专业:机电一体化技术学号:指导老师:赵滟平 [1**********]04 2010年 3月 29 日 摘 要 随着我国经济和文化实业的发展,在很多公开竞争场合要求有公正的竞争裁决,诸如证券.股票交易及各种智 ...查看


  • 四路抢答器毕业设计
  • 滁州职业技术学院机电系 毕 业 设 计 课 题: 抢答器 设计时间: 2014.11-2014.12 班 级: 机 电(4)班 学 号: 姓 名:指导教师: 杨入超 摘 要 随着微处理器.计算机和数字通讯技术的飞速发展,计算机控制已扩展到了 ...查看


  • 八路抢答器的设计
  • 郑州科技学院 EDA(电子设计自动化 设计报告) 题 目 电子抢答器的设计 学生姓名 陈 福 秀 专业班级 09电科一班 学 号 所 在 系 电气工程学院 任课教师 赵 明 冬 完成时间 2012年12月17日 目 录 1.八人抢答器设计题 ...查看


  • 多路数字抢答器设计报告
  • 题目:多路数字抢答器设计 专业班级:姓 名:时 间:指导教师:完成日期: 2012年06月 08 日 多路数字抢答器设计任务书 1.设计目的与要求 设计一个八位智力竞赛抢答器.准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功 ...查看


  • 智力竞赛抢答器
  • 数字电子技术课程设计 智力竞赛抢答器 系 . 部: 指导教师: 专 业: 电子信息工程 班 级: 完成时间: 2011-6-7 设计学生: 陆涛 摘 要 抢答器很广泛的用于电视台.商业机构及学校,为竞赛增添了刺激性.娱乐性,在一定 程上丰富 ...查看


  • 四路智力竞赛抢答器设计
  • 四路多路智能抢答器设计 前言 关于这次设计的用于多人竞赛抢答的器件,在现实生活中很常见,尤其是在随着各种智益电视节目的不断发展,越来越多的竞赛抢答器被用在了其中,这种抢答器的好处是不仅能够锻炼参赛选手的反应能力,而且能增加节目现场的紧张.活 ...查看


热门内容