




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
I 基于 Proteus 的抢答器的设计与仿真 摘 要 单片机作为微型计算机的一个分支,发展十分迅速,被广泛地应用于各个领域,单 片机的发展是控制技术的一次革命。市面上的抢答器各种各样,五花八门,种类繁多。 大体上分两种,一种是用数字电路制作的抢答器,另一种是用单片机控制的抢答器。 本文介绍了以 AT89C51 为核心的单片机数字抢答器。该简易设计可以使用一个 LED 数码管显示获得抢答权的选手号码,另一个进行倒计时,可通过二极管发光及蜂鸣器报 警提示。扩展设计可通过编写程序来实现抢答器的基本功能,提供了限时答题,抢答未 开始的抢答违规处理,抢答时间和限时的修改。通过一个四位共阴二极管显示器来显示 选手编号和倒时时间显示,通过二极管发光及蜂鸣器报警提示。本文详细介绍了两种抢 答器的设计过程,通过软件 Proteus 设计电子电路原理图,最后使用 Keil uVision3 编 写程序,转换成 hex 的文件使用 Proteus 进行模拟仿真。 关键词:单片机 抢答器 Proteus Keil uVision3 II The design and simulation of the responder based on Proteus Abstract Micro Controller Unit(MCU)which develops quickly is one embranchment of the Microcomputer. It is used widely in various fields. The development of MCU is a revolution of the control technology. The quiz answers in the market are diversity and variety. Generally there are two kinds. One is made by digital circuits. Another is controlled by MCU. This paper introduces an digital quiz answer controlled by MCU, which core is the AT89C51 chip. The simple design we can use one LED numerical tube to display the number of the player who gets the first right to answer. Another LED numerical tube is used to count down, and can warn through diode radiation and buzzer alarm. Expand design can achieve the variety of functions through programming. It provides limited answer; the responder on illegal processing vies to answer first. To modify the vies to answer first time and restricted time. Though a four public cathode diodes monitor to display contestants numbers and countdown .And can warn through diode radiation and buzzer alarm. This paper introduces the process of the design of the two quiz answers in detail. Draw the electronics principle schema with the Proteus. Finally write the procedures use the software which is called Keil uVision3. Then use the Proteus to simulate Key words:MCU; Quiz answer; Proteus; Keil uVision3 III 摘摘 要要 .I ABSTRACTII 第一章概述第一章概述.1 11 单片机简介.1 12 单片机的发展和应用领域.1 13 单片机抢答器简介.3 14 PROTEUS软件的简介3 第二章第二章 相关元器件简介相关元器件简介.5 21 AT89C51 功能简述.5 22 AT89C51 引脚功能说明6 23 七段数码管简介.7 第三章第三章 方案设计方案设计.8 31 设计要求.8 32 设计思想.8 33 方案论证.9 第四章第四章 硬件设计硬件设计.10 41 简易方案电路原理图设计.10 42 扩展方案电路原理图设计.13 第五章第五章 软件设计软件设计.18 51 设计思想以及流程图.18 52 中断分析.22 53 部分代码设计.24 第六章第六章 系统的仿真和调试系统的仿真和调试.26 61 PROTEUS软件的使用介绍26 62 系统的调试.29 第七章第七章 总结与展望总结与展望.31 71 总结.31 72 展望31 参考文献参考文献.33 致谢致谢.34 南京工业大学本科生毕业设计(论文) 1 第一章概述 11 单片机简介单片机简介 单片微机(Single-Chip Microcomputer)简称单片机,统称微型处理部件 (Micro Controller Unit 简写 MCU),是一种集成电路芯片,采用超大规模技术把 具有数据处理能力(如算术运算,逻辑运算、数据传送、中断处理)的微处理器 (CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路 (I/O 口),可能还包括定时/计数器,串行通信口(SCI),显示驱动电路(LCD 或 LED 驱动电路),脉宽调制电路(PWM),模拟多路转换器及 A/D 转换器等电路 集成到一块芯片上,构成一个最小而完善的计算机系统。这些电路能在软件的 控制下准确、迅速、高效地完成程序设计者事先规定的任务。最早的设计理念 是通过将大量外围设备和 CPU 集成在一个芯片中,使计算机系统更小,更容易 集成进复杂的而对提及要求严格的控制设备当中。INTEL 的 Z80 是最早按照这 种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。 单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤 其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些 则是花大力气也很难做到的。一个不是很复杂的功能要是用美国 50 年代开发的 74 系列,或者 60 年代的 CD4000 系列这些纯硬件来搞定的话,电路一定是一块 大 PCB 板,但是如果要是用美国 70 年代成功投放市场的系列单片机,结果就会 有天壤之别,只因为单片机的通过你编写的程序可以实现高智能,高效率,以 及高可靠性。 12 单片机的发展和应用领域单片机的发展和应用领域 1946 年第一台电子计算机诞生至今,只有 50 年的时间,依靠微电子技术 和半导体技术的进步,从电子管、晶体管、集成电路、大规模集成电路,现在 一块芯片上完全可以集成几百万甚至上千万只晶体管,使得计算机体积更小, 功能更强。 1976 年美国 INTEL 公司推出了 MCS-48 单片机,这个时期的单片机才是真 正的 8 位单片微型计算机,并推向市场。 1980 年美国 INTEL 公司又推出了 MCS51 单片机,与 MCS48 单片机相比, 它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令, 第一章 概述 2 一直到现在,MCS-51 系列或其兼容的单片机仍是应用的主流产品。MCS-51 把微 型计算机的主要部件都集成在一块芯片上,使得数据传送距离大大缩短,可靠 性更高,运行速度更块。由于属于芯片化的微型计算机,各功能部件在芯片中 的布局和结构达最优化,抗干扰能力加强,工作亦相对稳定。因此,在工业测 控系统中,使用单片机是最理想的选择。单片机属于典型的嵌入式系统,所以 它是低端控制系统最佳器件。 8051 是 MCS-51 系列单片机中的代表产品,它内部集成了功能强大的中央 处理器,包含了硬件乘除法器、21 个专用控制寄存器、4kB 的程序存储器、128 字节的数据存储器、4 组 8 位的并行口、两个 16 位的可编程定时/计数器、一 个全双工的串行口以及布尔处理器。8051 中还集成了各种中断源,用户可十分 方便地控制和使用其功能,使得它的应用范围加大,可以说它可以满足绝大部 分的应用场合。8031 单片机是 INTEL 公司生产的 MCS-51 系列单片机中的一种, 除无片内 ROM 外,其余特性与 MCS-51 单片机基本一样。 1982 年以后,16 位单片机问世,代表产品是 INTEL 公司的 MCS-96 系列。 现在 ATMEL 公司的功能强大、低价位的 AT89S51 单片机占主流地位,可提供许 多高性价比的应用场合,可灵活应用于各种控制领域。 此期间,单片机园地里,单片机品种异彩纷呈,争奇斗艳。有 8 位、16 位, 甚至 32 位机,但 8 位单片机仍以它的价格低廉、品种齐全、应用软件丰富、支 持环境充分、开发方便等特点而占着主导地位。而 INTEL 公司凭着他们雄厚的 技术,性能优秀的机型和良好的基础,目前仍是单片机的主流产品。 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备 的智能化管理及过程控制等领域,大致可分如下几个范畴: 1. 在智能仪器仪表上的应用:如精密的测量设备(功率计,示波器,各种 分析仪) 。 2. 在工业控制中的应用:如工厂流水线的智能化管理,电梯智能化控制、 各种报警系统,与计算机联网构成二级控制系统等。 3. 在家用电器中的应用:从电饭煲、洗衣机、电冰箱、空调机、彩电、其 他音响视频器材、再到电子秤,五花八门,无所不在。 4. 在计算机网络和通信领域中的应用:从手机,电话机、小型程控交换机、 楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话, 南京工业大学本科生毕业设计(论文) 3 集群移动通信,无线电对讲机等。 5. 单片机在医用设备领域中的应用:如医用呼吸机,各种分析仪,监护仪, 超声诊断设备及病床呼叫系统等等。 此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十 分广泛的用途。 13 单片机抢答器简介单片机抢答器简介 在知识竞赛中,特别是做抢答题时,在抢答过程中,为了更确切的知道哪 一组或哪一位选手先抢答到题,必须要有一个系统来完成这个任务。若在抢答 中,只靠人的视觉或者是听觉是很难判断出哪一组或哪一个选手先抢答到题目 的。抢答器一般是由很多电路组成的,线路复杂,可靠性不高,功能也比较简 单,特别是当抢答路数很多时,实现起来就更为困难。利用单片机编程来设计 抢答器,可以使以上问题得以解决,即使两组的抢答时间相差几微秒,也能轻 松的分辨出哪一组或哪个选手先抢答到题目的。 因此我们设计了以单片机为核心的新型的抢答器,在保留了原始抢答器的 基本功能的同时又增加一系列的实用功能并简化其电路结构。抢答器又称为第 一信号鉴别器,其主要应用于各种知识竞赛、文艺活动等场合。 14 Proteus 软件的简介软件的简介 Proteus 软件是 Labcenter Electronics 公司的一款电路设计与仿真软件, 它包括 ISIS、ARES 等软件模块,ARES 模块主要用来完成 PCB 的设计,而 ISIS 模块用来完成电路原理图的布图与仿真。Proteus 的软件仿真基于 VSM 技术, 它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片, 比如 MCS-51 系列、PIC 系列等等,以及单片机外围电路,比如键盘、LED、LCD 等等。通过 Proteus 软件的使用我们能够轻易地获得一个功能齐全、实用方便 的单片机实验室。它除了具有和其它 EDA 工具一样的原理布图、PCB 自动或人 工布线及电路仿真的功能外,其革命性的功能是,它的电路仿真是交互的,可 视化的,针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程, 并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的 效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,可以测量仿真的波 形及记录仿真数据。在不需要硬件设备投入的情况下,Proteus 软件可以建立 第一章 概述 4 完整的电子学习设计开发环境,缩短研发周期,并且降低开发成本。Proteus 组合了高级原理布图、混合模式 SPICE 仿真,PCB 设计以及自动布线来实现一 个完整的电子设计系统。此系统受益于多年来的持续开发,被电子世界在其 对 PCB 设计系统的比较文章中评为最好产品“The Route to PCB CAD”。 Proteus 产品系列也包含了我们革命性的 VSM 技术,用户可以对基于微控制器 的设计连同所有的周围电子器件一起仿真。用户甚至可以实时采用诸如 LED/LCD、键盘、RS232 终端等动态外设模型来对设计进行交互仿真。其功能模 块:个易用而又功能强大的 ISIS 原理布图工具;PROSPICE 混合模型 SPICE 仿真; ARES PCB 设计。PROSPICE 仿真器的一个扩展 PROTEUS VSM:便于包括所 有相关的器件的基于微处理器设计的协同仿真。此外,还可以结合微控制器软 件使用动态的键盘,开关,按钮,LED 甚至 LCD 显示 CPU 模型。 南京工业大学本科生毕业设计(论文) 5 第二章 相关元器件简介 本设计将采用 AT89C51 芯片,AT89C51 是美国 ATMEL 公司生产的低电压、 高性能 CMOS8 位单片机。AT89C51 芯片不仅包括 CPU、RAM、ROM、定时器、串行 口、I/O 接口等主要功能部件之外,还有驱动器、锁存器、指令寄存器、地址 寄存器等辅助部分。CPU 是单片机最核心的部分,是单片机的大脑和心脏,主 要完成运算和控制功能。RAM 用于存放变化的数据,其地址空间为 256 个 RAM 单元,但其中能作为数据存储器供用户使用的仅有前面 128 个,后 128 个被专 用寄存器占用。ROM 用于存放程序和固定不变的常数等等。通常采用只读存储 器,且其有多种类型,在 89 系列单片机中全部采用闪存、定时/计数器用于实 现定时和计数功能。 2 21 1 AT89C51 功能简述功能简述 AT89C51 提供以下标准功能:4K 字节 Flash 闪存存储器,128 字节内部 RAM,32 个 I/O 口线,看门狗(WDT) ,两个数据指针,两个 16 位定时/计数器, 一个 5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。 支持两种软件可选的节电工作方式,空闲方式停止 CPU 的工作,但允许 RAM, 定时/计数器,串行通信口及中断系统继续工作,掉电方式保存 RAM 中的内容, 但振荡器停止工作并禁止其他所有部件工作直到一个硬件复位。AT89C51 采用 40Pin 封装的双列直接 DIP 结构。40 个引脚中,正电源和地线两根,外置石英 振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。 AT89C51 中有一个用与构成内部振荡器的高增益反相放大器,引脚 XTAL1 和 XTAL2 分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片 外石英晶体或陶瓷谐振器一起构成自激振荡器。外接石英晶体或陶瓷谐振器及 电容 C1、C2 接在放大器的反馈回路中构成并联振荡电路。对外接电容 C1、C2 虽然有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡 器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,推荐电 容使用 30pF10pF。而如使用陶瓷谐振器建议选择 40pF10F。 第二章 相关元器件简介 6 22 AT89C51 引脚功能说明引脚功能说明 图 2-1 AT89C51 的引脚图 RST:复位输入。当振荡器工作时,RST 引脚出现两个机器周期以上的高电平将 单片机复位。 /VPP:外部访问允许。要使 CPU 只访问外部程序存储器(地址 0000HFFFFH) ,EA 端就要保持低电平(接地) 。如 EA 端为高电平(接 VCC 端) , CPU 则执行内部程序存储器中的指令。Flash 存储器编程时,该引脚加上12V 的编程电压 VPP。 XTAL1:振荡器反相放大器及内部时钟发生器的输入端。 XTAL2:振荡器反相放大器的输出端。 P0 口:P0 口是一组双向 I/O 口,即地址/数据总线复用口。 P1 口:P1 口是一组具有内部上拉电阻的 8 位双向 I/O 口。 P2 口:P2 口也是一组具有内部上拉电阻的 8 位双向 I/O 口,在访问外部程序存 储器或 16 位地址的外部数据存储器(例如执行 MOVX DPTR 指令)时,P2 口送 出高 8 位地址数据。 P3 口:P3 是一组具有内部上拉电阻的 8 位双向 I/O 口, P3 口除了作为一般的 I/O 口线外,更重要的用途是它的第二功能。 P3 口第二功能:P3.0 第二功能 RXD 串行输入口,P3.1 第二功能串行输出口, P3.2 第二功能外中断 0,P3.3 第二功能外中断 1,P3.4 第二功能 T0 定时/计数 器 0,P3.5 第二功能 T1 定时/计数器 1,P3.6 第二功能外部数据存储器写选通, P3.7 第二功能外部数据存储器读选通。 南京工业大学本科生毕业设计(论文) 7 2 23 3 七段数码管简介七段数码管简介 LED 显示器是由发光二极管显示字段的显示器件。由图 2-2 可知它由 8 个 发光二极管构成,通过不同的组合可用来显示 09、AF 及小数点“.”等字符。 图中 dp 表示小数点,COM 表示公共端。数码管通常有共阴极和共阳极两种型号。 共阴极数码管如图 2-3 所示,它的发光二极管公共端接低电平,当某一发光二 极管的阳极连到高电平时,此发光二极管点亮;共阳极数码管如图 2-4 所示, 它的发光二极管是公共端并接到高电平,须点亮的发光二极管阴极接低电平即 可。显然,要显示某字形就应使此字形的相应字段点亮,实际就是送一个用不 同电平组合代表的数据到数码管。 图 2-2 数码管引脚图 图 2-3 共阴极数码管引脚图 图 2-4 共阳极数码管引脚图 第三章 方案设计 8 第三章 方案设计 31 设计要求设计要求 使用 AT89C51 设计一个能够容许 5-8 人进行抢答,能显示倒计时,显示抢 答选手的号码,在适当的时候会有提示灯和报警声,有复位控制电路。在这个 基础上增加一些功能,当有选手违规抢答时显示其号码,抢答之后答题时间限 制的倒计时,可以提供抢答时间和答题时间的调整。 32 设计思想设计思想 1、简易方案设计思想 由于之前生产实习焊接过一个简易抢答器,所以可以参考那个的制作方案。 (1). 系统设置复位按钮,按动后,可以开始抢答。 (2). 抢答开始时,LED 数码管 1 显示序号“0” ,选手抢答实行优先锁存, 优先抢答选手的编号一直保持到将系统清除为止。抢答后显示优先抢答者序号, 同时发出声响,并且不出现其他后抢答者的序号。 (3). 抢答器具有定时抢答功能,本抢答器的时间设定为 10 秒,当启动 “复位”开关后,定时器开始倒计时。 (4). 在设定的抢答时间内,选手可以进行抢答,抢答后定时器停止工作, LED 数码管 1 上显示获得优先答题权的选手号码,LED 数码管 2 显示抢答时间, 并保持到按“复位”键。 (5). 当设定的 10s 时间到,而无人抢答时,本次抢答无效,报警器发出 声响,并禁止抢答,LED 数码管 1 仍显示“0” ,LED 数码管 2 不显示任何数字。 2、扩展方案设计思想 (1) 此抢答器设计使用 AT89C51 单片机为工作的核心,它主要负责控制 各个部分协调工作,在其外围接上复位电路,上拉电阻,数码管,按钮及扬声 器。元件主要有:晶振 X1,电容 C1、C2、C3,上拉电阻 RP1,7SEG-MPX4- CC。AT89C51 的 P1.0-P1.7 由选手控制来进行抢答,P0 口为数码管的段选口,位 选口用的是 P2 口的低 4 位, 外部中断 0,P3.1 控制发光二极管,P3.0 抢答开 始,P3.2 答题开始,P3.3 抢答时间调节,P3.4 答题时间调节,3.7 蜂鸣器的控 制口。 南京工业大学本科生毕业设计(论文) 9 (2). 蜂鸣器在按下开始之后会出现长鸣,在抢答时间和答题还剩 3 秒时 会响三声,随着时间一秒响一次,当有人违规抢答时会发出一声短促的鸣叫。 (3). 数码管采用共阴极七段显示,其内部发光二极管为共阴极接低电平。 当 Proteus 模拟开始之后四个数码管一三四分别显示“F” ,当按下开始之后, 显示初始设置的时间开始倒计时,当有人抢答,显示其相应号码,并显示抢答 停止的时间,当按下答题开始之后,同样显示倒计时,此时抢答键无效,当结 束后显示三个“F” ,时间调节键按一下显示时间加一下之后的时间。 (4) 此设计还设置了一个违规处理,既开始还没按下就开始抢答,屏幕 上将显示违规选手号码和两个“F” 。按下复位可恢复到开始前状态。 33 方案论证方案论证 该系统采用 MCS-51 系列单片机 AT89C51 作为控制核心,该系统可以完成运 算控制、信号识别以及显示功能的实现。由于用了单片机,使其技术比较成熟, 应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。 整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改性。 MCS-51 单片机特点如下: 1、可靠性好:单片机按照工业控制要求设计,抵抗工业噪声干扰优于一般 的 CPU ,程序指令和数据都可以写在 ROM 许多信号通道都在同一芯片,因此可 靠性高。 2、易扩充:单片机有一般电脑所必须的器件,如三态双向总线,串并行的 输入及输出引脚,可扩充为各种规模的微电脑系统。 3、 控制功能强:单片机指令除了输入输出指令,逻辑判断指令外还有更 丰富的条件分支跳跃指令。 该方案不但从性能上优越,而且在使用上及其功能的实现上都较简洁,并 且由于单片机具有优越的高集成电路性,使其工作速度更快、效率更高。另外 AT89C51 单片机采用 12MHz 的晶振,提高了信号的测量精度,并且使该系统可 以通过软件改进来扩展功能。 第四章 硬件设计 10 第四章 硬件设计 41 简易方案电路原理图设计简易方案电路原理图设计 在使用 Proteus 软件进行电路原理图绘制之前先手画简化的原理图,如图 4- 1 所示: P1 P0 INT1 AT89C5 1 P3.5 P3 P2 按键组 LED 灯组 蜂鸣器 LD2 LD1 图 4-1 简易方案原理设计图 各部件所对应 AT89C51 的端口如表 4-1 所示: 表 4-1 对应 AT89C51 端口控制 元件名对应端口 复位开关 RST 晶振电路XTAL1 和 XTAL2 外部中断P3.3() 蜂鸣器 P3.5 K1K5P1.0P1.4 LED1P3.0 LED2P3.1 LED3P3.4 LED4P3.6 LED5P3.7 LD1 的 agP0.0P0.6 LD2 的 agP2.0P2.6 经过设计分析在 Proteus 软件中找出相应元件,画出原理图。首先设计各小部 分电路然后整体调整。 南京工业大学本科生毕业设计(论文) 11 1晶振电路 外部振荡电路单片机必须在 AT89C51 的驱动下才能工作,在单片机内部 有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单 片机内部的各个单元。外部震荡电路如图 4-2 所示: 图 4-2 晶振电路 2复位电路 单片机外部中断和内部中断并存,它有硬件复位端 RST,只要输入持续 4 个机器周期的高电平既可实现复位。硬件复位后的各状态可知寄存器和存储器 的值都恢复到了初始值,应该为本设计功能中有倒计时时间的记忆功能,所以 不能对单片机进行硬件复位,只能使用软复位。软复位实际上就是当程序执行 完毕之后,将程序指针通过一条跳转指令让它跳转到程。复位电路虽然简单, 但其作用非常重要。一个单片机系统能否正常运行,首先要检查是否复位成功。 此复位电路直接接在 AT89C51 的 RST 端口上,RST 引脚是复位信号的输出端, 复位信号是高电平有效,因为使用的是 12M 晶振,其有效时间应持续 24 个振荡 周期(即两个机器周期)以上。具体设计如图 4-3 所示。 图 4-3 复位电路 3抢答按键电路 图 4-4 是抢答器的输入部分,K1K5 是 5 个按钮,是选手抢答时使用的 第四章 硬件设计 12 抢答按键,按键是一种常开型按钮开关,常态时,即没有进行抢答时,按键的 两个触点处于断开状态,接的是 VCC,是高电平,一旦有人抢答按键了,两个 触点闭合,则接通了低电平,转入抢答中断程序。这 K1K5 分别接在图 4-4 的 15 引脚上,用 AT89C51 的 P1.0P1.4 来查询按键,分辨出是谁先按抢答 键。 其中的 74LS30 是八输入的与非门,74LS04 是非门,这两个器件连接在一 起实际上实现的是与门的功能,只是本单片机智能数字抢答器是供 5 人使用的, 与门一般没有那么多输入口。引脚 6、11、12 可以悬空,表示接高电平,为了 安全起见,就接 VCC,表示“1”。74LS04 的输出端 2 接在抢答器的核心芯片 AT89C51 的中断 1(INT1)上。 图 4-4 按键及其所连接的输入部分 4显示电路 这边显示电路使用的是两个 LED 数码管显示,只要按照图 4-5 所示连接好就 行。 图 4-5 显示电路图 南京工业大学本科生毕业设计(论文) 13 5指示灯电路 图 4-6 是单片机抢答器的输出部分,当输入部分(P1.0P1.4)中有人按 键,输出部分则 LED 灯点亮,发光二极管一端接着阻值相同的排阻,另一端接 在 AT89C51 的 P3.0、P3.1、P3.4、P3.6 和 P3.7 上。 图 4-6 LED 发光部分 整个电路的设计原理图如图 4-7 所示。 图 4-7 整体电路原理图 第四章 硬件设计 14 42 扩展方案电路原理图设计扩展方案电路原理图设计 扩展方案电路原理图在绘制之前也先手画简化原理图,如图 4-8 所示: P0 P1 P3.0 P3.2 AT89C5 1 RST P3.7 P3.1 P3.3 P3.4 按键组 LED 显示 指示灯 抢答开始 答题开始 抢答时间调节 答题时间调节 复位 蜂鸣器 图 4-8 扩展方案原理设计图 各部件对应 AT89C51 的端口如表 4-2 所示: 表 4-2 对应 AT89C51 端口控制 元件名对应端口 复位开关 RST 晶振电路XTAL1 和 XTAL2 蜂鸣器 P3.7 K1K8P1.0P1.7 指示灯 P3.1 开始键 P3.0 答题开始 P3.2 抢答时间调节 P3.3 答题时间调节 P3.4 LED 显示 A-GP0.0P0.6 通过设计分析在 Proteus 软件中找出相应元件,画出原理图晶振电路和 复位电路的设计和上面一样就不再做相应介绍,下面是不同部分的设计。 1抢答按键 南京工业大学本科生毕业设计(论文) 15 抢答按键直接连接到单片机的 P1 端口,一个端口连接一个按键。由线路比 较的多,在其中加入了总线,使得线路更加简单,但要注意端口对应按键的标 上号。 图 4-9 按键电路 2显示电路 由于使用的是 7SEG-MPX4-CC 来显示,而这个是四个共阴极的数码管显示器, 由高电平点亮。 图 4-10 显示器 所以只需 A-G 连 P0 端口的 P0.0-P0.6,然后将 1234 四个位选口连到 P2 的 低四位即可。但是还得加上上拉电阻,这里使用的是排阻 RESPACK-7,所谓排 阻就是若干个参数完全相同的电阻,它们的一个引脚都连到一起,作为公共引 脚。 第四章 硬件设计 16 图 4-11 排阻 图 4-12 显示电路 3开始、调整、蜂鸣以及指示灯电路 功能的完成由程序来实现,首先这边将对应的端口连接好即可。 蜂鸣器和指示灯如图 4-13 所示,这部分的电路如图 4-14 所示。 图 4-13蜂鸣器和指示灯 南京工业大学本科生毕业设计(论文) 17 图 4-14 调节部分、蜂鸣器和指示灯的连接电路 通过以上的各个电路的设计,最终完成全部的原理图如图 4-15 所示: 图 4-15 扩展功能后的原理图 第五章 软件设计 18 第五章 软件设计 51 设计思想以及流程图设计思想以及流程图 抢答器的软件设计主要分主程序、抢答中断、定时中断以及违规处理几 个部分。每个功能模块对于整体设计都是非常重要的,单片机 AT89C51 通过软 件程序才能更好的实现抢答器的功能。 1简易方案电路的主程序流程 开始 初始化部分 开中断,数码管开始显示倒计时 是否有选手抢答 关中断,数码管 2 显示 选手的标号数码管 1 显 示停止时间 Y N 倒计时结 束数码管 1 显示 0, 数码管 2 无显示。 图 5-1 简易方案电路主程序流程图 南京工业大学本科生毕业设计(论文) 19 2简易方案电路外部中断程序图: 外部中断 0 中断 K0 键按下 K1 键按下 K2 键按下 K3 键按下 K4 键按下 中断返回 与 K0 键对应的发光二极管亮及数码管显示 与 K1 键对应的发光二极管亮及数码管显示 与 K2 键对应的发光二极管亮及数码管显示 与 K3 键对应的发光二极管亮及数码管显示 与 K4 键对应的发光二极管亮及数码管显示 Y Y Y Y Y N N N N N 图 5-2 简易方案电路外部中断程序图 第五章 软件设计 20 2扩展方案的主程序流程图: 开始 初始化 读键盘是否 有键按下 中断条件是 否满足 复位键 进入中断程序 N N Y 判断按键类 型 Y 调用相应调节子程序 抢答按键 调节按键 调用显示 抢答违规 并报警子 程序 图 5-3 扩展方案电路主程序流程图 南京工业大学本科生毕业设计(论文) 21 3扩展方案的中断服务程序的流程图: 开中断并响声提示 设定初值并开始倒计时 调用读键程序作为延时程序 是否有键按下 结束前 3 秒发出警报,时 间到中断返回 显示选手号码 时间停止,指 示灯亮并发出 蜂鸣声 Y N 图 5-4 扩展方案的电路中断流程图 4答题小程序的流程图: 开中断并响声提示 显示选手号码并倒计时 结束前 3 秒发出警 报,时间到并响声 提示 RET 图 5-5 答题小程序流程图 第五章 软件设计 22 5抢答器定时器中断流程图: 定时器 0 中断 1 秒时间到? 中断返回 N 秒减 1 数码管显示秒值 Y 图 5-6 定时中断流程图 52 中断分析中断分析 中断是指由于某种随机事件的发生,计算机暂停现行的程序的运行,转去 执行另一个程序,以处理发生的事件,处理完毕后又自动返回原来的程序继续 运行。AT89C51 有五种中断源:外部中断 0、外部中断 1、定时器中断 0、定时 器中断 1、串行中断。它们的描述如表 5-1 所示: 表 5-1 中断介绍 中断源符号名称终端引起的原因中断矢量地址 INT0外部中断 0由 P3.2 低电平或下降沿信号 0003H T0定时器中断 0 定时/计数器 0 回零溢出 P3.4 0013H INT1外部中断 1由 P3.3 低电平或下降沿信号 000BH T1定时器中断 1 定时/计数器 1 回零溢出 P3.5 001BH TI/RI串行中断串行口接收或发送完帧数据引起的中断 0023H 定时器/计数器中所介绍的寄存器: (1) 、定时器/计数器控制寄存器 TCON TCON 的作用是控制定时器的启动、停止,标志定时器的溢出和中断情况; (2) 、中断允许控制寄存器 IE 南京工业大学本科生毕业设计(论文) 23 对中断源的开放或屏蔽是由中断寄存器 IE 控制的,地址为 0A8H,即可以按 字节寻址,也可以按位寻址。当单片机复位时,IE 被清零。 (3) 、定时/计数器控制方法 定时/计数器的控制方法:在启动定时/计数器工作之前 CPU 必须将一些命令 (称为控制字)写入定时/计数器中,这个过程称为定时/计数的初始化。 (定时 /计数器的初始化通过定时/计数器的方式寄存器 TMOD 和控制寄存器 TCON 来完 成。 ) 定时/计数器方式寄存器 TMOD: 表 5-2 定时/计数器寄存器 TMOD D7 D6 D5 D4 D3 D2 D1 D0 89HGAT E C/M1M0GATEC/M1M0 定时器 T1定时器 T0 选择定时方式表: 表 5-3 定时方式介绍 M1M0 工作方式功能说明 00 方式 013 位计数器 01 方式 116 位计数器 10 方式 2自动再装入 8 位计数器 11 方式 3定时器 0:分成两个 8 位计数器;定时器 1:停止计数 当 T0 工作在方式 1,每个机器周期包括 12 个振荡周期,对于 1s 钟是这样处 理的:因为使用的晶振频率为 12MHz,则 1 个机器周期(Tp)= 12/晶振频率 12/12*106 1s,在时钟程序中要计时 1s,可以定时为 Tc4ms,4ms 中断 一次,那么只要计数 250 次,就可以计时 1s(250*4ms1s) ,当然也可以定时 为 5ms,计数 200 次也可以计时 1s,在本抢答器的程序中,Tc=4ms,选用的计 数值 XTc / Tp4*10-3 /1*10-64000,则应装入定时/计数器的时间常数为: 216400065536400061536F060H,即 TH0=F0H=240,TL0=60H=96。 中断传送方式:中断是指由于某种随机事件的发生,计算机暂停现行的程序, 转去执行另一程序以处理发生的 事件,处理完毕后又自动返回原来的程序继续 第五章 软件设计 24 运行。它的优点有: (1) 、实现分时操作:CPU 分为多个 I/O 设备服务,提高计算机的利用率 (提前安排好的函数而中断不同) ; (2) 、实时响应:CPU 能够及时处理应用系统的随机事件,系统的实时性 大大增强; (3) 、可靠性高:CPU 具有处理设备故障及掉电等突发性事件的能力,从 而使系统的可靠性提高。 定时器的初始化步骤: (1)确定工作方式-对 TMOD 赋值; (2)设置初始值-直接将初值写入 THO,TLO; (3)开启定时器的中断-ETO=1 EA=1; (4) 启动定时器-将 TR0 或 TRI 置“1” 。 53 部分代码设计部分代码设计 我所设计的抢答器的程序采用的是 C 程序设计这种结构化方式可使程序层次 清晰, 便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数 可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构 化。虽然 C 语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较 大的自由度。 1简易方案电路的一些代码注释: void init() EA = 1;/初始化中断 EX1 = 1; ET0 = 1; IT1 = 0; TMOD = 0x01; /初始化定时器 0 每 20ms 中断 TH0 = 0xb8; TL0 = 0x00; num = 50; /20ms * 50 = 1s time = 9; 南京工业大学本科生毕业设计(论文) 25 P0 = tabletime; P2 = table10; TR0 = 1; 2扩展方案电路的部分代码注释: 延时函数: void delay(uchar ms) uchar y; for(;ms0;ms-) for(y=120;y0;y-); 中断部分: void T0_Init(void) TMOD=0X01; /采用方式一,即十六位计数器 TH0=(65536-2000)/256; /设置初始值 2ms TL0=(65536-2000)%256; TH1=(65536-2000)/256; TL1=(65536-2000)%256; ET0=1; /*开启总中断源*/ ET1=1; EA=1; P0=0; 第六章 系统的仿真和调试 26 第六章 系统的仿真和调试 61 Proteus 软件的使用介绍软件的使用介绍 在使用前首先要熟悉一下 Proteus 的界面,所使用的是 Proteus7.1,Proteus 是一个标准的 Windows 窗口程序,和大多数程序一样, 没有太大区别,安装之后启动 ISIS 7 Professional。其启动界面如图 6-1 所 示: 图 6-1 Proteus 主界面 如图 6-1 中所示,区域为菜单及工具栏,区域为预览区,区域为元 器件浏览区,区域为编辑窗口,区域为对象拾取区,区域为元器件调整 工具栏,区域为运行工具条。 首先点击启动界面区域中的“P”按钮(Pick Devices,拾取元器件) 来打开“Pick Devices”(拾取元器件)对话框从元件库中拾取所需的元器件。 对话框如图 6-2 所示。 在对话框中的“Keywords”里面输入我们要检索的元器件的关键词,比如 我们要选择项目中使用的 AT89C51,就可以直接输入。输入以后我们能够在中 间的“Results”结果栏里面看到我们搜索的元器件的结果。在对话框的右侧, 我们还能够看到我们选择的元器件的仿真模型、引脚以及 PCB 参数。 南京工业大学本科生毕业设计(论文) 27 图 6-2 拾取元器件对话框 搜索到所需的元器件以后,我们可以双击元器件名来将相应的元器件加入 到我们的文档中,那么接着我们还可以用相同的方法来搜索并加入其他的元器 件。当我们已经将所需的元器件全部加入到文档中时,我们可以点击“OK”按 钮来完成元器件的添加。 添加好元器件以后,下面我们所需要做的就是将元器件按照我们的需要连 接成电路。首先在元器件浏览区中点击我们需要添加到文档中的元器件,这时 我们就可以在浏览区看到我们所选择的元器件的形状与方向,如果其方向不符 合你的要求,你可以通过点击元器件调整工具栏中的工具来任意进行调整,调 整完成之后在文档中单击并选定好需要放置的位置即可。接着按相同的操作即 可完成所有元器件的布置,接下来是连线。事实上 Proteus 的自动布线功能是 如此的完美以至于我们在做布线时从来都不会觉得这是一项任务,而通常像是 在享受布线的乐趣。布线时我们只需要单击选择起点,然后在需要转弯的地方 单击一下,按照你所需走线的方向移动鼠标到线的终点单击即可。当线路较多 时我们还可以选择总线形式,用一根粗线代替一组线,只需在相对应的线上标 上号就可以完成和一组线相对应的工作。总线的图标 :(Buses Mode)。 总线模式,选中它能够在电路中画总线。 Proteus 中单片机芯片默认已经添加电源与地,所以我们可以省略。然后 在添加电源与地以前,我们先来看一下上面第一个图中区域的对象拾取区, :(Terminals Mode)。终端模式,选中它能够为电路添加各种终端,比如 输入、输出、电源、地等等。添加电源:首先点击,选择终端模式,然后在 第六章 系统的仿真和调试 28 元器件浏览区中点击 POWER(电源)来选中电源,通过区域中的元器件调 整工具进行适当的调整,然后就可以在文档区中单击放置电源了。地线点击 GROUND(接地)来选中接地线,同样通过区域中的元器件调整工具进行适 当调整,然后单击放置,当然也可以先放置然后再调整。 在各个元件摆放好并且连好线之后,还要主要查看各个元件的属性,有些 可能不符合我们的要求,电阻和电容的大小是可以直接修改的,而不需要重新 调整元器件,比如当我们修改电阻时,修改方法:首先我们双击电阻图标,这 时软件将弹出“Edit Component”对话框如图 6-3 所示,对话框中的“Component Referer”是组件标签之意,可以随便填写,也可以取默认,但要注意在同一文 档中不能有两个组件标签相同;“Resistance”就是电阻值了,我们可以在其后 的框中根据需要填入相应的电阻值。填写时需注意其格式,如果直接填写数字, 则单位默认为 ;如果在数字后面加上 K 或者 k,则表示 k 之意。这里我们 填入 220,表示 220。 修改好各组件属性以后就要将程序(HEX 文件)载入单片机了。首先双击 单片机图标,系统同样会弹出“Edit Component”对话框,如下图。在这个对话 框中我们点击“Program files”框右侧的,来打开选择程序代码窗口,选中相应 的 HEX 文件后返回,这时,按钮左侧的框中就填入了相应的 HEX 文件,我们 点击对话框的“OK”按钮,回到文档,程序文件就添加完毕了。 装载好程序,我们就可以进行仿真了。首先来熟悉一下上面第一个图中区 域的运行工具条。工具条从左到右依次是“Play”、“Step”、“Pause”、 “Stop”按钮,即运行、步进、暂停、停止。下面点击“Play”按钮来仿真运 行,可以看到系统按照所设计的程序在运行着,而且还能看到其高低电平的实 时变化。如果我们已经观察到了结果就可以点击“Stop”来停止运行。 南京工业大学本科生毕业设计(论文) 29 图 6-3 元器件编辑窗口 62 系统的调试系统的调试 系统调试包括硬件调试和软件调试,而且两者是密不可分的。我们设计好 的硬件电路和软件程序,只有经过联合调试,才能验证其正确性;软硬件的配 置情况以及是否达到设计任务的要求,也只有经过调试,才能发现问题并加以 解决、完善,才能最终开发成实用产品。 硬件调试分单元电路调试和联机调试,单元电路试验在硬件电路设计时已 经进行,这里的调试只是将其制成印刷电路板后试验电路是否正确,并排除一 些加工工艺性错误(如错线、开路、短路等)。这种调试可单独模拟进行,也 可通过开发装置由软件配合进行。硬件联机调试则必须在系统软件的配合下进 行。但本人的设计主要趋向于设计的仿真模拟,所以硬件调式可以省略。 软件调试一般包括分块调试和联机调试两个阶段。程序的分块调试一般在 单片机开发装置上进行,可根据所调程序功能块的入口参量初值编制一个特殊 的程序段,并连同被调程序功能块一起在开发装置上运行;也可配合对应硬件 电路单独运行某程序功能块,然后检查是否正确,如果执行结果与预想的不一 致,可以通过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- PUA完整课件TXT教学课件
- PS课件文库教学课件
- PS污点修复工具课件
- 艾灸师考试题库及答案
- 小学二年级试卷及答案
- 食品安全知识在线培训课件
- 江西物理中考试卷及答案
- 希沃试题及答案
- 西游记剧情测试题及答案
- 2025年品牌策划师初级实战模拟题及答案手册
- 2025年租用企业宿舍协议书
- 2025年老司机三力测试题及答案
- (2025年标准)货拉拉签协议书
- 学堂在线 中国传统艺术-篆刻、书法、水墨画体验与欣赏 章节测试答案
- 工厂供电理论知识培训课件
- 2025年中国船舶集团校园招聘面试模拟题及答案
- 2025房屋租赁托管合同示范文本
- (2025年标准)股东合伙协议及分红协议书
- 污水处理厂设备安装施工方案
- 2025年事业单位工勤技能-甘肃-甘肃护理员一级(高级技师)历年参考题库含答案解析(5卷)
- 水稻全程机械化栽培技术
评论
0/150
提交评论