版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 PAGE16 / NUMPAGES16基于单片机的数字频率计的设计摘要本设计以AT89S52单片机为核心充分利用硬件资源设计的一种频率计,该频率计首先将被测信号放大整形处理,变成满足单片机I/O口接受的TTL/ CMOS 兼容信号从单片机的T1输入口输入直接累加脉冲数,将单片机部定时器定时为1S,这时累加的脉冲数即为被测信号的频率。最后经单片机处理送至lcd液晶显示屏显示。引言41.系统概述51.1数字频率计概述51.2频率测量仪的设计思路与频率的计算51.3基本设计原理52.数字频率计(低频)的硬件结构设计52.1 系统硬件的构成52.2 AT89S52单片机与其引脚说明62.3 信号调理
2、与放大整形模块72.3.1工作原理82.3.2信号放大仿真图82.3.3信号转换成方波82.3.4 LF353双运算放大器简介82.4 显示模块92.4.11602ALCD与单片机的接法 92.4.2 1602ALCD基本技术103.软件设计123.1 系统工作流程图123.1.1 T0的1s定时133.1.2 T1的计数原理133.2 软件工作原理143.3 软件处理方法144.实验结果与分析154.1实验数据154.2实验结果分析15结束语 15致词 15参考文献15程序附录 17引言频率测量在科技研究和实际应用中的作用日益重要。传统的频率计通采用组合电路和时序电路等大量的硬件电路构成,产
3、品不但体积较大,运行速度慢,而且测量低频信号时不宜直接使用。频率信号抗干扰性强、易于传输 ,可以获得较高的测量精度。同时 ,频率测量方法的优化也越来越受到重视.并采用单片机和相关硬软件实现。AT89S52系列单片机具有体积小,功能强,性能价格比较高等特点,因此被广泛应用于工业控制和智能化仪器,仪表等领域。此频率计以AT89S52单片机为核心,具有性能优良,精度高,可靠性好等特点。以AT89S52单片机为控制器件的频率测量方法,并用C语言进行设计,采用单片机智能控制,结合外围电子电路。最终实现数字频率计的设计方案,根据频率计的特点,可广泛应用于各种测试场所。在基础理论和专业技术基础上,通过对数字
4、频率计的设计,用十进制数字来显示被测信号频率的测量装置。以精确迅速的特点测量信号频率,在本设计在实践理论上锻炼提高了自己的综合运用知识水平,为以后的开发与科研工作打下基础。1系统概述1.1数字频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号与其他各种单位时间变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。 本数字频率计将采用定时、计数的方法测量频率,采用一个1602A LCD显示器动态显示6
5、位数。测量围从0Hz65535Hz(此测量围为计数器的最大计数,可根据实际需要进行扩展,在1.3小节方案选择有介绍如何扩展)的正弦波、方波、三角波。用单片机实现自动测量功能。1.2 基本设计原理基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量频率的方法直接对正弦波、方波、三角波的频率进行自动的测量。所谓“频率”,就是周期性信号在单位时间(1s)变化的次数。若在一定时间间隔T测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率f。利用单片机的部定时器作为定时时间周期,若其周期为1s,则输入的脉
6、冲信号持续计数时间亦准确地等于1s,所计数的脉冲个数即为被测信号的频率。11.3 方案选择用单片机设计频率计通常采用两种办法,第一种方法是使用单片机自带的计数器对输入脉冲进行计数;第二种方法是单片机外部使用计数器对脉冲信号进行计数,计数值再由单片机读取。第一种方法的好处是设计出的频率计系统结构和程序编写简单,成本低廉,不需要外部计数器,直接利用所给的单片机最小系统就可以实现。这种方法的缺陷是受限于单片机计数的晶振频率,输入的时钟频率通常是单片机晶振频率的几分之一甚至是几十分之一,在本次设计使用的98C51单片机,由于检测一个由“1”到“0”的跳变需要两个机器周期,前一个机器周期测出“1”,后一
7、个周期测出“0”。故输入时钟信号的最高频率不得超过单片机晶振频率的二十四分之一。第二种方法的好处是输入的时钟信号频率可以不受单片机晶振频率的限制,可以对相对较高频率进行测量,但缺点是成本比第一种方法高,设计出来的系统结构和程序也比较复杂。2由于成本有限,本次设计中采用第一种方法,因此输入的时钟信号最高频率不得高于11.0592MHz/24=460.8KHz。对外部脉冲的占空比无特殊要求。根据频率检测的原理,很容易想到利用51单片机的T0、T1两个定时/计数器,一个用来定时,另一个用来计数,两者均应该工作在中断方式,一个中断用于1s时间的中断处理,一个中断用于对频率脉冲的计数溢出处理,(对另一个
8、计数单元加一),此方法可以弥补计数器最多只能计数65536的不足。将计数中断弥补计数器最高计数65536的不足作为本设计的扩展,故本设计最终选择采用第一种方法并且只使用计数器的最多计数65536。2数字频率计(低频)的硬件结构设计2.1 系统硬件的构成本频率计的数据采集系统主要元器件是单片机AT89S52,由它完成对待测信号频率的计数、计数处理、结果显示等功能,外部还要有信号处理、LCD显示器等器件。具体可分为以下几个模块:放大整形模块、单片机系统、LCD显示模块。各模块关系图如图2所示:3LCD显示基于51单片机的数字频率计日期:2008-01-11来源:东哥单片机学习网( picavr )
9、 佚名字体: HYPERLINK javascript:ContentSize(16)大 HYPERLINK javascript:ContentSize(0)中 HYPERLINK javascript:ContentSize(12)小 题 目: 基于51单片机的数字频率计 专 业: 计算机科学与技术(专升本) 班 级: 056计算机科学与技术 姓 名: 蔡永 学号: 05191131 指导老师: 余水宝 成 绩: ( 2006.6 ) 目 录 第1节 引言 21.1 数字频率计概述21.2 频率测量仪的设计思路与频率的计算21.3 基本设计原理3第2节 数字频率计(低频)的硬件结构设计4
10、2.1系统硬件的构成42.2系统工作原理图42.3AT89C51单片机与其引脚说明 52.4信号调理与放大整形模块72.5时基信号产生电路72.6显示模块8第3节 软件设计123.1 定时计数 123.2 量程转换 123.3 BCD转换123.4 LCD显示12第4节 结束语 13参考文献 14附录 汇编源程序代码15 基于51单片机的数字频率计数理与信息工程学院 计算机专升本 056班 蔡永指导老师 余水宝 第1节 引言本应用系统设计的目的是通过在“单片机原理与应用”课堂上学习的知识,以与查阅资料,培养一种自学的能力。并且引导一种创新的思维,把学到的知识应用到日常生活当中。在设计的过程中,
11、不断的学习,思考和同学间的相互讨论,运用科学的分析问题的方法解决遇到的困难,掌握单片机系统一般的开发流程,学会对常见问题的处理方法,积累设计系统的经验,充分发挥教学与实践的结合。全能提高个人系统开发的综合能力,开拓了思维,为今后能在相应工作岗位上的工作打下了坚实的基础。 1.1数字频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号与其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率
12、计。 本数字频率计将采用定时、计数的方法测量频率,采用一个1602A LCD显示器动态显示6位数。测量范围从1Hz10kHz的正弦波、方波、三角波,时基宽度为1us,10us,100us,1ms。用单片机实现自动测量功能。基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。1.2频率测量仪的设计思路与频率的计算 1.2频率测量仪的设计思路与频率的计算频率测量仪的设计思路主要是:对信号分频,测量一个或几个被测量信号周期中已知标准频率信号的周期个数,进而测量出该信号频率的大小,其原理如右图1所示。若被测量信号的周期为,分频数m
13、1,分频后信号的周期为T,则:T=m1Tx 。由图可知: T=NTo (注:To为标准信号的周期,所以T为分频后信号的周期,则可以算出被测量信号的频率f。)由于单片机系统的标准频率比较稳定,而是系统标准信号频率的误差,通常情况下很小;而系统的量化误差小于1,所以由式T=NTo可知,频率测量的误差主要取决于N值的大小,N值越大,误差越小,测量的精度越高。 1.3 基本设计原理 基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。所谓“频率”,就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔T内测得这个周期性信号
14、的重复变化次数N,则其频率可表示为f=N/T。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率fx。时间基准信号发生器提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等于1s。闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。秒信号结束时闸门关闭,计数器停止计数。由于计数器计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。 第2节数字频率计(低频)的硬件结构设计 2.1 系统硬件的构成 本频率计的数据采集系统主要元器件是单片机AT89C51,由它完成对待测信号频率的计数和结果显示等功
15、能,外部还要有分频器、显示器等器件。可分为以下几个模块:放大整形模块、秒脉冲产生模块、换档模拟转换模块、单片机系统、LCD显示模块。各模块关系图如图2所示: 2.2 系统工作原理图 该系统工作的总原理图如图3所示: 图3 数字频率计系统工作原理图2.3 AT89C51单片机与其引脚说明89C51是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数器, 一个5中断源两个优先级的中断结构,一个双工的串行口, 片上震荡器和时钟电路。引脚说明:VCC:电源电压GND:地P0口:P0口是一组8位漏极开
16、路型双向I/O口,作为输出口用时,每个引脚能驱动8个TTL逻辑门电路。当对0端口写入1时,可以作为高阻抗输入端使用。当P0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。在这种模式下,P0口具有内部上拉电阻。在EPROM编程时,P0口接收指令字节,同时输出指令字节在程序校验时。程序校验时需要外接上拉电阻。P1口:P1口是一带有内部上拉电阻的8位双向I/O口。P1口的输出缓冲能接受或输出4个TTL逻辑门电路。当对P1口写1时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。当作为输入端使用时,P1口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流(IIL
17、)。P2口:P2是一带有内部上拉电阻的8位双向的I/O端口。P2口的输出缓冲能驱动4个TTL逻辑门电路。当向P2口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(IIL)。P2口在访问外部程序存储器或16位地址的外部数据存储器(例如MOVX DPTR)时,P2口送出高8位地址数据。在这种情况下,P2口使用强大的内部上拉电阻功能当输出1时。当利用8位地址线访问外部数据存储器时(例MOVX R1),P2口输出特殊功能寄存器的内容。当EPROM编程或校验时,P2口同时接收高8位地址和一些控制信号。P3口:P3是一带有
18、内部上拉电阻的8位双向的I/O端口。P3口的输出缓冲能驱动4个TTL逻辑门电路。当向P3口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(IIL)。P3口同时具有AT89C51的多种特殊功能,具体如下表1所示:端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD(串行输出口)P3.2 (外部中断0)P3.3(外部中断1)P3.4T0(定时器0)P3.5T1(定时器1)P3.6(外部数据存储器写选通)P3.7(外部数据存储器都选通)表1 P3口的第二功能 RST:复位输入。当振荡器工作时,RST引脚出现两
19、个机器周期的高电平将使单片机复位。ALE/ :当访问外部存储器时,地址锁存允许是一输出脉冲,用以锁存地址的低8位字节。当在Flash编程时还可以作为编程脉冲输出( )。一般情况下,ALE是以晶振频率的1/6输出,可以用作外部时钟或定时目的。但也要注意,每当访问外部数据存储器时将跳过一个ALE脉冲。 :程序存储允许时外部程序存储器的读选通信号。当AT89C52执行外部程序存储器的指令时,每个机器周期 两次有效,除了当访问外部数据存储器时, 将跳过两个信号。 /VPP:外部访问允许。为了使单片机能够有效的传送外部数据存储器从0000H到FFFH单元的指令, 必须同GND相连接。需要主要的是,如果加
20、密位1被编程,复位时EA端会自动内部锁存。当执行内部编程指令时, 应该接到VCC端。XTAL1:振荡器反相放大器以与内部时钟电路的输入端。XTAL2:振荡器反相放大器的输出端。在本次设计中,采用89C51作为CPU处理器,充分利用其硬件资源,结合D触发器CD4013,分频器CD4060,模拟转换开关CD4051,计数器74LS90等数字处理芯片,主要控制两大硬件模块,量程切换以与显示模块。下面还将详细说明。2.4 信号调理与放大整形模块 放大整形系统包括衰减器、跟随器、放大器、施密特触发器。它将正弦输入信号Vx整形成同频率方波Vo,幅值过大的被测信号经过分压器分压送入后级放大器,以避免波形失真
21、。由运算放大器构成的射级跟随器起阻抗变换作用,使输入阻抗提高。同相输入的运算放大器的放大倍数为(R1+R2)/R1,改变R1的大小可以改变放大倍数。系统的整形电路由施密特触发器组成,整形后的方波送到闸门以便计数。由于输入的信号幅度是不确定、可能很大也有可能很小,这样对于输入信号的测量就不方便了,过大可能会把器件烧毁,过小可能器件检测不到,所以在设计中采用了这个信号调理电路对输入的波形进行阻抗变换、放大限幅和整形,信号调理部分电路具体实现电路原理图和参数如下图4所示: 2.5 时基信号产生电路:CD4013双上升沿D触发器 ,引脚与功能见如下图5:CD4013 由两个一样的、相互独立的数据型触发
22、器构成。每个触发器有独立的数据置位复位时钟输入和 Q与Q非输出。此器件可用作移位寄存器,且通过将Q非输出连接到数据输入,可用作计数器和触发器。在时钟上升沿触发时,加在D 输入端的逻辑电平传送到Q输出端。置位和复位或复位线上的高电平完成。 图5 CD4013芯片引脚用功能图 CD406014位二进制串行计数器,引脚与功能见如下图6: CD4060 由一震荡器和14极二进制串行计数器位组成,震荡器的结构可以是RC或晶振电路。CR为高电平时,计数器清零且振荡器使用无效,所有的计数器位均为主从触发器 CP1非(和 CP0)的下降沿计数器以二进制进行计数,在时钟脉冲线上使用施密特触发器对时钟上升和下降时
23、间无限制。 时基信号的产生原理:本电路采用32768HZ晶体震荡器,利用CD4060芯片经过14级分频得到2HZ的信号(32768/214),在经过CD4013双D触发器经过二分频得到0.5HZ的方波,即输出秒脉冲信号使单片机进行计数。 图七 秒脉冲产生电路原理图 2.6 显示模块1602基本技术:1)、主要功能A、 40通道点阵LCD 驱动;B、 可选择当作行驱动或列驱动;C、 输入/输出信号:输出,能产生202个LCD驱动波形;输入,接受控制器送出的串行数据和控制信号,偏压(V1V6);D、 通过单片机控制将所测的频率信号读数显示出来。 2)、技术参数 2.1)极限参数表名 称符 号标 准
24、 值单 位MINTYPEMAX电路电源VDD - VSS-0.3 7.0VLCD驱动电压VDD - VEEVDD - 13.5 VDD + 0.3V输入电压VIN-0.3 VDD + 0.3V静电电压 -100V工作温度 -20 +70C储存温度 -30 +80C 2.2) 电参数表名 称符 号测 试 条 件标 准 值单位MINTYPEMAX输入高电平VIH-2.2 VDDV输入低电平VIL-0.3 0.6V输出高电平VOHIOH = 0.2mA2.4 -V输出低电平VOLIOL = 1.2mA- 0.4V工作电流IDDVDD = 5.0V 2.0 mA 液晶驱动电压 VDD- VEETa =
25、 0C 4.9 VTa = 25C 4.7 Ta = 50C 4.5 3)、时序特性表项 目符 号测试条件标 准 值单位MINTYPEMAX允许时间周期TCYCE 5.1a 5.1b1000 ns允许脉冲宽度,高电平PWEH450-ns允许上升和下降时间tEr tEf-25ns地址建立时间tAS140-ns数据延迟时间tDDR-320ns数据建立时间tDSW195-ns数据保持时间tH10-nsDATA HOLD TIMEtDHR20-ns地址保持时间tAH10-ns 4)、引脚和指令功能4.1)模块引脚功能表引 线 号符 号名 称功 能1Vss接地0V2VDD电路电源5V10%3VEE液晶驱
26、动电压保证VDD-VEE=4.55V电压差4RS寄存器选择信号H:数据寄存器 L:指令寄存器5R/W读/写信号H:读 L:写6E片选信号下降沿触发,锁存数据7|14DB0|DB7 数据线 数据传输 4.2)寄存器选择功能表RSR/W操 作00指令寄存器(IR)写入01忙标志和地址计数器读出10数据寄存器(DR)写入11数据寄存器读出(注:忙标志为1时,表明正在进行内部操作,此时不能输入指令或数据,要等内部操作结束,即忙标志为0时。)4.3) 指令功能 格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0共11种指令:清除,返回,输入方式设置,显示开关,控制,移位,
27、功能设置,CGRAM地址设置,DDRAM地址设置,读忙标志,写数据到CG/DDRAM,读数据由CG/DDRAM。 5)、显示位与DD RAM 地址的对应关系 显 示 位 序 号1 2 3 4 5 40 DD RAM 地 址(HEX)第 一 行00 01 02 03 04 . 27第 二 行40 41 42 43 44 . 67 6)、初始化方法用户所编的显示程序,开始必须进行初始化,否则模块无法正常显示,下面介绍两种初始化方法;6.1利用内部复位电路进行初始化下面指令是在初始化过程中执行的。(1) 清屏(DISPLAY CLEAR);(2) 功能设置(FUNCTION SET);DL = 1:
28、 8Bit 接口数据;N = 0: 1行显示; F = 0:57dot字形;(3) 显示开/关控制(DISPLAY ON/OFF CONTROL)D = 0: 显示关; C = 0: 光标关; B = 0: 消隐关(4) 输入方式设置(ENTRY MODE SET )I/D = 1:(增量): S = 0: 无移位: 6.2) 软件复位 如果电路电源不能满足复位电路的要求的话,那么初始化就要用软件来实现,过程如下: 八位接口初始化流程图 电 源 开 VDD 上升到4.5V后等待15 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 等待4.1
29、ms RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 等待100us RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 N F 检查忙标志或延时40us RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 1 0 检查忙标志或延时40us RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0
30、0 0 0 1 检查忙标志或延时40 us RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 0 0 0 1 I/D S 检查忙标志或延时1.64 初 始 化 结 束检查忙标志或延时40 第3节 软件设计 主要能过编写软件来控制硬件完成以下各模块的功能:3.1定时读数3.2量程转换3.3 BCD转换3.4LCD显示的功能单片机当C/T=1时为计数方式,多路开关与定时器的外部引脚连通,外部计数脉冲由引脚输入。当外部信号由1至0跳变时,计数器加1,此时T0成为外部事件的计数器。由于确认一次由1至0的跳变要用24个振荡器周期,所以计数器的计数频率为单片机内
31、部计数器频率的1/24。当CT=0时为定时方式,对单片机内部计数器进行m2分频后,计数器的实际计数频率为单片机内部频率凡的1/m2,当GATE=0时,反相器输出为1,或门输出为1,打开与门,使定时器的启动仅受TRO端信号电平的控制。在此种情况下,INT0引脚的电平变化对或门不起作用。TRO=1时接通控制开关,计数脉冲加到计数器上,每来一个计数脉冲,计数器加1,只有当TRO=0时,控制开关断开,计数器停止计数。当GATA=0时,若TRO=1,或门、与门全部打开,外部信号电平通过INTO引脚直接控制定时器的启动和关闭。输人高电平时允许计数,否则停止计数。根据定时器的结构原理,若我们将GATE位、T
32、R0均设为1,INT0端输人被测频率信号,当被测信号的高电平到来时,开始计数;当被测信号的低电平到来时,计数器停止计数,此时TL0、TH0的数据就是相应的N值。 结 束 语 数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,会被经常使用到。通过本次课程的设计,不但加深我对在课程上所学到的单片机理论知识的认识和理解,重新让自己认识到了这门学科的在应用方面的广阔前景,并且通过知识与应用于实践的结合更加丰富了自己的知识。扩展了知识面,不但掌握了本专业的相关知识,而且对其他专业的知
33、识也有所了解,而且较系统的掌握单片机应用系统的开发过程,因而自身的综合素质有了全面的提高。经过这次一个较完整的产品设计和制作过程,对于认识到自己在知识方面存在的不足,明确今后的学习方向是非常有益的,为将来的的就业提前打了下坚实的基础。在设计过程中,得到了我的指导老师的悉心指导与帮助,还有其他老师和同学的大力支持和协助,在此一并表示衷心的感谢。 参考文献1李光飞 ,楼苗然主编.51系列单片机.:航空航天大学,20032黄正瑾编著.CPLD系统设计技术入门与应用. : 电子工业, 20023谢自美编著.电子线路设计实验测试.华中理工大学,20024陈永甫编著.电子电路智能化设计.实例与应用.:电子
34、工业出版,2002.85康华光主编.电子技术 基础(第四版).:高等教育,1999附录 汇编源程序代码 RS BIT P2.0 ;P3.4脚接RS端 RW BIT P2.1 ;P3.5脚接R_W端 E BIT P2.2 ;P3.3脚接E端 ORG 0000H LJMP MAIN ORG 002BH LJMP IT1MAIN: MOV P0,#01H ;清除屏幕 ACALL ENABLE MOV P0,#01H ;清除屏幕 ACALL ENABLE MOV P0,#01H ;清除屏幕 ACALL ENABLE MOV P0,#38H ;8位点阵方式 ACALL ENABLE MOV P0,#0c
35、H ;开显示 ACALL ENABLE MOV P0,#06H ;移动光标 ACALL ENABLE MOV P0,#80H ;显示位置 ACALL ENABLE mov p0,#80h ;第一行的位置 call enable mov dptr,#date call write3 mov p0,#0c0h ;第二行的位置 call enable MOV SP,#7FH CLR CY mov r6,#00 mov r2,#00 MOV R3,#00 MOV TMOD,#15H MOV TL0,#00H MOV TH0,#00H mov th1,#high(65536-50000) mov tl1
36、,#low(65536-50000) ;setb ET1cha1: SETB TR1 ;LCALL XIANSHI SETB TR0 mov 27h,#00h CLR C MOV C,P1.6 MOV 27H.0,C CLR C MOV C,P1.7 MOV 27H.1,C mov a,27h ANL A,#03H MOV 17H,ACHA: C TF1,JINWEI ;益处进位 JMP CHAJINWEI:CLR TR1 mov th1,#high(65536-50000) mov tl1,#low(65536-50000) SETB TR1 INC R3 MOV A,R3 ;JNB P3.
37、2,$ CJNE A,#20,CHA CLR TR0 CLR TR1 MOV R3,#00 MOV R2,TH0 MOV R6,TL0 lcall zhuan LCALL write1 MOV TL0,#00H MOV TH0,#00H jmp cha1ZHUAN:MOV A,R2CLR CMOV 20H,#00HMOV 21H,#00HMOV 22H,#00HMOV 24H,#00HMOV 25H,#00HMOV R3,#10HNEXT: RLC AMOV R2,AMOV A,20HADDC A,20HDA AMOV 20H,AMOV A,21HADDC A,21HDA AMOV 21H,A
38、MOV A,22HADDC A,22HDA AMOV 22H,AMOV A,R2DJNZ R3,NEXTMOV A,R6clr cMOV R3,#08HNEXT1: RLC AMOV R6,AMOV A,24HADDC A,24HDA AMOV 24H,AMOV A,25HADDC A,25HDA AMOV 25H,Amov a,r6DJNZ R3,NEXT1clr cmov a,24haddc a,20hda amov 20h,amov a,25haddc a,21hda amov 21h,amov a,22haddc a,#00hda amov 22h,amov a,22hanl a,#0
39、fhmov 31h,amov a,22hanl a,#0f0hswap amov 30h,amov a,21hanl a,#0f0hswap amov 32h,amov a,21hanl a,#0fhmov 33h,amov a,20hanl a,#0f0hswap amov 34h,amov a,20hanl a,#0fhmov 35h,aret;*;LCD显示;* ENABLE: CLR RS CLR RW CLR E ACALL DELAY SETB E RET write1: ;写数据 MOV 10H,#00H MOV 11H,#00H MOV 12H,#00H MOV 13H,#00
40、H MOV 14H,#00H MOV 15H,#00H MOV 16H,#00H mov p0,#0ch call enable mov p0,#0c0h ;第二行的位置 call enable MOV A,17H XRL A,#02H JNZ XIAN1 MOV 40H,#00H MOV 41H,#00H MOV 42H,#00H MOV 43H,30H MOV 44H,31H MOV 45H,32H JMP XIAN XIAN1:MOV A,17H XRL A,#01H JNZ XIAN2 MOV 40H,#00H MOV 41H,#00H MOV 42H,30H MOV 43H,31H
41、MOV 44H,32H MOV 45H,33H JMP XIAN XIAN2:MOV A,17H XRL A,#00H JNZ XIAN3 MOV 40H,#00H MOV 41H,30H MOV 42H,31H MOV 43H,32H MOV 44H,33H MOV 45H,34H JMP XIAN XIAN3:MOV A,17H XRL A,#03H JNZ XIAN MOV 40H,30H MOV 41H,31H MOV 42H,32H MOV 43H,33H MOV 44H,34H MOV 45H,35H XIAN:mov r0,#40h mov a, r0 JZ L20 MOV 10
42、H,#0FFH MOV 15H,#0FFH mov dptr,#date1 movc a,a+dptr call write2 L20:INC R0 MOV A, 10H CJNE A, #00H,PP mov a, r0 JZ L21 PP: MOV 11H,#0FFH MOV 15H,#0FFH mov a, r0 mov dptr,#date1 movc a,a+dptr call write2 L21:INC R0 MOV A, 11H CJNE A, #00H,PP2 mov a, r0 JZ L22 PP2: MOV 12H,#0FFH MOV 15H,#0FFH mov a, r
43、0 mov dptr,#date1 movc a,a+dptr call write2 MOV A, 15H CJNE A,#0FFH,L22 MOV A,#00H mov dptr,#XIAOSHUDIAN movc a,a+dptr call write2 L22: INC R0 MOV A, 12H CJNE A, #00H,PP3 mov a, r0 JZ L23 PP3: MOV 13H,#0FFH mov a, r0 mov dptr,#date1 movc a,a+dptr call write2 L23:INC R0 MOV A, 13H CJNE A, #00H,PP4 mo
44、v a, r0 JZ L24 PP4: MOV 14H,#0FFH mov a, r0 mov dptr,#date1 movc a,a+dptr call write2 L24:INC R0 mov a, r0 mov dptr,#date1 movc a,a+dptr call write2 MOV A,15H CJNE A, #00H,KHZ MOV A,#00H MOV dptr,#DANWEI1 JMP QUSHU KHZ:MOV dptr,#DANWEI2 QUSHU:movc a,a+dptr call write3 mov r5,#4 l3:mov a,#20h call wr
45、ite2 djnz r5,l3 ret write2: mov p0, a setb rs CLR rw clr e call delay setb e ret write3: mov r1,#00h ;写数据 a2: mov a, r1 movc a, a+dptr call write2 inc r1 cjne a,#00h,a2 ret delay: mov r7, #255 d1: mov r6, #255 d2: djnz r6, d2 djnz r7, d1 ret date: db the frequency is,00h date1: db 30h,31h,32h,33h,34
46、h,35h,36h,37h,38h,39h DANWEI1: DB HZ ,00h DANWEI2: DB KHZ ,00h XIAOSHUDIAN: DB .,00h单片机被测信号放大整形脉冲信号图2 系统工作原理图2.2 AT89S52单片机与其引脚说明AT89S52是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数器, 一个5中断源两个优先级的中断结构,一个双工的串行口, 片上震荡器和时钟电路引脚说明:VCC:电源电压GND:地P0口:P0口是一组8位漏极开路型双向I/O口,作为输出
47、口用时,每个引脚能驱动8个TTL逻辑门电路。当对0端口写入1时,可以作为高阻抗输入端使用。当P0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。在这种模式下,P0口具有部上拉电阻。在EPROM编程时,P0口接收指令字节,同时输出指令字节在程序校验时。程序校验时需要外接上拉电阻。P1口:P1口是一带有部上拉电阻的8位双向I/O口。P1口的输出缓冲能接受或输出4个TTL逻辑门电路。当对P1口写1时,它们被部的上拉电阻拉升为高电平,此时可以作为输入端使用。当作为输入端使用时,P1口因为部存在上拉电阻,所以当外部被拉低时会输出一个低电流(IIL)。P2口:P2是一带有部上拉电阻
48、的8位双向的I/O端口。P2口的输出缓冲能驱动4个TTL逻辑门电路。当向P2口写1时,通过部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(IIL)。P2口在访问外部程序存储器或16位地址的外部数据存储器(例如MOVX DPTR)时,P2口送出高8位地址数据。在这种情况下,P2口使用强大的部上拉电阻功能当输出1时。当利用8位地址线访问外部数据存储器时(例MOVX R1),P2口输出特殊功能寄存器的容。当EPROM编程或校验时,P2口同时接收高8位地址和一些控制信号。P3口:P3是一带有部上拉电阻的8位双向的I/O端口。P3口的输
49、出缓冲能驱动4个TTL逻辑门电路。当向P3口写1时,通过部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(IIL)。P3口同时具有多种特殊功能,具体如下表1所示:端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD(串行输出口)P3.2 (外部中断0)P3.3(外部中断1)P3.4T0(定时器0)P3.5T1(定时器1)P3.6(外部数据存储器写选通)P3.7(外部数据存储器都选通) 表1 P3口的第二功能RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期的高电平将使单片机复位。ALE/ :当访问外部存储器时,
50、地址锁存允许是一输出脉冲,用以锁存地址的低8位字节。当在Flash编程时还可以作为编程脉冲输出。一般情况下,ALE是以晶振频率的1/6输出,可以用作外部时钟或定时目的。但也要注意,每当访问外部数据存储器时将跳过一个ALE脉冲。 :程序存储允许时外部程序存储器的读选通信号。当AT89C52执行外部程序存储器的指令时,每个机器周期 两次有效,除了当访问外部数据存储器时, 将跳过两个信号。 /VPP:外部访问允许。为了使单片机能够有效的传送外部数据存储器从0000H到FFFH单元的指令, 必须同GND相连接。需要主要的是,如果加密位1被编程,复位时EA端会自动部锁存。当执行部编程指令时, 应该接到V
51、CC端。XTAL1:振荡器反相放大器以与部时钟电路的输入端。XTAL2:振荡器反相放大器的输出端。2.3 信号调理与放大整形模块2.3.1 工作原理放大整形系统包括衰减器、跟随器、放大器、施密特触发器。它将正弦输入信号Vx整形成同频率方波Vo,幅值过大的被测信号经过分压器分压送入后级放大器,以避免波形失真。由运算放大器构成的射级跟随器起阻抗变换作用,使输入阻抗提高。同相输入的运算放大器的放大倍数为(R3+R4)/R3,改变R3的大小可以改变放大倍数。系统的整形电路由施密特触发器组成,整形后的方波送至单片机以便计数。由于输入的信号幅度是不确定、可能很大也有可能很小,这样对于输入信号的测量就不方便
52、了,过大可能会把器件烧毁,过小可能器件检测不到,所以在设计中采用了这个信号调理电路对输入的波形进行阻抗变换、放大限幅和整形,信号调理部分电路具体实现电路原理图和参数如下图3所示:4 图3 信号处理图中D1D4为肖特基二极管(DIODE),本设计中选用IN4148。D5为稳压二极管,本设计选用的稳压二极管IN4625,其中R1、R2、R5、R6为10K,R4为150K,R3为500K的电位器。52.3.2 信号放大仿真 下图为当R3=50K时输入信号频率为100Hz,幅度为1V在输入端和R1左端测得的信号仿真图,由运算放大器的放大倍数为(R3+R4)/R3可得到放大后的频率不变,幅度放大了四倍。
53、 图4 信号放大仿真2.3.3 信号转换成方波后的仿真图下图为当R3=50K时输入信号频率为100Hz,幅度为1V在输出端测得的仿真波形图,频率不变,幅度为5V。 图5 转换方波2.3.4 LF353双运算放大器简介 集成电路运算放大器是一种高电压增益、高输入电阻和低输出电阻的多级直接耦合放大电路,它的类型很多,电路也不一样,但结构具有共同之处,图6表示集成运放的部电路组成原理框图。图中输入级一般是由BJT、JFET或MOSFET组成的差分式放大电路,利用它的对称性可以提高整个电路的共模抑制比和其他方面的性能,它的两个输入端构成整个电路的反相输入端和同相输入端7。电压放大级一般由电压跟随器或互
54、补电压跟随器所组成,以降低输出电阻,提高带负载能力。偏置电路是为各级提供合适的工作电流。此外还有一些辅助环节,如电平移动电路、过载保护电路以与高频补偿环节等。 + 差分 电压放大级 输出级 Vid - 输入级 偏置电流 图6集成电路运算放大器部组成原理框图 运算放大器分为通用型和专用型集成电路运算放大器,741型集成运算放大器即为通用型,其电路主要包括偏置电路(24个BJT、10个电阻和一个电容组成)、输入级、中间级和输出级四个部分,整个电路要求当输入信号为零时输出也为零。放大器主要参数的设置不管是哪种类型都极其重要,直接影响到电路的实际功能。 集成电路运算放大器在近几年得到迅速发展,除了具有
55、高电压增益的通用型外,还具有性能更优良和具有特殊功能的集成运放,可分为高输入阻抗、低漂移、高精度、带宽、低功耗、高压、大功率和程控型等专用型集成运算放大。 题中用到的LF353放大器属于用型集成运算放大,该运算放大器部有偏移电压和FET输入装置(双向场效应管),有较大的反向击穿电压,因此,当大差动输入电压时,可以很容易容纳增加的输入电流。图7 典型接法图8部结构显示模块2.4.11602ALCD与单片机的接法 单片机与1602ALCD的连接如图9所示图9 单片机与LCD接法1602ALCD采用标准的16脚接口,本设计具体接法如下:第1脚:VSS为地电源(图中未画出)。第2脚:VDD接5V正电源
56、(图中未画出)。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,本设计使用时通过一个10K的电位器调整其对比度(图中未画出)。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。 第714脚:D0D7为8位双向数据线。 第1516脚:空脚(图中
57、未画出)。由于AT89S52单片机的P0口部没有上拉电阻故在单片机与1602ALCD之间需加上上拉电阻(图中未标出),本设计中选用4.7K的电阻。2.4.2 1602ALCD基本技术:1602液晶模块部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如表1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A” 1602液晶模块部的控制器共有11条控制指令,如下表所示, 它的读写操作、屏幕和光标的
58、操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平) 指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平
59、时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 指令10:写数据 指令11:读数据 液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,下表是DM-162的部显示地址. 比如第二行第一个字符的地址是40H,
60、那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是01000000B(40H)+10000000B(80H)=11000000B(C0H) 3 软件设计3.1 系统工作流程图系统工作流程如图10 图10系统工作流程图3.1.1 T0的1s定时本次设计选用定时器T0完成定时功能,选用方式1时最多也只能定时显然不能满足定时1 S的要求,可以用下面这种方法解决:采用T0定时50 ,连续循环定时20次即可完成1 定时,用一个计数单元存放循环的次数,每一次循环单元自加1,当加到20次时则1S 定时到时。其程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度酒店地毯翻新与采购合同书3篇
- 物业管理公司课程设计
- 幼儿国旗下讲话消防记我心讲话稿(17篇)
- 2025年山东淄博市事业单位招聘工作人员124人历年管理单位笔试遴选500模拟题附带答案详解
- 2025年山东济宁汶上县教育事业单位招聘301人历年管理单位笔试遴选500模拟题附带答案详解
- 2025年山东济南槐荫区事业单位招考统计(9.13)及调管理单位笔试遴选500模拟题附带答案详解
- 2025年山东枣庄市邮政快递安全中心招聘工作人员2人历年管理单位笔试遴选500模拟题附带答案详解
- 房地产员工试用期的工作总结
- 把信送给加西亚读后感(23篇)
- 小学心肺复苏课程设计
- 文创产品设计总结与反思
- 2024-2034年全球及中国药用菌行业市场发展分析及前景趋势与投资发展研究报告
- 2024年中小学劳动技能大赛活动方案
- Ceph之RADOS设计原理与实现
- 内蒙古呼和浩特市2023-2024学年七年级上学期期末语文试题
- 中国十五冶招聘线上笔试测评题库
- 牙医诊所创业计划书
- 《胆碱能受体作用药》课件
- 肥胖危害及相关疾病
- 语音通知营销方案
- 中国结直肠癌诊疗规范(2023版)解读
评论
0/150
提交评论