基于单片机的音乐盒.doc_第1页
基于单片机的音乐盒.doc_第2页
基于单片机的音乐盒.doc_第3页
基于单片机的音乐盒.doc_第4页
基于单片机的音乐盒.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

目 录摘要Abstract1 绪论11.1历史背景11.2目的意义11.3主要问题11.4技术要求12 设计方案简述22.1设计功能要求22.2总体设计原理22.3总体设计框图23详细设计33.1芯片的选择与介绍33.1.1主要性能参数33.1.2引脚功能说明33.2最小单片机系统53.3键盘部分63.4扬声器部分63.5显示部分63.6硬件部分63.7流程图74设计结果与分析85总结9参考文献10附录一 元器件清单11附录二 电路图12附录三 程序代码13摘 要为了实现单片机控制音乐播放,此次课程设计做出了尝试,即电子音乐盒的设计。本设计采用了扬声器发声来实现歌曲的播放,能保持基本音调不变,流畅播放出歌曲。现选用STC89C52单片机。用KeilC51编程软件编程,用PROTEUS单片机仿真软件仿真。利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲。通过单片机P1口控制,实现功能键盘控制;功能键盘采用按键开关,通过单片机P2口控制,实现歌曲播放顺序的调换和暂停播放功能;扬声器由单片机的P3口控制,实现歌曲播放;主要工作过程是通过按下功能键实现上一首和下一首及暂停播放,同时有液晶屏显示当前播放歌曲的序号,扬声器播放出音乐。关键词:STC89C52单片机;方波; 音调AbstractIn order to achieve single-chip microcomputer to control music player, I made the project to try, that is, the design of electronic music box. I used to achieve audible speaker songs to play, to maintain the same basic tone,smooth playback of songs. Single-chip STC89C52 is optional. with KeilC51 programming software programming, and simulation software PROTEUS single-chip simulation.The use of I / O I have a certain frequency square wave to drive the speaker, the issue of different tones, which play music. through the P1 port single-chip control functions; functions using the keyboard button switches, single-chip P2 through population control, to achieve the change the order of songs to play and pause functions; buzz P3 is controlled by MCU port control, the realization of music playback.The main process is to achieve by pressing function keys on the first one and the next, and suspension of play, while the LCD the serial number of the currently playing song, the music player speaker. Key words: STC89C52 microcontroller; square; tone1 绪论1.1历史背景音乐盒的起源,可追溯至中世纪欧洲文艺复兴时期。当时为使教会的的钟塔报时,而将大小的钟表上机械装置,被称为“可发出声音的组钟”。机械音乐盒的发展史,可追溯至14世纪初期,所发明挂在教堂钟楼上的排钟,这种用发条装置来演奏的乐器,能发出清脆如水晶般的乐声,一度风靡荷兰,比利时和法国北部。1811年以来,瑞士曾经是这项技艺的中心,它和瑞士钟表工业一样,两者相辅相成,一段时间名领风骚,称霸全球。音乐盒300多年的产品发展,同时也是人类文明300多年发 展的历史鉴证。每个不同时期的音乐盒造型,都能折射出当时不同的社会心态和文明发展现状,它也成了时代的一面镜子。现今,音乐盒的制造,延袭传统,结合现代,正日益成为人们或为了典藏一段岁月,或为了收藏一份情感,或出于对音乐的追求,或对于旧时代的怀念,或为了居室的美化,等等,而得到众多品位人士的追求。 1.2 目的意义为了更好地熟悉和掌握单片机的基本功能和编程,我们以STC89C52为基础设计电子音乐盒。STC89C52单片机电子音乐盒集成多个硬件资源模块,每个模块各自可以成为独立的单元,也可以相互组合,因此,可以为不同阶层的单片机爱好者所用。同时,电子音乐盒的设计具有很重要的现实意义。我们根据学习和实践的需要,进行了电子音乐盒功能设计。我们在制作电子音乐盒的过程中会学习到很多的东西,能够最大限度的了解我们自制的这一个单片机电子音乐盒,这样以后调试程序的时候便得心应手,效率要提高很多。1.3 主要问题制定音乐盒控制系统需要完成功能,并根据此来制定设计方案;根据设计方案来进行硬件电路图的设计和软件模块的开发;通过仿真调用后再来反复修改程序,最终达到预期功能。1.4 技术指标1. 系统要有一定稳定性,不易受外界干扰的影响。2. 系统采用外部或内部+5V供电。3. 实现音乐盒播放音乐的控制。4. LCD来显示歌曲序号的功能。5.通过按键选择增加上一首、下一首、暂停/播放功能。2 设计方案简述2.1 设计功能要求1.利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲(最少三首乐曲,每首不少于30秒)2采用LCD显示信息3开机时有英文欢迎提示字符,播放时显示歌曲序号(或名称)4可通过功能键选择乐曲,暂停,播放。5选作内容:显示乐曲播放时间或剩余时间2.2 总体设计原理通过单片机的定时器产生一定长度的方波,方波脉冲驱动扬声器发声。要产生音频脉冲,只需算出某一音频的周期(1/音频),然后取半周期的时间定时。利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O口反相,就可在I/O脚上得到此频率的脉冲。如中音D0,频率为523HZ,其周期T=1/523=1912微秒,因此只要令计数器定时1912/2=956,在每计数956次时将I/O口反相,就可得到中音D0(523HZ)。 当键盘有键按下时,判断键值,启动计数器T0,产生一定频率的脉冲,驱动蜂鸣器,放出乐曲。同时启动定时器T1,在LCD显示歌曲号。通过单片机P1口控制,实现功能键盘的功能;功能键盘采用按键开关,通过单片机P2口控制,实现歌曲播放顺序的调换和暂停播放功能;扬声器由单片机的P3口控制,实现歌曲播放。通过按下功能键实现上一首和下一首及暂停播放,同时有LCD显示当前播放歌曲的序号,扬声器播放出音乐。2.3 总体设计框图单片机接+5V电源供电,晶振电路产生单片机所需时钟信号,通过功能键产生外部中断,控制音乐盒的上一首和下一首曲目,再由I/O接口输出控制扬声器发声,LCD显示。另外,复位电路在于营造一个程序运行的初始状态,在程序出错时,重新启动单片机工作。电源晶振部分复位电路STC89C52扬声器LCD显示功能键图1编程设置好定时时间,通过编程器写入STC89C52单片机系统。由STC89C52单片机的定时器每秒钟通过P0.0-P0.7口控制LCD显示,复位信号由按钮输入,每按下一次,系统恢复原设定状态。3 详细设计3.1芯片的选择和介绍STC89C52有以下标准功能:8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级终端结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,STC89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节点工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 3.1.1主要性能参数:1. 与MCS-51产品指令和引脚完全兼容 2. 8k字节可重擦写Flash闪速存储器3. 1000次擦写周期4. 全静态操作:0Hz-24MHz5. 三级加密程序存储器6. 2568字节内部RAM7. 32个可编程I/O口线8. 3个16位定时/计数器9. 8个中断源10. 可编程串行UART通道低功耗空闲和掉电模式 图23.1.2引脚功能说明:VCC:供电电压GND:接地 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。I/O口作为输入口时有两种工作方式即所谓的读端口与读引脚读端口时实际上并不从外部读入数据而是把端口锁存器的内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部的数据读入到内部总线上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作这是由硬件自动完成的不需要我们操心1然后再实行读引脚操作否则就可能读入出错为什么看上面的图如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q为1加到场效应管栅极的信号为1该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1也会因端口的低阻抗而使信号变低使得外加的1信号读入后不一定是1若先执行置1操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入由于在输入操作时还必须附加一个准备动作所以这类I/O口被称为准双向口89C51的P0/P1/P2/P3口作为输入时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差别除了P1口外P0P2P3口都还有其他的功能 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。32 最小单片机系统P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P2.0P2.1P2.2P2.3P2.4P2.6P2.7P3.2P3.3P3.4P3.5P2.5P0.0P0.1P0.2P0.3P0.4P0.5XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1STC89C52X1CRYSTALC122pFC222pFC322uFC422uFR11kR21k+5V21 图3 单片机系统单片机最小系统以89C52为核心,外加时钟和复位电路,电路结构简单,抗干扰能力强,成本相对较低,非常符合本设计的所有要求.89C52单片机系列是在MCS-51系列的基础上发展起来的,是当前8位单片机的典型代表,采用CHMOS工艺,即互补金属氧化物的HMOS工艺, CHMOS是CMOS和HMOS的结合,具有HMOS高速度和高密度的特点,还具有CMOS低功耗的特点.单片机需要一个时间基准来为各种操作提供秩序,此电路叫时钟电路,采用不同的接线方式可以获得不同时钟电路,有内部时钟电路和外部时钟电路,如图4.3所示,外部时钟电路会使电路复杂,故采用的是内部时钟电路。时钟电路在单片机的外部通过XTAL1,XTAL2这两个引脚跨接晶体振荡器和微调电容,构成稳定的自激振荡器.本系统采用的为6MHz的晶振,一个机器周期为2us,C1,C2为22pF。图4 时钟电路图图5复位电路图复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。复位电路分为上电自动复位和按键手动复位,如图4.4所示。RST引脚是复位信号的输入端,复位信号是高电平有效.这次采用的是手动复位,复位通过电容C3,C4和电阻R1,R2来实现,按键手动复位是图中复位键来实现的。3.3 键盘部分键盘是由一组按压式或触摸式开关构成的阵列,是一种常用的输入设备。键盘可分为编码式键盘和非编码式键盘两种。1.编码键盘通过硬件电路产生被按按键的键码,这种键盘所需程序简单,但硬件电路复杂、价格昂贵通常不被单片机系统采用。2.非编码键盘常用一些按键排列成行列矩阵,其硬件逻辑与按键编码不存在严格的对应关系,而要由所用的程序来决定。非编码键盘的硬件接口简单,但是要占用较多的CPU时间,通常采用可编程键盘管理芯片来克服这个缺点。本设计使用两种按键,一种是按键式非编码键盘和轻触式非编码开关。3.4扬声器部分扬声器是一种把电信号转换成声音信号的电声器件。确切地说,扬声器的工作实际上是把一定范围内的音频电功率讯号通过换能方式转变为失真小并具有足够声压级的可听声音。我们知道,声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单处机某个口线的“高”电平或低电平,则在该口上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调。3.5 显示部分本设计方案采用液晶显示屏1602作为显示器。选用单片机的P0口作为液晶数据输入口,P2.1、P2.2分别接液晶的数据和时钟引脚。用液晶作为显示器,极大地简化了硬件电路,同时增强了系统的显示能力。3.6 硬件部分在连接板子的时候,首先把各个部件焊接好,并连接线路,之后用万用表检查每项线路的连接状态,然后把程序刷人单片机中,检测运行情况,在硬件调试完毕后,接入+5V电源。3.7流程图4 设计结果及分析本文描述了电子音乐盒的硬件和软件制作方案,总体符合预期要求,能够成功实现按0-7按键能演奏不同的乐曲的基本功能,并添加了通过按键控制上一首,下一首,暂停/播放的功能。在播放乐曲的过程中,还增加了显示歌曲演奏时间的功能。另外,采用了液晶显示技术,简化了硬件电路,还能显示英文的开机画面等。当然,此设计还存在很多不足有待改进的地方1 可以添加一个彩灯按照乐曲频率闪烁功能,增添趣味。2 可以添加键盘输入乐曲功能,把电子琴和音乐盒结合起来。 总体来说本次课程设计基本完成,但还有部分可以完善。5 总结音乐盒设计是一项趣味性很强的设计,能激发我的浓厚兴趣。同时要求我从程序编程,调试,软件仿真和绘制开始,到硬件的焊接和调试,再到修改程序,在这期间我了解到了单片机开发的大致流程。通过这次毕业设计,也让我学习到了很多新的东西,这些都让我受益匪浅。单片机的定时器功能,LCD显示,功能键盘的设计,这些内容都颇为丰富。有以前学习过的旧知识,也有很多未曾注意到得新知识,这些都曾使我的设计出错,通过自己的努力,老师指导和同学的帮助,终于克服了一个一个的困难,把硬件实物顺利做好,把软件调试顺利完成。最后,衷心感谢这次对我的毕业设计提供无私帮助的所有老师和同学!参考文献1 贾伯年. 传感器技术. 南京: 东南大学出版社, 20002 阎石. 数字电子技术基础. 北京: 高等教育出版社, 19983 赵晶. Protel 99高级应用. 北京: 人民邮电出版社, 20004 周学毛. 汇编语言程序设计. 北京: 高等教育出版社, 1997 5 李叶紫. MCS-51单片机应用教程. 北京: 清华大学出版社,2002 6 马西秦. 自动检测技术. 北京: 机械工业出版社, 2002 7 楼然苗. 51系列单片机设计实例. 北京: 北京航空航天大学出版社,1999 8 罗万钧. 汇编语言程序设计. 陕西: 西安电子科技大学出版社,1995 9 刘守亦. 单片机应用技术. 陕西: 西安电子科技大学出版社,199510 肖玲尼. Protel 99 SE 印刷电路. 北京: 清华大学出版社, 200311 梁立编. 程序设计基础与C语言. 陕西: 西安电子科技大学出版社,199812 黄菊生. 单片机原理与接口技术. 北京:国防工业出版社 2007.0913 杨素行. 微机原理及应用. 清华大学出版社 2007.0214 何宏主. 单片机原理与接口技术. 国防工业出版社2006.07 15 杨西明、朱骐主. 单片机编程与应用入门. 北京:机械工业出版社 2004.0616 先锋工作室. 单片机程序设计实例. 清华大学出版社 200217 谢宜仁. 单片机实用技术问答. 人民邮电出版社 2003.0118 孙江宏. protel99电路设计与应用. 北京:机械工业出版社 2004.0719 房小翠、王金凤. 单片机实用系统设计技术. 北京:国防工业出版社 1999.06附录附录一 元器件清单名称总数量型号备注电阻21K(1),10K(1)电容330pf(2),10uf(1)液晶显示频11602A16脚单片机1STC89C52晶振112MHz其他扬声器(1),三极管(1),开关(17)附录二 电路图按键设置0123456789ABCDEF附录三 程序RS BIT P2.0;定义液晶显示端口标号RW BIT P2.1E BIT P2.2;*L50MS EQU 60HL1MS EQU 61HL250MS EQU 62HSEC EQU 65HMIN EQU 64HHOU EQU 63H;*org 0000h ljmp mainORG 000BHLJMP TT0ORG 001BHLJMP T1INT org 1000hmain: ;-;液晶初始化MOV SP,#70H MOV P0,#01H ;清屏 CALL ENABLE MOV P0,#38H ;8位,2行显示 lCALL ENABLE MOV P0,#0FH ;屏显on,光标on,闪烁on lCALL ENABLE MOV P0,#06H ;计数地址加1,显示幕on lCALL ENABLE;-内存初始化 lcall initil ;-key1: lcall key lcall modd ljmp key1;-键盘扫描key: nop nop lcall ks jnz k1 ;有按键转到K1 lcall kaiji lcall SOPxn: ljmp keyk1: lcall modd lcall modd lcall ks jnz k2 ljmp keyk2: mov R2,#0feh ;读键盘 mov R4,#00hk3: mov A,R2 mov P1,A mov A,P1 JB ACC.4,L1 ;为1跳转,第一行无按键 mov a,#00h ljmp lkL1: jb acc.5,L2 mov a,#04h ljmp lkL2: jb acc.6,L3 mov a,#08h ljmp lkL3: jb acc.7,next1 mov a,#0ch;-lk: add a,R4 push acck4: lcall delay1 ;若同时有其他按键,则等待 lcall ks jnz k4;- mov r3,#07h clr a mov r0,#30h mov r1,#31hmm1: mov a,r1 mov r0,a inc r0 inc r1 djnz r3,mm1 pop acc mov r0,a RET;-next1: inc R4 ;-列扫描 mov a,R2 JNB acc.3,n2 ljmp n1n2: ljmp keyn1: rl a mov R2,a ljmp k3;-ks: mov a,#0f0h ;判断P1口 mov P1,a nop nop mov a,P1 cpl a anl a,#0f0h RET;-DELAY1: SETB RS0dl: mov R5,#0ahdl2: mov R6,#63dl3: nop nop djnz R6,dl3 djnz R5,dl2 CLR RS0 RET;- ;30H-37H初值为零;-initil: mov r3,#08h mov r0,#30hm1: mov r0,#00h inc r0 djnz r3,m1 RET;-;显示 ;-modd: MOV P0,#8EH CALL ENABLE mov A,37H mov DPTR,#TABLE3 MOVC A,A+DPTR CALL WRITE2 RET;-;开机提示字;-kaiji: mov a,37h cjne a,#0fh,DFF MOV P0,#80H ;设光标地址 CALL ENABLE MOV DPTR,#TABLE1;写数据 CALL WRITE1 DFF: RET;-;按键值播放歌曲;-SOP: mov a,37h cjne a,#01h,A11 LCALL MODD MOV 52H,#HIGH TABLE10 MOV 53H,#LOW TABLE10 LCALL INITILE2 lcall MAIN0A11: CJNE A,#02H,A22 LCALL MODD MOV 52H,#HIGH TABLE20 MOV 53H,#LOW TABLE20 LCALL INITILE2 lcall MAIN0A22: CJNE A,#03H,A33 LCALL MODD MOV 52H,#HIGH TABLE30 MOV 53H,#LOW TABLE30 LCALL INITILE2 lcall MAIN0 A33: CJNE A,#04H,A44 LCALL MODD MOV 52H,#HIGH TABLE40 MOV 53H,#LOW TABLE40 LCALL INITILE2 lcall MAIN0A44: CJNE A,#05H,A55 LCALL MODD MOV 52H,#HIGH TABLE50 MOV 53H,#LOW TABLE50 LCALL INITILE2 lcall MAIN0A55: CJNE A,#06H,A66 LCALL MODD MOV 52H,#HIGH TABLE60 MOV 53H,#LOW TABLE60 LCALL INITILE2 lcall MAIN0 A66: CJNE A,#07H,A77 LCALL MODD MOV 52H,#HIGH TABLE70 MOV 53H,#LOW TABLE70 LCALL INITILE2 lcall MAIN0 A77: CJNE A,#08H,A88 LCALL MODD MOV 52H,#HIGH TABLE80 MOV 53H,#LOW TABLE80 LCALL INITILE2 lcall MAIN0A88: CJNE A,#09H,A99 LCALL MODD MOV 52H,#HIGH TABLE90 MOV 53H,#LOW TABLE90 LCALL INITILE2 lcall MAIN0 A99: CJNE A,#0AH,AAA LCALL MODD MOV 52H,#HIGH TABLE100 MOV 53H,#LOW TABLE100 LCALL INITILE2 lcall MAIN0 AAA: RET ;*INITILE2: MOV L50MS,#20 MOV L1MS,#00H MOV L250MS,#00H MOV SEC,#00H MOV MIN,#00H MOV HOU,#00H MOV A,HOU MOV B,#10 DIV AB ADD A,#30H ;将BCD吗转化为ASIIC码 MOV P0,#0C8H ;显示小时十位 CALL ENABLE CALL WRITE2 MOV A,B ADD A,#30H MOV P0,#0C9H ;显示小时个位 CALL ENABLE CALL WRITE2 MOV A,#3AH MOV P0,#0DH ;显示冒号 CALL ENABLE CALL WRITE2 MOV A,MIN MOV B,#10 DIV AB ADD A,#30H MOV P0,#0CBH ;显示分十位 CALL ENABLE CALL WRITE2 MOV A,B ADD A,#30H MOV P0,#0CCH ;显示分个位 CALL ENABLE CALL WRITE2 MOV A,#3AH MOV P0,#0CDH ;显示冒号 CALL ENABLE CALL WRITE2 MO

温馨提示

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

评论

0/150

提交评论