第一篇:微机原理_多路抢答器设计论文
课程设计(论文)
课程名称:
微机原理与接口技术
题
目:
多路抢答器设计 院(系):
理学院
专业班级:电子信息科学与技术1301
姓
名:
彭博
学
号:
131004033
指导教师:
张爱萍
2016 年 1 月 8 日 西安建筑科技大学课程设计(论文)
西安建筑科技大学课程设计(论文)任务书
专业班级:电子信息科学与技术1301 学生姓名: 彭博 指导教师(签名):
一、课程设计(论文)题目 多路抢答器设计
二、本次课程设计(论文)应达到的目的
通过本次课程设计,加深对微机原理基本知识的理解,逐步掌握Proteus的操作方法,并能仿真做出一个抢答器,从而进一步提高综合运用知识的能力,同时通过实习掌握书写课程设计报告书的步骤和方法。
三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等)
1、熟悉Proteus软件和Emu8086软件,8086CPU及编程技巧;
2、熟悉8255A接口芯片,8253芯片及利用8255A芯片、8253芯片实现对外设控制的原理;
3、利用Proteus软件,以Intel 8086 CPU为核心,结合8255接口芯片设计抢答器仿真电路,在Emu8086软件环境下,编写程序,最终实现当抢答开始,若有选手按动按钮,在数码管上显示选手的编号,并且发生声响,直到按下复位按键,就可开始下一轮抢答。
四、应收集的资料及主要参考文献:
1、陈卫红《微型计算机基本原理与接口技术(第三版)》科学出版社 2015
2、刘云玲《微机原理与接口技术实验指导》清华大学出版社 2014
3、和宏《微机原理与接口技术——基于Proteus仿真的8086微机系统设计及应用》清华大学出版社 2015
4、邹逢兴《微机原理与接口技术经典实验案例集》高等教育出版社 2012
5、周景润《Proteus入门实用教程》机械工业出版社 2007
五、审核批准意见
教研室主任(签字)西安建筑科技大学课程设计(论文)
摘要
本次课程设计通过使用Intel8086 CPU控制,配合8255A可编程并行接口芯片、可编程计数器8253芯片与若干按钮开关以及数码管等来实现一个简易的多路抢答器的制作。这一设计利用了8255A芯片的输入与输出功能以及8253芯片的计时功能以及发声功能,通过汇编语言编程,使其具有抢答、显示、响声、复位的功能。
本次设计贴近生活,实用性高,判断精确,操作简单。它的功能实现是当比赛开始时,主持人读完题目即可按下开始运行电路的总开关,此时开始第一轮抢答,同时有7个选手进行抢答,第一个按下开关的选手的编号将会显示在数码管上,并且在抢答到的同时会有声响提示,其余选手再按下开关将会无效,此时只有通过按下按钮8才能重置数码管显示为零,开始下一轮抢答。
本设计使用Proteus仿真软件以及Emu8086汇编软件进行设计,不需要进行实际电路的安装,只需要在一台安装有Proteus以及Emu8086的计算机上进行仿真设计以及调试即可。具有线路简单、结构紧凑、性能优越等特点。
关键词:抢答器,8086,8255A,8253,Proteus西安建筑科技大学课程设计(论文)
Abstract
This experiment by using Intel8086 CPU control, with 8255 a programmable parallel interface chip and several programmable counter 8253 chip and push button switch and digital tube and so on to achieve a simple multiplex buzzer.This design using the input and output functions of the 8255 a chip and 8253 chip timing function and voice function, through the assembly language programming, make its have vies to answer first, display, sound and reset function.The design of press close to life, high practicality, judgement precision, simple operation.The realization of the function of the it is when the game starts, the host read subject to press start running circuit without the master switch, at this time to start the first round of the contest, at the same time, there are seven contestant vies to answer first, first press the switch of the contestant's serial number will be displayed on the digital tube, and at the same time of vies to answer first to have sound prompt, the rest of the players to press the switch will be invalid, this time can only be reset by pressing the button 8 digital tube display is zero, begin the next round of vies to answer first.This design uses Proteus simulation software and Emu8086 assembly software to carry on the design, do not need to undertake the installation of the actual circuit, only need a 7-day with Proteus and Emu8086 computer simulation design and debugging.Has the circuit simple, compact structure, superior performance, etc.Key words: buzzer, 8086, 8255A, 8253, Proteus
西安建筑科技大学课程设计(论文)
目录 绪论.................................................1 1.1 设计介绍.......................................1 1.2 Proteus仿真软件介绍...........................1 1.3 抢答器介绍.....................................2 1.3.1 抢答器主要功能...........................2 1.3.2 抢答器主要组成...........................2 1.3.3 抢答器的工作原理.........................2 2 硬件设计原理.........................................3 2.1 电路图设计.....................................3 2.2 电路中各芯片介绍...............................4 2.2.1 Intel 8086 处理器........................4 2.2.2 可编程并行接口芯片8255A.................5 2.2.3 可编程计数/计时器8253芯片...............7 2.2.4 其他芯片.................................8 3 软件设计原理........................................10 3.1 流程图........................................10 3.2 程序..........................................11 4 系统仿真调试........................................14 4.1 运行程序开始抢答..............................14 4.2 选手按下按钮抢答..............................14 4.3主持人重置抢答器..............................15 5 心得体会............................................16 参考文献..............................................17 西安建筑科技大学课程设计(论文)绪论
1.1 设计介绍
本设计是基于Intel 8086处理器进行设计的抢答器装置,通过处理器以及总线、数码管、一系列开关之间的配合,连接成为一个抢答器。本次设计由于条件所限,使用了Proteus仿真软件进行模拟,这样做的好处有:形式直观、成本低廉、方便调试、便于修改。
1.2 Proteus仿真软件介绍
Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件(仿真软件)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,而我们在本次的课设中,用到的就是使用Proteus来仿真8086处理器。图1-1是Proteus软件界面。
图1-1 Proteus界面
第二篇:多路智力竞赛抢答器
湖南工学院
多路智力竞赛抢答器设计报告书
课程名称:多路智力竞赛抢答器 系部名称:电气与信息工程系 专业名称:电子信息工程技术 班级名称:电信0702 设计人 :裴书茂 学号 :402070220 指导老师: 设计时间:
湖南工学院
(课程设计任务书目录)
前言 „„„„„„„„„„„„„„„„ 1 设计功能要求 „„„„„„„„„„„„„„ 2 抢答器框架设计 „„„„„„„„„„„„„ 3 电路设计 „„„„„„„„„„„„„„„ 4 1)抢答电路设计 „„„„„„„„„„„„ 4 2)定时电路设计 „„„„„„„„„„„„ 53)报警电路设计
„„„„„„„„„„„„ 64)时序控制电路设计 „„„„„„„„„„ 7元器件介绍 „„„„„„„„„„„„„„„„ 8 1)74LS148功能介绍 „„„„„„„„„„„ 8 2)74LS192功能介绍 „„„„„„„„„„„ 9 仿真电路实验 „„„„„„„„„„„„„„„„ 10 1)Proteus仿真电路图 „„„„„„„„„„实物制作 „„„„„„„„„„„„„„„„„ 11 1)原理图 „„„„„„„„„„„„„„„ 11 2)PCB制图 „„„„„„„„„„„„„„„ 12 3)焊接与调试 „„„„„„„„„„„„„„ 13 心得体会 „„„„„„„„„„„„„„„„„ 15 鸣谢 „„„„„„„„„„„„„„„„„„„ 15 参考资料 „„„„„„„„„„„„„„„„„ 15
前 言
随着电子技术的飞跃发展,社会发展步入了信息时代,随着信息时代对人才高素质和信息化的要求,随着高等教育发展的趋势,人们的生活水平提高,对精神文明生活的要求也跟着提高,这对电子领域提出了跟更高的要求。
电子学是一门应用很广泛的科学技术,发展及其迅速。要想学好这门技术,首先是基础理论的系统学习,然后要技术训练,进而培养我们对理论联系实际的能力,设计电路的能力,实际操作的能力,以及培养正确处理数据、分析和综合实验结果、检查和排除故障的能力。同时也加深我们对电子产品的理解。
智力抢答器的设计和测试作为此次课程设计的课题,我们采用一般意义上的设计方案,即采用集成芯片构成电路。
数字电路具有很多的有点:(1)便于高度集成化。由于数字电路采用二进制,因此单元电路的结构简单,允许电路参数有较大的离散性,便于集成。
(2)工作可靠性高,抗干扰能力强。数字信号用二进制表示,数字电路的识别能力强。
(3)(4)(5)数字信息便于长期存放。
数字电路集成产品多,通用性强,成本低。
保密性好。数字信息容易进行加密处理,不易被窃取。
设计功能要求
一、功能要求
1、设计制作一个可容纳5组参赛的数字式枪答器,每组设置一个抢答按钮供抢答者使用。
2、给主持人设置一个控制开关,用来控制系统的清零和抢答的开始。
3、抢答器具有数据锁存和显示的功能。抢答开始后,若有选手按抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号(1~5),同时扬声器给出音响提示。同时禁止其他选手抢答。
4、抢答器具有定时抢答的功能,抢答时间设定为30秒,当主持人按下开始按钮时,定时器立刻倒计时,并显示。选手在设定的时间内抢答有效。超过时间抢答无效,定时显示器显示00。
二、设计步骤与要求
1、拟定电路的组成框图,要求能实现所有功能,使用的元器件少,成本低。
2、设计并安装电路,要求布线整齐、美观,便于级联和调试。
3、测试所设计抢答器的逻辑功能,满足各项功能要求。
4、画出整机逻辑电路图。
5、写出设计报告。
抢答器框架设计
定时抢答器的总体框图(如图
1.1)所示,它由主体电路和扩展电路两部分组成。主体电路完成基本的抢答功能,即开始抢答后,当选手按动抢答按钮时,能显示选手的编号,同时能封锁输入电路,禁止其他选手抢答。扩展电路完成定时抢答的功能。
图1 如图所示为总体方框图。工作原理为:接通电源后,主持人将开关拨到“清零”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置;开始“状态,宣布“开始”抢答器工作。定时器倒计时,扬声器给出声响提示。选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次操作“清除”和“开始”状态开关。
电路设计
一、抢答电路设计
设计电路如图2所示。电路选用优先编码器 74LS148 和锁存器 74LS297 来完成。该电路主要完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号(显示电路采用七段数字数码显示管);二是禁止其他选手按键,其按键操作无效。
图2 工作过程:开关S置于”清除“端时,RS触发器的 R、S端均为0,4个触发器输出置0,使74LS148的优先编码工作标志端(图中5号端)=0,使之处于工作状态。当开关S置于”开始“时,抢答器处于等待工作状态,当有选手将抢答按键按下时(如按下S5),74LS148的输出经RS锁存后,CTR=1,RBO(图中4端)=1,七段显示电路74LS48处于工作状态,4Q3Q2Q=101,经译码显示为“5”。此外,CTR
=1,使74LS148 优先编码工作标志端(图中5号端)=1,处于禁止状态,封锁其他按键的输入。当按键松开即按下时,74LS148的 此时由于仍为CTR=1,使优先编码工作标志端(图中5号端)=1,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢答者的优先性。如有再次抢答需由主持人将S开关重新置“清除”然后再进行下一轮抢答。74LS148为8线-3线优先编码器,表1为其功能表。
表1
二、定时电路设计
节目主持人根据抢答器的难易程度,设计一次抢答的时间,通过预置时间电路对计数器进行预置,选用十进制同步加减计数器74LS192进行设计,计数器的时钟脉冲由秒脉冲电路提供。具体电路如图3。
原理及设计:该部分主要由555定时器秒脉冲产生电路、十进制同步加减计数器74LS192减法计数电路、74LS48译码电路和2个7段数码管即相关电路组成。具体电路如图3所示。两块74LS192实现减法计数,通过译码电路74LS48显示到数码管上,其时钟信号由时钟产生电路提供。原理及设计:该部分主要由555定时器秒脉冲产生电路、十进制同步加减计数器74LS192减法计数电路、74LS48译码电路和2个7段数码管即相关电路组成。具体电路如图3所示。两块74LS192实现减法计数,通过译码电路74LS48显示到数码管上,其时钟信号
图3 由时钟产生电路提供。按键弹起后,计数器开始减法计数工作,并将时间显示在共阴极七段数码显示管DPY_7-SEG 上,当有人抢答时,停止计数并显示此时的倒计时时间;如果没有人抢答,且倒计时时间到时,输出低电平到时序控制电路,控制报警电路报警,同时以后选手抢答无效。结合我们的实际经验及考虑到元器件的成本,我们选择的电阻值为R1=15K,R2=68K,C=10uF,代入到上式中即得,即秒脉冲。
三、报警电路设计
由555 芯片构成多谐振荡电路 ,555 的输出信号再经三极管放大 ,从而推动扬声器发声。
控制电路包括时序和报警两个电路 ,如图4 所示。控制电路需具有以下几个功能。
主持人闭合开关扬声器发声 ,多路抢答器电路和计时电路进入正常状态;参赛者按键时 ,扬声器发声 ,抢答电路和计时电路停止工作;抢答时间到 ,无人抢答 ,扬声器发声 ,抢答电路和计时电路停止工作
图4
四、时序控制电路设计
时序控制电路是抢答器设计的关键,它要完成以下三项功能。
1)主持人将控制开关拨到“开始”位置时,扬声器发声,抢答电路和定时电路进入正常抢答工作状态。
2)当参赛选手按动抢答按键时,扬声器发声,抢答电路和定时电路停止工作。
图5 3)当设定的抢答时间到,无人抢答时,扬声器发声,定时和定时电路停止工作。
根据上面的功能要求,设计的时序控制电路如(图5)所示。图中,门G1 的作用是控制时钟信号CP的放行与禁止,门G2的作用是控制74LS148的输人使能端。图11、4的工作原理是:主持人控制开关从”清除“位置拨到”开始"位置时,来自于(图2)中的74LS279的输出 1Q=0,经G3反相,A=1,则时钟信号CP能够加到74LS192的CPD时钟输入端,定时电路进行递减计时。同时,在定时时间未到时,则“定时到信号”为 1,门G2的输出 =0,使 74LS148处于正常工作状态,从而实现功能①的要求。当选手在定时时间内按动抢答键时,1Q=1,经 G3反相,A=0,封锁 CP信号,定时器处于保持工作状态;同时,门G2的输出 =1,74LS148处于禁止工作状态,从而实现功能②的要求。当定时时间到时,则“定时到信号”为0,=1,74LS148处于禁止工作状态,禁止选手进行抢答。同时,门G1处于关门状态,封锁 CP信号,使定时电路保持00状态不变,从而实现(功能3)的要求。集成单稳触发器74LS121用于控制报警电路及发声的时间。
元器件介绍
一、74LS148功能介绍
在优先编码器电路中,允许同时输入两个以上编码信号。不过在设计优先编码器时,已经将所有的输入信号按优先顺序排了队。在同时存在两个或两个以上输入信号时,优先编码器只按优先级高的输入信号编码,优先级低的信号则不起作用。74148是一个八线-三线优先级编码器。
如图6所示的是八线-三线编码器74148的管脚图引脚图。
图6
二、74LS192功能介绍
74LS192是双时钟方式的十进制可逆计数器。
CPU为加计数时钟输入端,CPD为减计数时钟输入端。LD为预置输入控制端,异步预置。CR为复位输入端,高电平有效,异步清除。CO为进位输出:1001状态后负脉冲输出。BO为借位输出:0000状态后负脉冲输出。
图7
图8
仿真电路实验
一、Proteus仿真电路图
仿真电路课实现抢答功能,由于软件局限,报警电路没有在仿真当中。
实物制作
一、原理图
二、PCB制图
三、焊接与调试
在制板中最重要的一个环节就是线路的印制。在这次的制作中,由于打印的客观原因,使在转印的效果不是很好。做出的实物没有预期的好。这也是以后一定要注意的地方。
1)焊接部分需要注意的是:
严格按照线路的设计进行焊接,首先焊接过孔,在对元器件进行焊接。焊接时间不宜过久,但要完全熔着,以免造成冷焊。焊点的表面要平滑、有光泽。焊点完全冷却前,不可移动。电烙铁不用时要放置于电烙铁架上,并随时保持烙铁头的清洁。焊接完毕,要在烙铁头镀上薄层焊锡,避免氧化,并等冷却后再收存。
2)调试部分需要注意的是:
在通电之前必须对照原理图对线路进行详细的检查。检查是否有虚焊或者为焊接的点。可用万用表进行线路检查,看是否有线路在焊接的时候不慎连接在了一起,如有进行修改。在检查完毕之后才可以通电测试。如果在通电之后任然有问题,应立即断电,再仔细检查。
心得体会
通过这次设计,我的理论知识掌握得更扎实,动手能力明显提高。同时,通过网上搜索等多方面的查询资料,我学到许多在书本上没有的知识,也认识到理论联系实践的重要。在制作当中遇到了许多以前没遇到的困难。我们利用许多的方法去解决所遇到的问题。制作好以后,虽然基本符合设计要求,但我们总觉得欠缺点什么。这次设计,让我感受最深是。在仿真的阶段遇到很多的问题,计时电路不能随抢答而停止,还有就是由于软件的局限在仿真时候没有完成整体电路的调试,这也为最后的实物调试造成了困难。我们一定要具备一定的检查、排除电路故障的能力。我深刻认识到了“理论联系实际”的这句话的重要性与真实性。而且通过对此课程的设计,我不但知道了以前不知道的理论知识,而且也巩固了以前知道的知识。最重要的是在实践中理解了书本上的知识,明白了学以致用的真谛。在整个设计到电路的焊接以及调试过程中,我个人感觉调试部分是最难的,由于在印制电路板的时候效果不好出现很多的断线,这让整个焊接和调试很麻烦。调试是一个经验的积累过程,没有经验是不可能在短时间内将其完成的,可能也是老师要求我们加以提高的一个重要方面吧!
鸣谢
感谢老师的耐心指导;
感谢同学的帮助;
感谢湖南工学院电信系实验老师的大力支持;
感谢湖南工学院对我的支助。
参考文献
宋树祥《高频电子线路》北京大学出版社
谢自美《电子线路设计实验测试》华中科大出版社
第三篇:单片机课程设计(基于多路数字抢答器)(范文)
一、概述
大学四年的学习生活中,会遇到各种各样的竞赛,抢答器便成为了主要的工具之一。而现在的抢答器智能化越来越强,这必然会提高抢答器的成本。本抢答器与其他抢答器电路相比较成本低、制作方便,并且还有作弊显示功能。因此,这款四路抢答器摒弃了成本高、体积大、操作复杂等不足。我们采用了数字显示器直接指示,因而本抢答器具有显示直观,操作简单的特点。
二、主要功能及技术指标
抢答器的工作原理是用矩阵式键盘进行抢答。采用动态显示组号。主持人按下开始抢答键才可以抢答。主持人没有按下开始抢答按纽(P3.2),有人抢答则抢答违规,报警并显示组号,主持人按下开始抢答开关重新抢答。主持人按下开始抢答按纽(P3.2),蜂鸣响声提示,且数码管10秒倒计时(10秒内抢答有效),有人在10秒抢答,蜂鸣器响声提示并显示他的组号,3秒开始20秒倒计时(20秒内必须回答完问题)。20秒后主持人按下复位开关为下一题的抢答做准备。单片机最小系统、抢答按键模块(四位并行数码显示、1*4矩阵式键盘)、显示模块、抢答开关模块、蜂鸣器输出模块。
三、系统组成及原理
1、分图
四、软件
1、分配流程图
初始化开始
20秒回答问题时间到并响声提示调用读键子程序作为延时程序设定定时器初值并启动定时器中断条件是否满足Y开中断并响声提示NN读键盘是否有键按下Y调用显示抢答违规并报警子程序报警提示编号10秒抢答倒计时开始显示显示违规者编号是否有按键按下NY调用抢答者获得回答的子程序10到时中断并返回响声提示设定定时器初值并启动显示抢答者并且3秒后倒计时RET3
2、源程序
ORG 0000H LJMP MAIN ORG 0013H LJMP ESS1 ORG 0100H MAIN:SETB EA SETB EX1 SETB IT1;外部中断1初始化 L16:MOV P1,#0FFH MOV R2,#00H CLR P1.0 INC R2 JB P1.4,L0 LCALL DE0 L0:INC R2 JB P1.5,L1 LCALL DE0 L1:INC R2 JB P1.6,L2 LCALL DE0 L2:INC R2 JB P1.7,L3 LCALL DE0 L3:SETB P1.0 CLR P1.1 INC R2 JB P1.4,L4 LCALL DE0 L4:INC R2 JB P1.5,L5 LCALL DE0 L5:INC R2 JB P1.6,L6 LCALL DE0 L6:INC R2 JB P1.7,L7 LCALL DE0 L7:SETB P1.1 CLR P1.2 INC R2 JB P1.4,L8 LCALL DE0 L8:INC R2
JB P1.5,L9 LCALL DE0 L9:INC R2 JB P1.6,L10 LCALL DE0 L10:INC R2 JB P1.7,L11 LCALL DE0 L11:SETB P1.2 LJMP L16;读行列式键盘 ESS1:MOV 70H,#30D;外部中断1 MOV R7,#0CH CLR P3.0 S2:LCALL DELAY DJNZ 70H,S2 SETB P3.0;蜂鸣器提示开始抢答 MOV TMOD,#00010000B MOV R3,#0AH L20:MOV 55H,#14H L19:MOV TH0,#3CH MOV TL0,#0B0H;定时器1初始化 SETB TR1;启动定时器1 MOV A,R3 MOV B,#0AH DIV AB MOV DPTR,#TAB MOVC A,@A+DPTR MOV 53H,A CLR P2.4 MOV P0,53H LCALL DELAY1 SETB P2.4 MOV A,B MOVC A,@A+DPTR MOV 54H,A CLR P2.5 MOV P0,54H LCALL DELAY1 SETB P2.5 L18:JNB TF1,L18 CLR TF1 DJNZ 55H,L19 DEC R3 CJNE R7,#00H,D6
LJMP D5 D6:CJNE R3,#0FFH,L21 LJMP L22 L21:LJMP L20;抢答倒计时 L22:MOV 73H,#02D S5:MOV 70H,#20D MOV 71H,#20H CLR P3.0 S4:LCALL DELAY DJNZ 70H,S4 SETB P3.0 S6:LCALL DELAY DJNZ 71H,S6 DJNZ 73H,S5;抢答倒计时时间到声音提示 D5:RETI DE0:MOV DPTR,#TAB;抢答违规报警并显示抢答违规组号 MOV A,R2 MOV B,#0AH S10:MOV 72H,#20D MOV 73H,#10D CLR P3.0 S8:LCALL LCC DJNZ 72H,S8 SETB P3.0 S9:LCALL LCC DJNZ 73H,S9 DJNZ 71H,S10 L17:LCALL LCC LJMP L17 LCC:CLR P2.4 MOV P0,50H LCALL DELAY DELAY1:MOV P1,#0FFH;正常抢答读键 MOV R4,#250D W17:MOV R2,#00H CLR P1.0 INC R2 JB P1.4,W0 LCALL DE1 W0:INC R2 JB P1.5,W1 LCALL DE1 W1:INC R2 JB P1.6,W2 LCALL DE1 W2:INC R2 JB P1.7,W3 LCALL DE1 W3:SETB P1.0 CLR P1.1 INC R2 JB P1.4,W4 LCALL DE1 W4:INC R2 JB P1.5,W5 LCALL DE1 W5:INC R2 JB P1.6,W6 LCALL DE1 W6:INC R2 JB P1.7,W7 LCALL DE1 W7:SETB P1.1 CLR P1.2 INC R2 JB P1.4,W8 LCALL DE1 W8:INC R2 JB P1.5,W9 LCALL DE1 W9:INC R2 JB P1.6,W10 LCALL DE1 W10:INC R2 JB P1.7,W15 LCALL DE1 W15:SETB P1.3 DJNZ R4,W16 LJMP W18 W16:LJMP W17 W18:RET DE1:MOV P1,#0FFH;MOV 70H,#20D CLR P3.0 S3:LCALL DELAY DJNZ 70H,S3 SETB P3.0 SETB P2.0 抢答成功声音提示及回答问题时间20秒倒计时7
SETB P2.1 MOV DPTR,#TAB MOV A,R2 MOV B,#0AH DIV AB MOVC A,@A+DPTR MOV 56H,A MOV A,B MOVC A,@A+DPTR MOV 57H,A MOV TMOD,#00000001B MOV R5,#16H L32:MOV R6,#14H L31:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 CLR P2.4 MOV P0,56H LCALL DELAY SETB P2.4 CLR P2.5 MOV P0,57H LCALL DELAY SETB P2.5 CJNE R5,#14H,L34 LJMP L35 L34: JC L35 LJMP L30 L35: MOV A,R5 MOV B,#0AH DIV AB MOVC A,@A+DPTR MOV 58H,A MOV A,B MOVC A,@A+DPTR MOV 59H,A CLR P2.6 MOV P0,58H LCALL DELAY SETB P2.6 CLR P2.7 MOV P0,59H LCALL DELAY SETB P2.7 L30:JNB TF0,L30 CLR TF0 DJNZ R6,L31 DEC R5 CJNE R5,#0FFH,L32 MOV P1,#0FFH MOV 70H,#50D CLR P3.0 S7:LCALL DELAY DJNZ 70H,S7 SETB P3.0 MOV P2,#0FFH MOV R3,#00H MOV R7,#00H RET DELAY:MOV 51H,#10D;延时子程序 D0:MOV 52H,#248D D1:DJNZ 52H,D1 DJNZ 51H,D0 RET TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END
五、分析
这次实训遗憾的是,我的实训材料是买的成品的板,没有自己去焊制自己的实训板,当然这节省了一些时间,但是,在原理图上确实也花费了一些时间。对于四路抢答器的程序方面,也有需要改进的地方,有很多的不合适的地方,比如,在违规抢答倒计时方面,当你违规抢答时,也会出现20秒的倒计时,和正常抢答的一样。所以,在以后的编程和调试过程中还应该注意这种小的毛病。
六、体会
本次实训使我对单片机有课更加深入的了解,以及对汇编语言的编程有了更进一步的体会,知道在编程的过程中会有大量的错误产生,一次一次的修改,有时真的比较麻烦。在最初读程序的过程中,也遇到过大量的程序读不懂,在编程的过程中,确实话费了很多的时间。
在此我非常要感谢的是各位知道老师不遗余力的指导,同样也非常感谢同学的帮助,在我不懂程序时帮助我完善程序。这次实训能够顺利的完成,当然与我个人的努力也是分不开的。
七、参考文献
[1]张鑫《单片机原理及应用》电子工业出版社2010年
[2]李泉溪《单片机原理与应用实例仿真》北京航天航空大学出版社 2009年
[3] 张洪润《单片机应用设计200例》北京航空航天大学出版社2006年 [4] 万光毅《单片机实验与实践教程》北京航天航空大学出版社2003年
第四篇:微机原理课程设计-电子琴设计
简单的电子琴设计
前言
本实验是利用微机原理试验箱、8255芯片、8254芯片、键盘、扬声器等硬件设备,设计简易电子琴。
首先利用了编程程序,编辑了8255芯片控制字, 对其进行初始化,使其工作在方式0,即基本输入输出状态,将8255的A端口设置为输出,C端口进行,经CPU运算后, 输出到8254芯片的A端口中,由此实现对其的初始化。
将8254芯片设置为工作在方式3,即输出对称方波状态。A端口为输入,“OUT”指令可将输出对应一定频率的方波送到扬声器中,由此实现发声。本实验通过频率大小控制发出声音的高低,通过对延时程序的调用控制发出声音的长短。并通过所编程序实现对键盘的重复扫描,重而可以弹奏多个音符的试验目的。
关键字: 编程、工作方式、运算
简单的电子琴设计
一、设计题目:
简易电子琴设计
二、设计内容:
实验电路如图16-1,8253的CLK0接1MHZ时钟,GATE0接8255的PA1,OUT0和8255的PA0接到与门的两个输入端,K8跳线连接喇叭,编程使计算机的数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音阶。
三、设计目的:
1、通过8253产生不同的频率信号,使PC机成为简易电子琴。
2、了解利用8255和8253产生音乐的基本方法。
3、通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。为以后学生结合专业从事微机应用设计奠定基础。
四、设计要求:
1.可以弹出7个音阶。2.弹奏简短音乐。
3.通过改变键盘输入来改变8254输出频率,实现扬声器发音
五、编程提示:
1、利用8255的PA0口来施加控制信号给与门,用来控制扬声器的开关状态。再利用设置不同的计数值,使8253产生不同频率的波形,使扬声器产生不同频率的音调,达到类似与音阶的高低音变换。对于音乐,每个音阶都有确定的频率。各音阶标称频率值: 音 阶2 3 4 5 6 7 1* 低频率(单位:Hz)262 294 330 347 392 440 494 524 高频率(单位:Hz)524 588 660 698 784 880 988 1048
简单的电子琴设计
六、设计原程序及注解
;*******************************;;* 电子琴实验 *;;*******************************;
data segment io8255a equ 288h io8255b equ 28bh io8253a equ 280h io8253b equ 283h table dw 524,588,660,698,784,880,988,1048;高音的;table dw 262,294,330,347,392,440,494,524;低音的 msg db 'Press 1,2,3,4,5,6,7,8,ESC:',0dh,0ah,'$' data ends
code segment assume cs:code,ds:data start: mov ax,data mov ds,ax
mov dx,offset msg mov ah,9 int 21h;显示提示信息 sing: mov ah,7 int 21h;从键盘接收字符,不回显 cmp al,1bh je finish;若为ESC键,则转finish cmp al,'1' jl sing cmp al,'8' jg sing;若不在'1'-'8'之间转sing
sub al,31h shl al,1;转为查表偏移量 mov bl,al;保存偏移到bx mov bh,0
mov ax,4240H;计数初值 = 1000000 / 频率, mov dx,0FH div word ptr[table+bx] mov bx,ax
保存到AX 3
简单的电子琴设计
mov dx,io8253b;设置8253计时器0方式3, 先读写低字节, 再读写高字节
mov al,00110110B out dx,al
mov dx,io8253a mov ax,bx out dx,al;写计数初值低字节
mov al,ah out dx,al;
mov dx,io8255b;mov al,10000000B out dx,al
mov dx,io8255a mov al,03h out dx,al;call delay;mov al,0h out dx,al;
jmp sing finish: mov ax,4c00h int 21h
delay proc near;push cx push ax mov ax,15 x1: mov cx,0ffffh x2: dec cx jnz x2 dec ax jnz x1 pop ax pop cx ret delay endp code ends end start
写计数初值高字节 设置8255 A口输出 置PA1PA0 = 11(开扬声器)延时 置PA1PA0 = 00(关扬声器)延时子程序 4
简单的电子琴设计
七、程序流程图:
八、硬件连线图
简单的电子琴设计
九、实验结果
连接完线路后启动电路开关,然后运行程序,就会出现提示界面,然后键盘输入数字即可有相应音阶音乐从喇叭处播放。
十、实验中遇到了的问题及解决方法
在实验中遇到了很多问题其主要是代码的编译类错误,在通过网上查阅相关资料以及在老师同学帮助下这些困难都迎刃而解了。才使程序完美运行。6
简单的电子琴设计
总 结
这是一次成功的实训,也是应值得远记住的一次实训,在这次实训中我充分感受到了集体的力量,在我组组员的共同努力下,我们的电子琴程序从无到有、功能从弱到强,一步步的走向成功,同时也感谢陈老师给我这样一次锻炼的机会,让我的人生经历有丰富了一些并且这段经历将成为我生活中一段宝贵的精神财富。
参考文献:
1、《8088/8086汇编语言程序设计》中央广播电视大学出版社
2、《微机原理与接口技术》北京航空航天大学出版社
3、《微型计算机原理与汇编语言》电子工业出版社
4、《微机原理与应用》大连理工大学出版社
5、《现代微机原理与接口技术》电子工业出版社
第五篇:微机原理课程设计
电子信息科学与技术《微机原理》课程设计
一、本次课程设计的目的和意义
学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。
二、设计时间、基本要求
(一)、设计时间:二周(二)、基本要求:
a.每题2人;b.设计出完整的接口电路;c.编写出全部程序;d.在实验系统上调试通过。
三、设计选题与要求
选题一:多路模拟数据采集系统设计
要求:设计一个2路以上的模拟数据采集系统。
1、用按键选择那一路;
2、用LED显示转换结果(十进制数);
3、将每一路采集的100个数据存放到各自的存储区中。
选题二:温度测控系统的设计
要求:利用ADC0809设计一个温度测控系统,在LED数码显示器上显示温度值,并对温度进行测试和控制,当检测温度到达温度上限60℃时开风扇(即开启电动机,或以一个灯的亮灭表示),低于下限30℃时关闭风扇,LED上的显示内容为:XX ℃(采用十进制显示)。
选题三:函数发生器的设计(一)要求:利用DAC0832设计一个函数发生器,并利用按键选择输出波形,能分别产生三角波、阶梯波(每阶梯1V)、正向锯齿波、负向锯齿波和方波。并利用按键(自行定义)进行输出波形选择,同时将当前输出波形代号显示在LED上(左边位):0为方波、1为正向锯齿波、2为负向锯齿波、3 为三角波、4为阶梯波。
选题四:函数发生器的设计(二)要求:设计一个三角波发生器,可利用键盘改变其输出波形的幅值。例如,可利用1-5这5个数字键改变其输出波形的幅值,当按下1-5数字键时使D/A输出幅值从1V增加到5V。
选题五:电子音乐播放器
要求:设计要求:利用8253作为音阶频率发生器,应先对“2008年奥运会主题歌”进行编码后存入音符表,并建立好音阶表(只建立一个8度即可),音符长度不能少于60个,连续播放3遍后停止。
选题六:键盘电子乐器
要求:利用并行接口8155作为键盘接口,设计一个具有2个八度音阶的键盘乐器,音阶键不少于16个,采用扫描方式管理键盘,音域范围自行定义。
选题七:电子时钟设计
要求:利用8253定时器设计一个具有时、分、秒显示的电子时钟,并定义一个启动键,当按下该
键时时钟从当前设定值(可在显示缓冲区中予置)开始走时。
选题八:压力测控系统的设计(一)要求:对压力传感器的信号进行检测并在LED数码显示器上显示压力值,当压力低于30pa时,黄灯闪烁,闪烁周期为1秒。当压力高于150pa时,红灯闪烁。LED的显示内容为P=XXX。X为测试值。
选题九:可变输出频率方波发生器设计
要求:设计一个输出方波频率可利用按键改变的方波信号发生器(可以使用D/A也可以直接使用8253产生方波),利用键盘选择方波发生器的输出频率并驱动喇叭。输出频率=键号*100HZ
选题十:直流电机速度控制器设计
要求:利用D/A转换器和按键设计一个直流电动机转速控制器。按键定义如下:0 停止,1-1/10转速,2-2/10转速„„ 9 最高速(D/A输出满量程),键号每加1,D/A输出增加0.5V
选题十一:可任意启动/停止的电子秒表设计
要求:6位LED数码显示,计时单位为1/100秒。利用功能键进行启/停控制。其功能为:上电后计时器清0,当第一次(或奇数次)按下启/停键时开始计数。第2次(或偶数次)按下该键时停止计时,再一次按启/停键时清零后重新开始计时„„
选题十二:温度测试系统设计
要求:利用温度传感器和ADC0809设计一个温度测试系统,将测试结果(十进制)在LED上显示出来,并定义一个保持按键,当按下该键时,将当前测试值保持不变(按键不动作时为正常测量显示)。温度显示格式为:XXX ℃。(可以每隔0.3秒测量一次)
选题十三:压力测试系统设计(二)要求:利用压力传感器和ADC0809设计一个压力测试系统,并将测试结果(十进制)在LED上显示出来,并定义一个测试最大值按键,当按下该键时,可进行最大值测量(按键不动作时为正常测量显示),即:只有当当前测量值大于上次测量值时才刷新显示,显示格式为:P=XXX。可以每隔0.3秒测量一次。
选题十四:简易计算器系统设计
要求:设计一个可以进行2位数四则运算的计算器。
1、用按键输入数和运算符号;
2、用LED显示运算过程和结果(十进制数);
3、可以表示出当前的运算类型;
4、具有清零和复位功能;
5、具有连续运算功能。
选题十五:交通灯控制系统
要求:按照时间控制原则,利用并行接口和定时器,设计一套十字路口的交通灯管理系统,通行时间(或禁止时间)30秒,准备时间3秒,在准备时间里黄灯闪烁3次,闪烁频率为0.5秒,周而复始。可利用8255、8253等接口电路。
选题十六:计件系统设计
要求:利用8253计数,对外界脉冲技术,并将计数值在数码管上显示,可通过键盘控制重新计数。
四、设计任务及要求
1、接口设计:根据所选题目和所用的接口电路芯片设计出完整的接口电路,并在实验系统上完成电路的连接和调试通过。
2、程序设计:要求画出程序框图,设计出全部程序并给出程序设计说明和程序注释。
3、课程设计报告:(1)设计题目;
(2)系统的主要功能、作用以及主要技术性能指标;
(3)总体设计方案、工作和组成原理(框图)或设计说明、采用的技术路线等;
(4)系统设计:接口电路设计,程序设计(程序框图和程序清单及注释)其他有关的理论分析和计算;
(5)设计总结:对整个设计工作过程进行归纳和综合,对设计中所存在的问题和不足进行分析和总结,提出解决的方法、措施、建议和对这次设计实践的认识、收获和提高。