1、四川航天学院电子工程系课程设计基于 51 单片机的数字频率计摘 要MAXIM 是直接用十进制数字显示被测信号频率的一种测量装置。传统的数字频率计大多采用 74LS 系列数字集成电路直接测频,在使用过程中存在电路结构复杂,测量精度低、故障率高、维护不易等问题。于是,随着芯片技术的发展,很多芯片被应用到频率计的设计当中。一种是专用芯片,如利用 MAXIM 公司的 ICM7240 制作的频率计。其特点是简单易行,但由于这种芯片的最高计数频率仅有 15MHz,远不能达到在一些场合需要测量很高频率的要求,而且测量精度也受到芯片本身的限制。以单片机为主再附加一些外围电路来设计数字频率计,采用这种方案有一个
2、很大的优点,那就是可通过单片机的软件设计,采用适当的算法,取代很多以前用硬件实现的电路,这不仅能弥补以往频率计测量精度低、故障率高、维护不易等不足,而且性能也得到了很大的提高。关键字:MAXIM 74LS MAXIM 高频率 芯片目 录第 1 节 引言 .- 4 -1.1 数字频率计概述 .- 4 -1.2 频率测量仪的设计思路与频率的计算 .- 4 -1.3 基本设计原理 .- 5 -第 2 节 数字频率计(低频)的硬件结构设计 .- 5 -2.1 系统硬件的构成 .- 6 -四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 1 -2.2 系统工作原理图 .- 6 -2.3 A
3、T89C51 单片机及其引脚说明 .- 7 -2.5 时基信号产生电路: .- 9 -2.6 显示模块 .- 11 -1) 、主要功能 .- 11 -2) 、技术参数 .- 11 -3) 、时序特性表 .- 12 -4) 、引脚和指令功能 .- 12 -5) 、显示位与 DD RAM 地址的对应关系 .- 13 -6) 、初始化方法 .- 13 -第 3 节 软件设计 .- 15 -3.1 定时读数 .- 15 -3.2 量程转换 .- 15 -3.3 BCD 转换 .- 15 -3.4LCD 显示的功能 .- 15 -结 束 语 .- 16 -参考文献 .- 17 -附件: .- 17 -基
4、于 51 单片机的数字频率计1.1 数字频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。 本数字频率计将采用定时、计数的方法测量频率,采用一个 1602A LCD 显四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 2 -示器动态显示 6 位数。测量范围从 1Hz10kHz 的正弦波、方波、三角波,时基宽度为
5、1us,10us,100us,1ms。用单片机实现自动测量功能。基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。1.2 频率测量仪的设计思路与频率的计算频率测量仪的设计思路主要是:对信号分频,测量一个或几个被测量信号周期中已知标准频率信号的周期个数,进而测量出该信号频率的大小,其原理如右图1所示。若被测量信号的周期为,分频数m 1,分频后信号的周期为T,则:T=m 1Tx 。由图可知: T=NT o (注:T o为标准信号的周期,所以T为分频后信号的周期,则可以算出被测量信号的频率f。 )由于单片机系统的标准频率比较稳
6、定,而是系统标准信号频率的误差,通常情况下很小;而系统的量化误差小于 1,所以由式 T=NTo可知,频率测量的误差主要取决于 N 值的大小,N 值越大,误差越小,测量的精度越高。1.3 基本设计原理基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。所谓“频率” ,就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔 T 内测得这个周期性信号的重复变化次数 N,则其频率可表示为f=N/T。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率 fx。时间基准信号发生器提供标准的时间脉冲信号,若其周
7、期为 1s,则门控电路的输出信号持续时间亦准确地等于 1s。闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示图 1 频率测量原理图 四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 3 -电路。秒信号结束时闸门关闭,计数器停止计数。由于计数器计得的脉冲数 N是在 1 秒时间内的累计数,所以被测频率 fx=NHz。第 2 节 数字频率计(低频)的硬件结构设计2.1 系统硬件的构成本频率计的数据采集系统主要元器件是单片机 AT89C51,由它完成对待测信号频率的计数和结果显示等功能,外部还要有分频器、显示器等器件。可分为以下几个模块:放大整
8、形模块、秒脉冲产生模块、换档模拟转换模块、单片机系统、LCD 显示模块。各模块关系图如图 2 所示:图 2 数字频率计功能模块显 示时 基 电 路倍 频 锁 相放 大 整 形 单片机被 测 信 号四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 4 -2.2 系统工作原理图该系统工作的总原理图如图 3 所示:图 3 数字频率计系统工作原理图2.3 AT89C51 单片机及其引脚说明89C51 是一种高性能低功耗的采用 CMOS 工艺制造的 8 位微控制器,它提供下列标准特征:4K 字节的程序存储器,128 字节的 RAM,32 条 I/O 线,2 个16 位定时器/计数器, 一个
9、 5 中断源两个优先级的中断结构,一个双工的串行口 , 片上震荡器和时钟电路。引脚说明:VCC:电源电压GND:地P0 口:P0 口是一组 8 位漏极开路型双向 I/O 口,作为输出口用时,每个引脚能驱动 8 个 TTL 逻辑门电路。当对 0 端口写入 1 时,可以作为高阻抗输入端使用。当 P0 口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 5 -复用的形式。在这种模式下,P0 口具有内部上拉电阻。在 EPROM 编程时,P0 口接收指令字节,同时输出指令字节在程序校验时。程序校验时需要外接上拉电阻。P1 口:P1
10、口是一带有内部上拉电阻的 8 位双向 I/O 口。P1 口的输出缓冲能接受或输出 4 个 TTL 逻辑门电路。当对 P1 口写 1 时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。当作为输入端使用时,P1 口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流(I IL) 。P2 口:P2 是一带有内部上拉电阻的 8 位双向的 I/O 端口。P2 口的输出缓冲能驱动 4 个 TTL 逻辑门电路。当向 P2 口写 1 时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(I IL) 。P2 口在访问外部程
11、序存储器或 16 位地址的外部数据存储器(例如 MOVX DPTR)时,P2 口送出高 8 位地址数据。在这种情况下,P2 口使用强大的内部上拉电阻功能当输出 1 时。当利用 8 位地址线访问外部数据存储器时(例MOVX R1),P2 口输出特殊功能寄存器的内容。当 EPROM 编程或校验时,P2 口同时接收高 8 位地址和一些控制信号。P3 口:P3 是一带有内部上拉电阻的 8 位双向的 I/O 端口。P3 口的输出缓冲能驱动 4 个 TTL 逻辑门电路。当向 P3 口写 1 时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时
12、会输出电流(I IL) 。P3 口同时具有 AT89C51 的多种特殊功能,具体如下表 1 所示:端口引脚 第二功能P3.0 RXD (串行输入口)P3.1 TXD(串行输出口)P3.2 (外部中断 0)0INTP3.3 (外部中断 1)1P3.4 T0(定时器 0)P3.5 T1(定时器 1)P3.6 (外部数据存储器写选通)WR四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 6 -P3.7 (外部数据存储器都选通)RD表 1 P3 口的第二功能RST:复位输入。当振荡器工作时,RST 引脚出现两个机器周期的高电平将使单片机复位。ALE/ :当访问外部存储器时,地址锁存允许是
13、一输出脉冲,用以锁存地址的低 8 位字节。当在 Flash 编程时还可以作为编程脉冲输出( ) 。一般情况下,ALE 是以晶振频率的 1/6 输出,可以用作外部时钟或定时目的。但也要注意,每当访问外部数据存储器时将跳过一个 ALE 脉冲。 :程序存储允许时外部程序存储器的读选通信号。当 AT89C52 执行外部程序存储器的指令时,每个机器周期 两次有效,除了当访问外部数据存储器时,将跳过两个信号。 /VPP:外部访问允许。为了使单片机能够有效的传送外部数据存储器从0000H 到 FFFH 单元的指令, 必须同 GND 相连接。需要主要的是,如果加密位1 被编程,复位时 EA 端会自动内部锁存。
14、当执行内部编程指令时, 应该接到 VCC 端。XTAL1:振荡器反相放大器以及内部时钟电路的输入端。XTAL2:振荡器反相放大器的输出端。在本次设计中,采用 89C51 作为 CPU 处理器,充分利用其硬件资源,结合D 触发器 CD4013,分频器 CD4060,模拟转换开关 CD4051,计数器 74LS90 等数字处理芯片,主要控制两大硬件模块,量程切换以及显示模块。下面还将详细说明。2.4 信号调理及放大整形模块放大整形系统包括衰减器、跟随器、放大器、施密特触发器。它将正弦输入信号 Vx 整形成同频率方波 Vo,幅值过大的被测信号经过分压器分压送入后级放大器,以避免波形失真。由运算放大器
15、构成的射级跟随器起阻抗变换作用,使输入阻抗提高。同相输入的运算放大器的放大倍数为(R1+R2)/R1,改变 R1的大小可以改变放大倍数。系统的整形电路由施密特触发器组成,整形后的方波送到闸门以便计数。四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 7 -由于输入的信号幅度是不确定、可能很大也有可能很小,这样对于输入信号的测量就不方便了,过大可能会把器件烧毁,过小可能器件检测不到,所以在设计中采用了这个信号调理电路对输入的波形进行阻抗变换、放大限幅和整形,信号调理部分电路具体实现电路原理图和参数如下图 4 所示:图 42.5 时基信号产生电路:CD4013-双上升沿 D 触发器
16、,引脚及功能见如下图 5:CD4013 由两个相同的、相互独立的数据型触发器构成。每个触发器有独立的数据置位复位时钟输入和 Q 及 Q 非输出。此器件可用作移位寄存器,且通过将 Q 非输出连接到数据输入,可用作计数器和触发器。在时钟上升沿触发时,加在 D 输入端的逻辑电平传送到 Q 输出端。置位和复位或复位线上的高电平完成。 图 5 CD4013 芯片引脚用功能图 CD4060-14 位二进制串行计数器,引脚及功能见如下图 6: CD4060 由一震荡器和 14 极二进制串行计数器位组成,震荡器的结构可以是 RC 或晶振电路。CR 为高电平时,计数器清零且振荡器使用无效,所有的计D4DIODE
17、D3DIODED2DIODE23 76 5184U3LM31D1DIODECLR11 CLK13 D12 D212CLK21 SET14 SET210 CLR213 Q1 5Q1 6Q2 9Q28GND 7+5V 14IC174LS1412J1CON212J2CON2C1105R1RES1R2RES1R3RES1R4RES1R5RES1R6RES1D5ZENER1VC15V-VC15VGNDVC15V-VC15VGND GNDGND5VGNDVCGND32 184U1ALF353 56 7U1BLF353四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 8 -数器位均为主从触发器
18、 CP1 非(和 CP0)的下降沿计数器以二进制进行计数,在时钟脉冲线上使用施密特触发器对时钟上升和下降时间无限制。 图 6 CD4060 芯片引脚用功能图时基信号的产生原理:本电路采用 32768HZ 晶体震荡器,利用 CD4060 芯片经过 14 级分频得到2HZ 的信号(32768/2 14) ,在经过 CD4013 双 D 触发器经过二分频得到 0.5HZ 的方波,即输出秒脉冲信号使单片机进行计数。图七 秒脉冲产生电路原理图2.6 显示模块1602 基本技术:Q121 Q132Q143 Q64Q55 Q76Q47 VSS8 0 9-0 10111RESET 12Q9 13Q814Q10
19、 15VDD 16U10000000000CD4060Q11 -Q12CLOCK13 RESET14D15 SET16VSS7 SET2 8D29RESET2 10CLOCK2 11-Q212Q2 13VDD 14U2CD4013C110pY232768GNDVCC VCCC20.1uR71M/INTO四川航天学院电子工程系课程设计基于 51 单片机的数字频率计- 9 -1) 、主要功能A、 40 通道点阵 LCD 驱动;B、 可选择当作行驱动或列驱动;C、 输入/输出信号:输出,能产生 202 个 LCD 驱动波形;输入,接受控制器送出的串行数据和控制信号,偏压(V1V6);D、 通过单片机
20、控制将所测的频率信号读数显示出来。2) 、技术参数2.1)极限参数表标 准 值名 称 符 号MIN TYPE MAX单 位电路电源 VDD - VSS -0.3 7.0 VLCD 驱动电压 VDD - VEE VDD - 13.5 VDD + 0.3 V输入电压 VIN -0.3 VDD + 0.3 V静电电压 - - 100 V工作温度 -20 +70 C储存温度 -30 +80 C2.2) 电参数表标 准 值名 称 符 号 测 试 条 件MIN TYPE MAX单位输入高电平 VIH - 2.2 VDD V输入低电平 VIL - -0.3 0.6 V输出高电平 VOH IOH = 0.2mA 2.4 - V输出低电平 VOL IOL = 1.2mA - 0.4 V工作电流 IDD VDD = 5.0V 2.0 mATa = 0C 4.9Ta = 25C 4.7液晶驱动电压 VDD- VEE Ta = 50C 4.5V3) 、时序特性表标 准 值项 目 符 号 测试条件 MIN TYPE MAX单位