欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    单片机课程设计基于89C51的数字频率计设计.docx

    • 资源ID:919291       资源大小:334.61KB        全文页数:34页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机课程设计基于89C51的数字频率计设计.docx

    忏由心本人摩单片机系统课程设计成绩评定表设计课题基于89C51的数字频率计设计学院名称:电气工程学院专业班级:电气XXX班学生姓名:XXX学号:XXXXXXXXX指导教师:XXX设计地点:31-510设计时间:2014-12-29-2015-01-09指导教师意见:成绩:签名:年月曰单片机系统课程设计课程设计名称:基于89C51的数字频率计设计专业班级:电气XXX班学生姓名:XXX学号:XXXXXXXXXX指导教师:XXXX课程设计地点:31510课程设计时间:2014-12-29-2015-01-09单片机系统课程设计任务书学生姓名专业班级学号题目基于89C51的数字频率计设计课题性质工程设计课题来源自拟指导教师主要内容(参数)利用89C51设计数字频率计,实现以下功能:1 .通过定时器计数方式产生频率信号;2 .有足够宽的测量范围,测量结果通过LCD显示;3 .能够测量正弦信号,方波信号及其他各种单位时间内变化的物理量。任务要求(进度)第1-2天:熟悉课程设计任务及要求,查阅技术资料,确定设计方案。第3-4天:按照确定的方案设计单元电路。要求画出单元电路图,元件及元件参数选择要有依据,各单元电路的设计要有详细论述。第5-6天:软件设计,编写程序。第7-8天:实验室调试。第9-10天:撰写课程设计报告。要求内容完整、图表清晰、文理流畅、格式规范、方案合理、设计正确,篇幅不少于6000字。主要参考资料1胡汉才,单片机原理及其接口技术M.清华大学出版社,1997-3.35412毛谦敏,吴洪谭.单片机原理及应用系统设计.北京:国防工业出版社,2005:1633万福军.单片微机原理系统设计与应用.合肥:中国科学技术大学出版社,2001:201审查意见系(教研室)主任签字:年月日1引用12系统概述21. 1频率测量原理22. 2频率测量方法概述23. 3设计方案43系统硬件设计44. 1系统硬件总述45. 2彳口*y53.331::ILL73.473.5AT89C51介绍83.6数字频率计显示电路93.7时钟控制电路103.8电源电路104彳牛114.1系统软件总述114.2显示器初始化设计134.3vt*144.4数制转换子程序设计154.5显示子程序设计165-Vts17iJZbL,1/A11品17附录B:频率计总程序181引用在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率测量在科技研究和实际应用中的作用日益重要。传统的频率计通采用组合电路和时序电路等大量的硬件电路构成,体积较大,运行速度慢,而且测量低频信号时不宜直接使用。因此频率测量方法的优化也越来越受到重视。测量频率的方法有很多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。由于把微型计算机的功能引入到了数字仪表,因此测量的数字化、智能化逐渐成为当前测量技术的发展趋势。数字化处理技术使得测量仪器设备功能完美,但数字处理的实时性受到处理速度的限制,实时测量对电路的处理速度要求越来越高,目前的微控处理芯片发展迅速,出现了诸如DSP,FPJA等不同领域的应用芯片。将这些芯片应用到频率计制作当中,使频率计的测量精度及速度也得到了很大程度上的提升。单片机频率计较以往的频率计有硬件电路少的优点,过去许多用硬件实现的功能可以通过单片机的软件程序来实现,因为软件可以降低频率计的成本,往往只需要增减几段代码就可以实现不同的功能,同时也降低了硬件电路设计的难度,减少出错率,通过软件调试的方法还可以提高频率测量的精度。本课题设计的频率计以89C51单片机为核心,具有性能优良,精度高,可靠性好等特点。2系统概述2.1频率测量原理频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。2.2频率测量方法概述利用电子计数式测量频率具有精度高、测量范围宽、显示醒目直观、测量迅速,便于实现测量过程自动化等优点,下面是电子计数式测量频率的几种方法。(1)脉冲数定时测频法(M法):此法是记录在确定时间及内待测信号的脉冲个数M,则待测频率为:FX=MXlTC(2-1)时间A为准确值,测量的精度取决于计数MX的误差。其特点在于:测量方法简单;测量精度与待测信号频率和门控时间有关,当待测信号频率较低时,误差较大。(2)脉冲周期测频法(T法):此法是在待测信号的一个周期TX内,记录标准频率信号变化次数Mo.这种方法测出的频率是:FX=MOlTX(2-2)此法的特点是低频检测时精度高,但当高频检测时误差较大。(3)脉冲数倍频测频法(AM法):此法是为克服M法在低频测量时精度不高的缺陷发展起来的。通过A倍频,把待测信号频率放大A倍,以提高测量精度。其待测频率为;Fx=MxIAT0(2-3)其特点是待测信号脉冲间隔减小,间隔误差降低;精度比M法高A倍,但控制电路较复杂。(4)脉冲数分频测频法(AT法):由于T法测量时要求待测信号的周期不能太短,所以可通过A分频使待测信号的周期扩大A倍,所测频率为:Fx=AM0/Tx(2-4)其特点是高频测量精度比T法高A倍;但控制电路也较复杂。(5)脉冲平均周期测频法(M/T法):此法是在闸门时间及内,同时用两个计数器分别记录待测信号的脉冲数MX和标准信号的脉冲数M°o若标准信号的频率为匕,则待测信号频率为:FX=FOMXlMO(2-5)M/T法在测高频时精度较高;但在测低频时精度较低。(6)多周期同步测频法:由闸门时间几与同步门控时间7;共同控制计数器计数的一种方法,待测信号频率与M/T法相同。其优点是,闸门时间与被测信号同步,消除了对被测信号计数产生的±1个字误差,测量精度大大提高,且测量精度与待测信号的频率无关,达到了在整个测量频段等精度测量。2. 3设计方案数字频率计是直接用十进制数字显示被测信号频率的一种测量装置。传统的数字频率计大多采用74LS系列数字集成电路直接测频,在使用过程中存在电路结构复杂,测量精度低、故障率高、维护不易等问题。本设计是以单片机为主再附加一些外围电路来设计数字频率计,通过单片机的软件设计,采用适当的算法,取代很多以前用硬件实现的电路,这不仅能弥补以往频率计测量精度低、故障率高、维护不易等不足,而且性能也得到了很大的提高。3系统硬件设计2.1 系统硬件总述本课题设计的频率计由单片机AT89C51、计数器74HC393、分频器MB501以及时钟晶振等构成。利用外扩的计数器74HC393和单片机AT89C51内含的16位计数器来构成多位计数器对待测信号计数。采用的双四位二进制计数器74HC393最高计数频率可达39MHz。若先对外部信号进行分频计数,再利用AT89C51对所测信号进行相对应的扩频,这样可使频率计的最高测量频率达GHZ数量级范围,由此达到频率计测量的宽范围的要求。该频率计测量范围为IoHZ2.OGHz,分2个频段实现。(1)lHz60MHz(2)50MHZ20GHz。如图3-1所示,为频率计的原理方框图。图3-1频率计原理方框图(1)信号输入电路:此部分包括两个小部分,第一部分是信号保护电路,是有两个反向并联的二极管组成。第二部分是由三极管、电容、电阻、电感组成的放大电路,用来提高输入阻抗和放大前级提供的微弱信号。(2)分频电路:这部分只用于信号50MHZ的电路,实现对高频信号的分频。(3)闸门选择电路:该频率计有两个信号输入端口,工作时先根据被测频率的大小来判断闸门电路应该与哪个端口电路接通,这样测出的频率比较精确。(4)计数器:由四块双四位二进制计数器74HC393、单片机AT89C51内部计数器TO共同构成,其中AT98C51内的计数器被设置成16位计数器。(5)时钟提供:单片机频率计的关键在于时基信号的准确性和稳定性,它决定频率计的技术精度。(6)显示:当待测信号的频率被测量出后由显示模块1602LCD显示出来。该频率计的输入电路分成两个端口,对应两个频段,输入电路主要完成对被测量信号的限幅、放大和整形。通道1输入信号频率为lHz60MHz,通道2为50MHZ2.OGHz,自校信号取自单片机的时钟电路,频率为11.0592MHz。电路的核心是计数及控制逻辑电路,通道2实现高速频率计数,计数最高频率可达2.OGHz0单片机完成整个系统的控制功能,包括信号的处理、计数过程控制及频率测量结果的处理和显示等。计数器在单片机的控制下主要完成计数功能,并锁存闸门时间内的计数值。电源部分采用220V交流电经变压、滤波、稳定后得到5V电压供整个系统使用。最后频率计测量的结果由液晶显示器1602LCD显示出来。2.2 信号输入电路本频率计的输入电路分两个量程,分别对应两个频段。图3-2为信号输入1通道的电路图,其测量范围是lHz60NIHz,图3-3为信号输入2通道的电路图,其测量范围是50MHZ2.0GHz。输入电路主要完成对被测信号的限幅、放大、整形与转换作用。图3-2信号输入1通道的电路图图3-3信号输入2通道的电路图(1)信号输入1通道电路信号输入1通道电路中,首先采用两个二极管对幅度较大的输入信号进行限幅。输入端采用RC高通电路,下限频率可达1Hz。C10,R12,Q2,降组成放大电路的射极输出器,用来提高输入阻抗。C11,Ru,R15,Cl3,Q3组成共射放大器,用来放大前级提供的微弱信号。如图3-4-1是共射极极交流放大电路,3-4-2图是共射极直流放大电路。在图3-4(a)中,输入端接低频交流电压信号vi(如音频信号,频率为20Hz20KHz)°输出端接负载电阻Rl,输出电压用V。表示。图3-4-1共射极极交流放大电路图3-4-2共射极直流放大电路(2)信号输入2通道电路在频率计信号输入2通道的电路中,信号经过前两级的放大,被送到MB5O1分频电路中,通过改变MB5O1引脚的接法,可以改变分频比,有256、128、64三种分频比。本电路接法是64分频,由3脚控制其是否接入电路,当MB501的8脚为+5V时,分频器工作。T89C51的10脚可以判断信号输入2通道电路的工作情况,从而来分辨信号输入端输入的是否是50MHZ的信号。2.3 开关电路图3-5开关电路图图3-5为开关电路,分频后的信号从MB50I(4脚)输出。经过CM隔直后送到与非门74HC00的10脚,也就是U4C。当J2接通其1脚的时候,这时门U4C打开,信号便能从10脚输入到8脚。信号从U4D的11脚输出,到达电子开关U4A的2脚,再从U4A的3脚输出送到分频74HC393;经过74HC393的256分频,最后送到AT89C51的INTO口。2.4 计数电路该频率计的计数电路是利用外扩的计数器74HC393和单片机AT89C51内含的16位计数器来构成多位计数器分别对待测信号计数的。在这里,将对待测信号计数的外部扩展的计数器74HC393的8脚引到AT89C51的TO端,再利用AT89C51的内部计数器即可构成多位计数器。图3-6为本频率计的计数电路。,vVCU4C-9-J÷=k-一±-t=v= -P; O IIxD pn IXD AJJPL PmTSSV,11m p;jDHO P) JI1P)3 XO P) IAxmXtz2W 7 W iO 1 3 4 7 P1P1MP1P1P1P1P1图3-6计数电路图数字频率计的计数电路的工作原理如下:计数一般是有时间的,取一段时间内脉冲的个数。比如Is,第一步先把AT89C51的12脚置0,再把12脚置1,打开电子开关。然后数据被送到74HC393分频,分频后的信号送到14脚TO口进行内部计数。时间到了IS就关闭电子开关,也就是把12脚INTO置0,13脚INTI置0单片机内部的计数器停止计数,继而对这段时间内脉冲个数进行保存。再读取,P0、P2口的状态,再把这数据和以前计数的数据相加,得到很精确的频率,再把这频率数据转换,送到LCD显示,然后89C51的13脚置1清除现有的数据信号,进行下一次数据采集。3. 5T89C51介绍如图3-7所示,是AT89C51的外部引脚图,其功能如下。(1) Vtr(40):电源+5V。(2) Vss(20):接地,也就是GND。(3) XTLl(19)和XTL2(18):振荡电路。单片机是一种时序电路,必须有脉冲信号才能工作,在它的内部有一个时钟产生电路,有两种振荡方式,一种是内部振荡方式,只要接上两个电容和一个晶振即可;另一种是外部振荡方式,采用外部振荡方式时,需在XTL2上加外部时钟信号。(4) PSEN(29):片外RoM选通信号,低电平有效。(5) ALE/PR0G(30):地址锁存信号输出端/EPROM编程脉冲输入端。(6) RST/VPD(9):复位信号输入端/备用电源输入端。(7) EA/VPP(31):内/外部RoM选择端。(8) PO口(39-32):双向I/O口。(9) Pl口(1-8):准双向通用I/O口。(10) P2口(21-28):准双向I/O口。(11) P3口(10-17):多用途口。在频率计电路当中,单片机AT89C51是核心元件,它控制着整个电路的运行,包括计数器的开启与关闭、定时器的开启与关闭、外部计数器的开启与关闭、高频信号分频、数据读入、数值转换以及数据显示都是由单片机来控制的。PI.O- I Pll - 2 P12- 3 PU- 4 P1.4- 5P1.5- 6P1.6 7 PI.7 8RST/喂一9 RXDP3.O- IO TXD/P3.I Il INTOP3.2 12 rr7P33 - 13TOT3.4- 14T!P3.5- ISWR/P3.6 16RDP37- 17XTAL2 18XTALl - 1940393837363580313480513389C51 32292827262524232221一心- P0.0-PO.1-PO.2-PO.3-P0.4-POSP0.6-PO.7一区/匕ale/ppoG-FSER P2.7-P2.6P2.5-P2.4-P2.3-P2.2P2.I-P2.0图3-8频率计显示电路图图3-7 AT89C51外部引脚图(12) 字频率计显示电路数字频率计的显示电路如图3-8所示,在CONI6后面接1602LCD液晶显示器来显示频率值。74HC393的计数结果被单片机的PO、P2口读入,与单片机内部计数值合到一起。再通过乘以16(2.OG档用到)、二进制到十进制转换处等处理后,送入图形液晶显示模块1602LCD中显示出来。由于1602液晶显示模块可以直接和51系列单片机进行接口,所以在设计该数字频率计时就直接将1602LCD接到了单片机的后面。在图3-8中,CONI6的3脚上接了一个Iok电位器PR”是用来调节液晶显示器的对比度的。当该电位器的旋钮直接和电源端相连时,显示器屏幕的对比度最弱,当其旋钮直接和地端相连时,显示器屏幕的对比度最高。液晶显示器的数据来源是单片机的Pl口,当单片机的Tl端口由高电平跳变成低电平时,液晶显示器开始执行命令,并最终显示出频率的数值。(13) 钟控制电路C19EAIOiiFVCCC17R34fII-7.8KIMTAT2i1Iiio30P592MC18kl30PGIob图3-9时钟控制电路图时钟控制电路如图3-9所示。制作频率计的关键点在于时基信号的准确性和稳定性,它决定频率计的计数精度。这里选用IL0592的晶振组成的电路来作为单片机AT89C51的时钟电路,由单片机用软件方法得到所需的门控信号。(14) 源电路频率计的电源电路如图3T0所示。在这个电源电路里,LM7805是核心芯片,该集成稳压芯片为三端器件:1脚为输入端,2脚为接地端,3脚为输出端,使用十分方便。普通的MCS-51单片机的工作电压是直流5V,而此频率计首先将输入的9V电压经过由四个二极管组成的全波整流器,使之变成9V的直流电,然后通过LM7805将9V的直流电稳压变成5V的直流电,提供给单片机。4系统软件设计(15) 统软件总述系统软件的设计主要是保证软件和硬件电路相结合,控制硬件正常的工作。对于频率计来说,就是控制频率计的硬件系统使其最终能较为准确的测出待测信号的频率。本课题频率计的系统软件的设计采用了模块化的结构方式,将各个功能分成独立模块,由系统的监控程序统一管理执行。本系统软件的设计主要分两部分:一部分是执行软件,主要完成各种实质性的功能,如测量、计算、显示、定时中断服务等;另一部分是监控软件,主要来协调各执行模块和操作者的关系,在系统软件中充当组织调度的角色。该频率计中主要元器件是单片机AT89C51,由它完成对待测信号频率的计数和结果传输等功能,外部还要有分频器、显示器等器件。被测信号首先要经过放大、整形,如果是高频信号还要由分频器进行分频,然后送入单片机的PO端口和P2端口并开始计数,分频器的分频系数由单片机来控制;计数、分频达到规定的精度后结束计数,然后调用显示子程序,显示结果。该频率计的总体程序流程图如图4-1所示。图4-1程序总体流程图(16) 示器初始化设计图4-2显示初始化流程图显示器初始化程序流程图如图4-2所示。在测量频率之前,首先要清屏,之后将单片机的读写端同时设置为低电平,因为单片机的读写端控制着液晶显示器的4脚和5脚,当液晶显示器的4脚和5脚同时为低电平时,液晶显示器可以写入指令或显示地址。其后就要判断频率计显示器是否处于“忙”状态。如果显示器处于“忙”状态,则要循环等待;如果显示器处于“闲”状态,则可以对显示器进行操作。另外,在每次单片机的PI口写入控制字后,都要判断显示器是否处于“忙”状态。在判断液晶显示器的状态后,要将其使能端设置为高电平,为后面的程序做铺垫。因为只有当该使能端由高电平跳变到低电平时,液晶模块才可以执行命令。(17) 数子程序YY图4-3计数子程序流程图输入信号经过整形输入到74HC393中,采用矩形波下降沿开始计数,上升沿停止计数的方来计数,刚好对应于正弦波一个完整周期,再输入到AT89C51单片机的PO、P2口。其程序流程图如图4-3所示。该频率计利用定时器TO来完成计数功能,其参数选定原则是:(1)初值:TLO=OOH,THO=OOH,50HZ左右的信号,大约相当于104个机器周期,用16位计数器即可满足,不会产生溢出。(2)TMoD的选择:定时器TO采用方式1,由于后面要用到TI作为定时器,也采用方式1,故TMOD选取为IlH0(3)TCON的选择:这里不需要考虑中断,故只选择控制TRo就可以了,开始计数时,TRO置“1”,停止计数时清“0”。(18) 制转换子程序设计图4-4二进制数转换为十进制数流程图二进制转换为十进制流程图如图4-4所示。在计算机中,任何数据都以二进制形式出现,并在计算机中处理的。但是通过外部设备与计算机交换数据采用的是其他形式的数据,由于频率计的显示部分是用的1602LCD液晶显示器,它不可以直接显示二进制数据,所以单片机要把PO、P2口读入的二进制数据转换为可以被显示器识别并显示的十进制数据。4. 5显示子程序设计图4-51602LCD显示程序流程图显示子程序流程图如图4-5所示。数据由单片机的P0、P2口读入,由单片机的Pl口送出,被液晶显示器接收,显示器工作状态由单片机的P3口控制,P3.7口控晶显示器的4脚,4脚为RS,是寄存器选择,高电平时选择数据寄存器,低电平时间选择指令寄存器。P3.6脚控制显示器的5脚,5脚为RW,是读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时间可以写入指令或者显示地址,RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。P3.5脚控制显示器的6脚,6脚为E端,是使能端,当E端高电平跳变成低电平时,液晶模块执行命令。在液晶显示器开始工作之前要先初始化系统时钟,再初始化I/O端口,最后初始化1602LCD模块。在数据从单片机读入后,先将数据显示在液晶模块的第一行,随后切换到第二行显示。5结论本课题设计的频率计采用单片机AT89C51智能化控制,充分利用单片机内部硬件资源和软件功能,大大减少了硬件电路的复杂性,使电路结构更加简洁,有利于提高频率计的工作可靠性。另外,用AT89C51单片机替换传统的频率计,硬件结构简单,便于升级,能充分改善原有设备的性能,提高测试精度。参考文献1胡汉才,单片机原理及其接口技术M.清华大学出版社,1997-3.35-412毛谦敏,吴洪谭.单片机原理及应用系统设计.北京:国防工业出版社,2005:1633万福军.单片微机原理系统设计与应用.合肥:中国科学技术大学出版社,2001:2014涂时亮,张友德。单片微机MCS-51用户手册。上海:复旦大学出版社,1990:1675李朝青.单片机原理及接口技术.第二版.北京:北京航空航天大学出版社,1996:2236高海生,杨文涣.单片机应用技术大全.成都:西南交通大学出版社,1996:193附录A:电路图附录B:频率计总程序QOOOO:MOVSP,#6011;堆栈设置Q0003:SETBP3.3;打开定时器开关SETBP3.5;启动定时器MovP1,#OlH;清屏,PI口接1602的DB7-DB0,Pl写入控制字ACALLQOlDC;等代LCD不忙MOVP1,#OCH;显示器开、光标开、闪烁开,即为Pl写入控制字ACALLQOlDCMOVRO,#EFHQ0013:NOP;延时DJNZRO,Q0013;延时Ro个周期MOVTMOD,#05H;定时器方式一,启动了ToQ0019:MOVP0,#FFH;Po置高MOVP2,#FFH;P0P2端口赋值,P2置高电平MOVTLO,#00H;清计数器MOVTHO,#00HCLRP3.3;INTl=O有效SETBTRO;启动计数器0SETBP3.2;开计数开关MOVRO,#0AHMOVRl,#32HMOVR2,#50HMOVR3,#02HNOP;延时NOPNOPNOPNOPQ0038:MOVRl,#32H;延时R0*32H*50H*02HNOPNOPNOPNOPNOPNOPQ0040:MOVR2,#50HQ0042:MOVR3,#02HQ0044:NOPNOPNOPNOPNOPNOPNOPDJNZR3,Q0044DJNZR2,Q0042DJNZRl,Q0040DJNZRO,Q0038CLRP3.2;INTO=。,关闭计数器开关,停止计数值更新NOPNOPNOPCLRTRO;关闭计数器,在R0*32H*50H*02H延时内计数;读入计数值MOV20H,PO;读Po口数值MOV21H,P2;读P2口数值MOV22H,TLO;取计数值低位MOV23H,THO;取计数值高位SETBP3.3;INTl=I,打开定时器开关;多(四)字节二转十,入口RO为二进制低位字节地址指针,R7为字节数,出口Rl为BCD码结果低位字节地址指针MOVR0,#20HMOVRl,#30HMOVR7,#04HMOVA,ROMOVR5,AMOVA,RlMOVR6,AMOVA,R7MOVR3,AINCR3CLRA;累加器清零Q0077:MOVR1,AINCRlDJNZR3,Q0077MOVA,R7MOVB,#08H;将立即数8送入B中MULAB;A、B相乘,结果送入A中,A=32MOVR3,AQ0081:MOVA,R5MOVRO,AMOVA,R7MOVR2,ACLRCQ0086:MOVA,R0RLCAMOVRO,AINCRODJNZR2,Q0086MOVA,R6MOVRl,AMOVA,R7MOVR2,AINCR2Q0091:MOVA,R1;得到低位数据DDCA,R1;累加DA;十进制调整MOVR1,A;保存数据INCRl;进一步循环得到第二位、第三位、第四位数据等DJNZR2,Q0091DJNZR3,Q0081MOVR0,#30HMOVRl,#24HQ009E:MOVA,R0ANLA,#OFHORLA,#30HMOVR1,AMOVA,R0ANLA,#FOHRLARLARLARLAORLA,#30HINCRlMOVR1,AINCROINCRlCJNERO,#36H,Q009E;从高往低判断,不是0就开始显示MOV2EH,#20HMOVRl,#2DHCJNER1,#3OH,Q00F4MOVR1,#2OHDECRlCJNER1,#3OH,Q00F4MOVR1,#20HDECRlCJNER1,#3OH,Q00F4MOVR1,#20HDECRlCJNER1,#30H,Q00F4MOVR1,#20HDECRlCJNER1,#3OH,QOl12MOVR1,#20HDECRlCJNER1,#3OH,QOl12MOVR1,#20HDECRlCJNER1,#3OH,QOl12MOVR1,#20HDECRlCJNER1,#3OH,QO130CJNER1,#3OH,QO130MOVR1,#20HDECRlCJNER1,#3OH,QO130AJMPQ016FQ00F4:MOVRO,#23HMOVR0,#4DHDECROMOVR0,#48HDECROMOVR0,#7AHDECROMOVR0,#20HMOVA,2CHMOV2DH,AMOVA,2BHMOV2CH,AMOVA,2AHMOV2BH,AMOV2AH,#2EHAJMPQOl3DQ0112:MOVRO,#23HMOVR0,#4BHDECROMOVR0,#48HDECROMOVR0,#7AHDECROMOV,29HMOV2H,MOV,28HMOV29H,MOVA,27HMOV28H,AMOV27H,#2EHJMPQOl3DQ0130:MOVRO,#23HMOVR0,#48HDECROMOVR0,#7AHDECROMOVR0,#20HDECROMOVR0,#20HQ013D:MOV10H,#53HMOV11H,#49HMOV12H,#47HMOV13H,#4EHMOV14H,#4IHMOV15H,#4CHMOV16H,#20HMOV17H,#46HMOV18H,#52HMOV19H,#45HMOV1AH,#51HMOV1BH,#55HMOV1DH,#4EHMOV1EH,#43HMOV1FH,#59HAJMPQ017Q016F:MOV1OH,#4EHMOV11H,#4FHMOV12H,#20HMOV13H,#49HMOV14H,#4EHMOV15H,#50HMOV16H,#55HMOV17H,#54HMOV18H,#20HMOV19H,#53HMOV1AH,#49HMOV1BH,#47HMOV1CH,#4EHMOV1DH,#4IHMOV1EH,#4CHMOV1FH,#2IHMOVRO,#20HQOlAl:MOV©RO,#20HINCROCJNERO,#30H,QOlAlQ01A7:ACALLQOlABAJMPQ0019QOlAB:M0VR0,#10H;显示第一行MOVPl,#38H;8位2行5x7点阵ACALLQOlDCMOVPl,#0611;文字不动,光标自动右移ACALLQOlDCMOVP1,#80H;写入显示起始地址(第一行第一个位置)ACALLQOlDCQOlBC:MOVP1,RO;第一行第N个位置ACALLQ01E7INCROCJNERO,#20H,QOlBC:显示第二行MOVPl,#04H;文字不动,光标自动左移ACALLQOlDCMOVPl,#3CH;8位2行5x10点阵ACALLQOlDCMOVP1,#CEH;写入显示起始地址(第二行第十五个位置)ACALLQOlDCQ01D3:MOVP1,RO;第二行第15个位置ACALLQ01E7INCROCJNERO,#2EH,Q01D3RETQOlDC:CLRP3.7;写入控制命令的子程序CLRP3.6;P3.7和P3.6同时为低电平时,显示器可以显示地址或写入指令CLRP3.5;P3.5从高电平跳变到低电平时,显示器可以执行命令(P3.5脚和显示器的6脚相连)ACALLQ01F4SETBP3.5;将显示器的6设置为高电平RETQ01E7:CLRP3.7;显示一个字符的子程序,P3.7低电平时,显示器选择指令寄存器SETBP3.7;P3.7高电平时,显示器选择数据寄存器CLRP3.6;P3.6为低电平时,显示器可以进行读操作CLRP3.5;ACALLQ01F4RETQ01F4:MoVP1,#FFH;判断液晶显示器是否忙的子程序NOPRETEND

    注意事项

    本文(单片机课程设计基于89C51的数字频率计设计.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开