抢答器单片机课程设计石培林_第1页
抢答器单片机课程设计石培林_第2页
抢答器单片机课程设计石培林_第3页
抢答器单片机课程设计石培林_第4页
抢答器单片机课程设计石培林_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、单片机课程设计1绪论1.1课题研究背景及意义本次课程设计制作的是简易抢答器。对于抢答器我们大家都很熟悉:是用于选手做抢答题目时用的,选手进行抢答,最先抢到题的选手回答问题。本实验设计的简易抢答器由主体电路与扩展电路组成。优先编码电路、锁存器、译码电路将参赛队的输入信号在显示器上输出;用控制电路和主持人开关启动报警电路,以上两部分组成主体电路。通过定时电路和译码电路将秒脉冲产生的信号在显示器上输出实现计时功能,构成扩展电路。经过布线、焊接、调试等工作后智能抢答器成形。1.2 相关背景介绍抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在数码管上显示,同时扬声器发出报警声响提示。选手抢

2、答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。用单片机来实现,他的制作比较简单,与我们学的单片机原理联系紧密,能将我们所学知识用于实际,对巩固所学知识有重要意义,使总体方案易于实现。所以本方案用单片机来实现。在有些实际竞赛的场合,只要满足显示抢答有效和有效组别即可,所以我们打算用一片74HC373(8位数据锁存器)来实现本课程设计的简易抢答器的功能,这是一个显示方式简单,价格低廉,经济实用的抢答器设计方案。在要求不高的场合,能完全符合要求。 2 总体设计方案2.1 智能抢答器主要功能抢答器原理:每个选手的座位前安装一只抢答按钮开关和一只信号灯。主持人的座位前安装一只复原按钮

3、开关、一只蜂鸣器和一只抢答器工作状态指示灯。每当主持人口头发出允许抢答的号令之后,哪个选手先按下座位上的按钮开关,该座位的信号灯就先被点亮,同时封锁其他按钮开关的活动。并且熄灭主持人座位上的状态指示灯和发出 3 声类似于电话振铃的提示声,以“声明”此次抢答动作已经完成。在主持人确认后,按下复原按钮,状态指示灯重新点亮,并且同时发出“笛笛”声,为下一次的抢答作好准备。电路中的蜂鸣器FM是一只带有助音腔的压电陶瓷蜂鸣器,用于模拟发出报警声的功率放大器和喇叭。发声的原理是,作用在两个电极极板的电位在发生变化时,陶瓷材料就发生弯曲,从而振动空气发出声音。FM和 4 只按钮开关 SWaSWd都是在演示板

4、的基础上额外添加的。由于RB端口内部具有上拉电阻,只要用软件设置其有效,即可省略在4 只端口引脚上外接上拉电阻。参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示0。利用单片机可以用很少元件实现功能。单片机性能稳定,可操作性强。可以只用P0口连接排阻(用作上拉电阻),完成驱动LED的功能,串接按键可以由选手自己控制抢答机会。利用单片机程序判断选手按键是否有效,但当选手违规抢答时,利用简单程序显示选手序号,启动蜂鸣器并不间断,告诉主持人有人违规操

5、作,抢答无效。给出相应的延时,选手按正常的操作抢答,软件倒记时。如果有选手在规定的时间以前完成问题,主持人通过按键开始按钮来复位,开始新的问题作答,因为程序不是很大不需要扩展存储空间,选手按键跳入相应的子程序,回答倒记时与普通抢答器相比,我们还加入了一些不一样的想法: 1、具有清零装置和抢答控制,可由主持人操纵避免有人在主持人说“开始”前提前抢答违反规则。 2、具有定时功能,在10秒内无人抢答表示所有参赛选手获参赛队对本题弃权。 3、10秒时仍无人抢答其报警电路工作表示抢答时间耗尽并禁止抢答。2.2 电路设计本抢答器的电路主要有四部分组成:数字抢答电路、时序控制电路、报警电路以及可预置时间的定

6、时电路。其中数字抢答部分有一个74HC373锁存器和数码管显示器组成,可以将四位抢答者的按钮通过数码管显示器显示出他们最先抢答者的序号。而时序控制电路的功能是当参赛选手按动抢答器时,使扬声器发声,这时抢答电路和定时电路停止工作。而且设定的时间(本课题设置为10秒)到达后若无人抢答,则报警电路工作。报警电路工作的条件是当设定时间到达后或者有人抢答时,报警电路被输入一个高电平,这时此电路工作。2.3 四位抢答器设计要求本次设计的简易抢答器(四位抢答器)将具有以下功能:(1)抢答器同时供4名选手比赛抢答用,有4个按钮S0 S3表示。(2)设置一个系统清除和抢答控制开关“开始”,“结束”,该开关由主持

7、人控制。(3)抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,扬声器发出声响提示,并在数码管上显示选手号码。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。此外还有一些扩展功能:(1)抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如10秒)。当主持人启动“开始”键后,定时器进行减计时。(2) 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。(3) 如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示0。2.4硬件介绍2.4.1 AT89S51单片机简介

8、AT89S51是8位通用微处理器。采用标准的C51内核,在内部功能及管脚排布上 PDIP封装的AT89S51引脚图与通用的80C51 相同。功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST/Vpd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚)和VSS(20 脚)为供电端口,分别接+5V电源的正负端。P0P3 为可编程通用I/O 脚,其功能用途由软件定义,在本设

9、计中,P0 端口(3239 脚)被定义为N1 功能控制端口,分别与N1的相应功能管脚相连接,13 脚定义为IR输入端,10 脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12 脚、27 脚及28 脚定义为握手信号功能端口,连接主板CPU 的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。P0 口:P0 口是一组8 位漏极开路型双向I/O 口, 也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。 在访问外部数据存储器或程序存储器时,这组口线分时转换地址

10、(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。 P1 口:P1 是一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。 引脚号功能特性P1.0T2,时钟输出P1.1T2EX(定时/计数器2)与AT89C51 不同之处是,P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),参见表1。 Flash 编程和程序校验期间

11、,P1 接收低8 位地址。 P2 口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑 门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。 在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX RI 指令)时,P2 口输出P2 锁存器的内容。 表1 P1.0和P1.1的功能P3 口:P3 口是一组带

12、有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。 P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能 P3 口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号。 RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频

13、率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000HFFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。 如EA端为高电平(接Vcc端),CPU 则执行内部

14、程序存储器中的指令。 XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2 :振荡器反相放大器的输出端。2.4.2锁存器锁存器是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。由若干个钟控D触发器构成的一次能存储多位二进制代码的时序逻辑电路,叫锁存器件。 逻辑结构与功能表见图2-4:图2-4 锁存器逻辑结构与功能表8位锁存器74HC373的逻辑图如下图所示。其中使能端G加入CP信号,D为数据信号。输出控制信号为0时,锁存器的数据通过三态门进行输出。图2-5 74HC373引脚(管脚)图:图2-6 74LS373内部逻辑图 图2-7 74LS

15、373真值表所谓锁存器,就是输出端的状态不会随输入端的状态变化而变化,仅在有锁存信号时输入的状态被保存到输出,直到下一个锁存信号到来时才改变。在某些运算器电路中有时采用锁存器作为数据暂存器数据有效延迟后于时钟信号有效。这意味着时钟信号先到,数据信号后到。 典型的锁存器逻辑电路是 D 触发器电路。 锁存,就是把信号暂存以维持某种电平状态。锁存器的最主要作用是缓存,其次完成高速的控制其与慢速的外设的不同步问题,再其次是解决驱动的问题,最后是解决一个 I/O 口既能输出也能输入的问题。 3系统硬件设计3.1 硬件电路的总体框图本数字抢答器的硬件电路总体框图见图3-1:按键与按钮电路复位等辅助电路数码

16、管显示电路总体开关电源系统 图3-1 数字抢答器电路框图3.2 电路器件选择本次设计的数字抢答器采用AT89S51单片机作为系统的控制单元。就抢答器而言,通常可采用液晶显示或数码管显示。由于数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。本实验用数码管来显示。3.3最小系统设计3.3.1时钟频率电路图单片机必须在时钟的驱动下才能工作.由之前所学的单片机原理最小系统内容,在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。晶振电路见图3-2:·图3-2晶振电路3.3.2

17、复位电路图设计单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态。复位电路图见图3-3所示:图3-3复位电路3.3.3 键盘扫描电路的设计在单片机应用中键盘用得最多的形式是独立键盘及矩阵键盘。本实验用的是独立式键盘。键盘扫描电路图见图3-4:图3-4独立键盘3.3.4功能键及发声系统设计声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇

18、叭发出不同的声音。通过添加一些具体的功能键可以使系统的功能更加完善。功能键及发声系统结构图见图3-5:图3-5功能键及发声系统结构图3.4总体设计结构图数字抢答器的总体设计结构见图3-6:图3-6总体结构图4 个人小结 这次的课程设计的在学期开始时进行的,经过一个暑假的“沉淀”,对做课程所要求的严谨科学态度还不适应了,所以一开始选题的时候是很不知所措,再加上考研时间的需要,这次就选了个比较简答的抢答器。 当天选了题目之后,就开始找资料,先是就之前所学的单片机原理及应用技术进行有关芯片的研究,后来又去图书馆找了单片机的实训教程,最终确定了用芯片AT89C52。这次的课程设计我们希望能加入一些新的

19、想法:比如说不准有人抢答,设定抢答时间。主要是考虑到以前看节目的时候经常会看到主持人还没说开始的时候有些人已经抢答了,而且也算是为以后的课程设计奠定基础。找了相关资料,在P3口添加了6个按键,设定了主持人的复位键(开始,结束),设定抢答时间。确定了电路图。 然后是在proteus中画电路,由搭档在keil中编写程序,经过反复检查,修改。总算是调试出来了。 接着就是去采集器件了,一开始也没想到要用插针,按照电路图在版子上描画电路图,就开始焊,后来发现可能是排版的不够严谨吧,板子背面的排线焊出来会很杂乱。于是就想到了插针,又去电子市场买了些。终于是焊好了,一调试结果也是正确,应该说主要是之前的工作

20、做的比较充分。设计电子智能抢答器,采用了单片机技术、数字电子、模拟电子等相关技术。把在学校三年所学知识连成一串。理论联系实践是我懂得了在系统设计中设计方法的选用是系统设计能否成功的关键。在以后的道路中,我会严格要求自己,追求完美。5 致谢 这次的课程设计是对过去所学知识的系统提高和扩充的过程,为今后的发展打下了良好的基础。经过反复的查资料以及向同学请教,我学会了很多做课题的思想,套路。老师给我们安排的课程设计就是在之前理论学习的基础上增加自己的动手能力,是我们的思维更活跃,不至于做只会理论知识的“书呆子”。这对以后我们的出路奠定了很好的基础。在此,我要感谢指导老师庄志红和还有其他帮助过我们的同

21、学。6 参考文献1.单片机原理及应用技术 范力旻 电子工业出版社2.单片机应用技术实训教程 胡文金 钟秉翔 杨健 重庆大学出版社 3.8051单片机彻底研究实习篇 林申茂编著 人民邮电出版社 4.单片机原理及接口技术实践教程 胡建编著 机械工业出版社 5.新型单片机接口器件与技术 林凌,李刚,丁茹,李小霞.西安:西安电子科技大学出版社,2005年6.单片机原理与应用及C51程序设计 谢维城,杨加国.清华大学出版社,2006年7. 附录附录1:程序清单OK EQU 20H;抢答开始标志位 RING EQU 22H;响铃标志位 ORG 0000H AJMP MAIN ORG 0003H AJMP

22、INT0SUB ORG 000BH AJMP T0INT ORG 0013H AJMP INT1SUB ORG 001BH AJMP T1INT ORG 0040HMAIN: MOV R1,#10;初设抢答时间为10s MOV R2,#10;初设答题时间为10s MOV TMOD,#11H;设置未定时器/模式1 MOV TH0,#0F0H MOV TL0,#0FFH;越高发声频率越高,越尖 MOV TH1,#3CH MOV TL1,#0B0H;50ms为一次溢出中断 SETB EA SETB ET0 SETB ET1 SETB EX0 SETB EX1;允许四个中断,T0/T1/INT0/IN

23、T1 CLR OK CLR RING SETB TR1 SETB TR0;一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了;=查询程序=START: MOV R5,#0BH MOV R4,#0BH MOV R3,#0BH ACALL DISPLAY;未开始抢答时候显示FFF JB P3.0,NEXT;ddddddd ACALL DELAY JB P3.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询 ACALL BARK;按键发声 MOV A,R1 MOV R6,A;送R1->R6,因为R1中保存了抢答时间 SE

24、TB OK;抢答标志位,用于COUNT只程序中判断是否查询抢答 MOV R7,#01H ;读抢答键数据信号标志,这里表示只读一次有用信号 MOV R3,#0AH;抢答只显示计时,灭号数 AJMP COUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面NEXT: JNB P1.0,FALSE1 JNB P1.1,FALSE2 JNB P1.2,FALSE3 JNB P1.3,FALSE4 JNB P1.4,FALSE5 JNB P1.5,FALSE6 JNB P1.6,FALSE7 JNB P1.7,FALSE8 AJMP START;=非法抢答处理程序=FALS

25、E1: MOV R3,#01H AJMP ERRORFALSE2: MOV R3,#02H AJMP ERRORFALSE3: MOV R3,#03H AJMP ERRORFALSE4: MOV R3,#04H AJMP ERRORFALSE5: MOV R3,#05H AJMP ERRORFALSE6: MOV R3,#06H AJMP ERRORFALSE7: MOV R3,#07H AJMP ERRORFALSE8: MOV R3,#08H AJMP ERROR;=INT0(抢答时间R1调整程序)=INT0SUB: MOV A,R1 MOV B,#0AH DIV AB MOV R5,A

26、MOV R4,B MOV R3,#0AH ACALL DISPLAY;先在两个时间LED上显示R1 JNB P3.4,INC0;P3.4为+1s键,如按下跳到INCO JNB P3.5,DEC0;P3.5为-1s键,如按下跳到DECO JNB P3.1,BACK0;P3.1为确定键,如按下跳到BACKO AJMP INT0SUBINC0: MOV A,R1 CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起。 MOV R1,#00H ACALL DELAY1 AJMP INT0SUBADD0: INC R1 ACALL DELAY1 AJMP INT0

27、SUBDEC0: MOV A,R1 JZ SETR1;如果R1为0, R1就置99, DEC R1 ACALL DELAY1 AJMP INT0SUBSETR1: MOV R1,#63H ACALL DELAY1 AJMP INT0SUBBACK0: RETI ;=INT1(回答时间R2调整程序)=INT1SUB: MOV A,R2 MOV B,#0AH DIV AB MOV R5,A MOV R4,B MOV R3,#0AH ACALL DISPLAY JNB P3.4,INC1 JNB P3.5,DEC1 JNB P3.1,BACK1 AJMP INT1SUBINC1: MOV A,R2

28、CJNE A,#63H,ADD1 MOV R2,#00H ACALL DELAY1 AJMP INT1SUBADD1: INC R2 ACALL DELAY1 AJMP INT1SUBDEC1: MOV A,R2 JZ SETR2 DEC R2 ACALL DELAY1 AJMP INT1SUBSETR2: MOV R2,#63H ACALL DELAY1 AJMP INT1SUBBACK1: RETI ;=倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=REPEAT: MOV A,R2 ;使用锦囊时重新计时 MOV R6,A CLR RING COUNT: MOV R0,#00H;重置定时

29、器中断次数 MOV TH1,#3CH MOV TL1,#0B0H;重置定时器RECOUNT:MOV A,R6;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6 MOV B,#0AH DIV AB;除十分出个位/十位 MOV 30H,A;十位存于(30H) MOV 31H,B;个位存于(31H) MOV R5,30H;取十位 MOV R4,31H;取个位 MOV A,R6 SUBB A,#07H JNC LARGER;大于5s跳到LARGER,小于等于5s会提醒 MOV A,R0 CJNE A,#0AH,FULL;1s中0.5s向下运行 CLR RING AJMP CHECKFULL:

30、CJNE A,#14H,CHECK;下面是1s的情况,响并显示号数并清R0,重新计 SETB RING MOV A,R6 JZ QUIT;计时完毕 MOV R0,#00H DEC R6;一秒标志减1 AJMP CHECKLARGER: MOV A,R0 CJNE A,#14H,CHECK;如果1s向下运行,否者跳到查"停/显示" DEC R6;计时一秒R6自动减1 MOV R0,#00HCHECK: JNB P3.1,QUIT;如按下停止键退出 JNB OK,CHECKK ;只在回答倒计时才有效 AJMP NEXTTCHECKK: JNB P3.0,REPEAT ;判断是否

31、使用锦囊NEXTT: ACALL DISPLAY JB OK,ACCOUT;如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用) AJMP RECOUNTACCOUT: MOV A,36H JNB ACC.0,TRUE1 JNB ACC.1,TRUE2 JNB ACC.2,TRUE3 JNB ACC.3,TRUE4 JNB ACC.4,TRUE5 JNB ACC.5,TRUE6 JNB ACC.6,TZ1 JNB ACC.7,TZ2 AJMP RECOUNTTZ1: JMP TRUE7TZ2: JMP TRUE8 QUIT: CLR OK;如果按下了"停止键&

32、quot;执行的程序 CLR RING AJMP START;=正常抢答处理程序=TRUE1: ACALL BARK MOV A,R2 MOV R6,A;抢答时间R2送R6 MOV R3,#01H CLR OK;因为答题的计时不再查询抢答,所以就锁了抢答 AJMP COUNTTRUE2: ACALL BARK MOV A,R2 MOV R6,A MOV R3,#02H CLR OK AJMP COUNTTRUE3: ACALL BARK MOV A,R2 MOV R6,A MOV R3,#03H CLR OK AJMP COUNTTRUE4: ACALL BARK MOV A,R2 MOV R

33、6,A MOV R3,#04H CLR OK AJMP COUNTTRUE5: ACALL BARK MOV A,R2 MOV R6,A MOV R3,#05H CLR OK AJMP COUNTTRUE6: ACALL BARK MOV A,R2 MOVR6,A MOV R3,#06H CLR OK AJMP COUNTTRUE7: ACALL BARK MOV A,R2 MOV R6,A MOV R3,#07H CLR OK AJMP COUNTTRUE8: ACALL BARK MOV A,R2 MOV R6,A MOV R3,#08H CLR OK AJMP COUNT;=犯规抢答程序

34、=ERROR: MOV R0,#00H MOV TH1,#3CH MOV TL1,#0B0H MOV 34H,R3;犯规号数暂存与(34H)HERE: MOV A,R0 CJNE A,#06H,FLASH;0.3s向下运行->灭并停响 CLR RING MOV R3,#0AH MOV R4,#0AH MOV R5,#0AH;三灯全灭 AJMP CHECK1FLASH: CJNE A,#0CH,CHECK1;下面是0.8s的情况,响并显示号数并清R0,重新计 SETB RING MOV R0,#00H MOV R3,34H;取回号数 MOV R5,#0BH MOV R4,#0BH;显示FF

35、和号数 AJMPCHECK1CHECK1: JNB P3.1,QUIT1 ACALL DISPLAY AJMP HEREQUIT1: CLR RING CLR OK AJMP START;=显示程序=DISPLAY: MOV DPTR,#DAT1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出, MOV A,R3 MOVC A,A+DPTR MOV P2,#0feH MOV P0,A ACALL DELAY2 MOV DPTR,#DAT2 MOV A,R5 MOVC A,A+DPTR MOV P2,#0fdH MOV P0,A ACALL DELAY2 MOV A,R4 MOVC A,A+DPTR MOV P2,#0fbH MOV P0,A ACALL DELAY2 RETDAT1: DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H ;"灭","1","2","3","4","5","6","7","8","9","灭","F"

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论