嵌入式课程设计数字频率计.docx

上传人:b****2 文档编号:1670982 上传时间:2022-10-23 格式:DOCX 页数:12 大小:237.70KB
下载 相关 举报
嵌入式课程设计数字频率计.docx_第1页
第1页 / 共12页
嵌入式课程设计数字频率计.docx_第2页
第2页 / 共12页
嵌入式课程设计数字频率计.docx_第3页
第3页 / 共12页
嵌入式课程设计数字频率计.docx_第4页
第4页 / 共12页
嵌入式课程设计数字频率计.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

嵌入式课程设计数字频率计.docx

《嵌入式课程设计数字频率计.docx》由会员分享,可在线阅读,更多相关《嵌入式课程设计数字频率计.docx(12页珍藏版)》请在冰豆网上搜索。

嵌入式课程设计数字频率计.docx

嵌入式课程设计数字频率计

第一章概述

数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。

它是一种用十进制数字显示被测信号频率的数字测量仪器。

它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。

在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。

本数字频率计将采用定时、计数的方法测量频率。

测量范围在9kHz以下的方波,时基宽度为1us,10us,100us,1ms。

用单片机实现自动测量功能。

基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。

它以测量周期的方法对方波的频率进行自动的测量。

1.1课程设计的基本原理

所谓频率,就是周期性信号在单位时间()内变化的次数,若在一定时间间隔内测得这个周期性信号的重复变化次数为,则其频率可表示为

 

图1数字频率计结构图

图1是数字频率计的组成框图。

被测信号经放大整形电路变成计数器所要求的脉冲信号,其频率与被测信号的频率相同。

时基电路提供标准时间基准信号,其高电平持续时间,当信号来到时,闸门开通,被测脉冲信号通过闸门,计数器开始计数,直到信号结束时闸门关闭,停止计数。

若在闸门时间内计数器计得的脉冲数为,则被测信号频率。

逻辑控制电路的作用有两个:

一是产生锁存脉冲,使显示器上的数字稳定;二是产生清“0”脉冲,使计数器每次测量从零开始计数。

1.2系统设计要求

●以单片机未核心设计一个数字频率计,有频率检测电路、单片机时钟电路、抚慰电路、数码管驱动电路、四位数码管电路5部分组成

●可以测量9KHZ以下的方波

1.3设计方案确定

1.硬件方案

硬件电路有5部分组成,既平率检测电路、单片机时钟电路、复位电路、数码管驱动电路、四位数马管电路。

各部分实现功能如下:

●频率检测电路:

进行频率检测并转换成数字信号。

●单片机时钟电路、复位电路:

单片机正常工作需要。

●数码管驱动电路、四位数码管电路:

用于测试的电压结果显示。

2.软件方案

本系统的软件部分主要完成功能:

对脉冲的频率采集、计算及显示。

根据软件的功能划分软件设计模块,各模块的具体任务如下:

●数码管显示模块:

实现采集好的频率值的显示。

●脉冲计数模块:

把脉冲的频率检测出来。

第二章数字频率计的硬件结构设计

2.1系统硬件的构成

本频率计的数据采集系统主要元器件是单片机AT89C51,由它完成对待测信号频率的计数和结果显示等功能,外部还要有分频器、显示器等器件。

可分为以下几个模块:

放大整形模块、秒脉冲产生模块、换档模拟转换模块、单片机系统、LCD显示模块。

各模块关系图如图2所示:

图2数字频率计功能模块

2.2系统工作原理图

图3数字频率计系统工作原理图

2.3AT89C51单片机及其引脚说明

89C51是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:

4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数器,一个5中断源两个优先级的中断结构,一个双工的串行口,片上震荡器和时钟电路。

引脚说明:

·VCC:

电源电压

·GND:

·P0口:

P0口是一组8位漏极开路型双向I/O口,作为输出口用时,每个引脚能驱动8个TTL逻辑门电路。

当对0端口写入1时,可以作为高阻抗输入端使用。

当P0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。

在这种模式下,P0口具有内部上拉电阻。

在EPROM编程时,P0口接收指令字节,同时输出指令字节在程序校验时。

程序校验时需要外接上拉电阻。

·P1口:

P1口是一带有内部上拉电阻的8位双向I/O口。

P1口的输出缓冲能接受或输出4个TTL逻辑门电路。

当对P1口写1时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。

当作为输入端使用时,P1口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流(IIL)。

·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是一带有内部上拉电阻的8位双向的I/O端口。

P3口的输出缓冲能驱动4个TTL逻辑门电路。

当向P3口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。

作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(IIL)。

P3口同时具有AT89C51的多种特殊功能,具体如下表1所示:

端口引脚

第二功能

P3.0

RXD(串行输入口)

P3.1

TXD(串行输出口)

P3.2

(外部中断0)

P3.3

(外部中断1)

P3.4

T0(定时器0)

P3.5

T1(定时器1)

P3.6

(外部数据存储器写选通)

P3.7

(外部数据存储器都选通)

表1P3口的第二功能

•RST:

复位输入。

当振荡器工作时,RST引脚出现两个机器周期的高电平将使单片机复位。

•ALE/:

当访问外部存储器时,地址锁存允许是一输出脉冲,用以锁存地址的低8位字节。

当在Flash编程时还可以作为编程脉冲输出()。

一般情况下,ALE是以晶振频率的1/6输出,可以用作外部时钟或定时目的。

但也要注意,每当访问外部数据存储器时将跳过一个ALE脉冲。

•:

程序存储允许时外部程序存储器的读选通信号。

当AT89C52执行外部程序存储器的指令时,每个机器周期两次有效,除了当访问外部数据存储器时,将跳过两个信号。

•/VPP:

外部访问允许。

为了使单片机能够有效的传送外部数据存储器从0000H到FFFH单元的指令,必须同GND相连接。

需要主要的是,如果加密位1被编程,复位时EA端会自动内部锁存。

当执行内部编程指令时,应该接到VCC端。

•XTAL1:

振荡器反相放大器以及内部时钟电路的输入端。

·XTAL2:

振荡器反相放大器的输出端。

在本次设计中,采用89C51作为CPU处理器,充分利用其硬件资源,结合D触发器CD4013,分频器CD4060,模拟转换开关CD4051,计数器74LS90等数字处理芯片,主要控制两大硬件模块,量程切换以及显示模块。

下面还将详细说明。

2.4信号调理及放大整形模块

放大整形系统包括衰减器、跟随器、放大器、施密特触发器。

它将正弦输入信号Vx整形成同频率方波Vo,幅值过大的被测信号经过分压器分压送入后级放大器,以避免波形失真。

由运算放大器构成的射级跟随器起阻抗变换作用,使输入阻抗提高。

同相输入的运算放大器的放大倍数为(R1+R2)/R1,改变R1的大小可以改变放大倍数。

系统的整形电路由施密特触发器组成,整形后的方波送到闸门以便计数。

由于输入的信号幅度是不确定、可能很大也有可能很小,这样对于输入信号的测量就不方便了,过大可能会把器件烧毁,过小可能器件检测不到,所以在设计中采用了这个信号调理电路对输入的波形进行阻抗变换、放大限幅和整形,信号调理部分电路具体实现电路原理图和参数如下图4所示:

图4

2.5时基信号产生电路:

CD4013------双上升沿D触发器,引脚及功能见如下图5:

CD4013由两个相同的、相互独立的数据型触发器构成。

每个触发器有独立的数据置位复位时钟输入和Q及Q非输出。

此器件可用作移位寄存器,且通过将Q非输出连接到数据输入,可用作计数器和触发器。

在时钟上升沿触发时,加在D输入端的逻辑电平传送到Q输出端。

置位和复位或复位线上的高电平完成。

图5CD4013芯片引脚用功能图

CD4060------14位二进制串行计数器,引脚及功能见如下图6:

CD4060由一震荡器和14极二进制串行计数器位组成,震荡器的结构可以是RC或晶振电路。

CR为高电平时,计数器清零且振荡器使用无效,所有的计数器位均为主从触发器CP1非(和CP0)的下降沿计数器以二进制进行计数,在时钟脉冲线上使用施密特触发器对时钟上升和下降时间无限制。

图6CD4060芯片引脚用功能图

时基信号的产生原理:

本电路采用32768HZ晶体震荡器,利用CD4060芯片经过14级分频得到2HZ的信号(32768/214),在经过CD4013双D触发器经过二分频得到0.5HZ的方波,即输出秒脉冲信号使单片机进行计数。

图七秒脉冲产生电路原理图

2.6显示模块

 

1602主要功能

A、40通道点阵LCD驱动;

B、可选择当作行驱动或列驱动;

C、输入/输出信号:

输出,能产生20×2个LCD驱动波形;输入,接受控制器送出的串行数据和控制信号,偏压(V1∽V6);

D、通过单片机控制将所测的频率信号读数显示出来。

第三章软件设计

根据硬件电路和设计思路,可以画出如下的程序结构图。

程序流程图

3.1应用程序

Include.h文件

/*************************************************

*文件名称:

Include.h

*文件功能:

包含文件中常用操作函数

*************************************************/

#ifndefINCLUDE_H

#defineINCLUDE_H

#include"AT89X51.h"

#include"intrins.h"

#defineucharunsignedchar

#defineuintunsignedint

#define_BV(x)(1<<(x))

#defineGET_BIT(x,y)(((x)&(1<<(y)))==0?

0:

1)//取x变量y位的数据

#defineSET_BIT(x,y)((x)|=(0x0001<<(y)))//置位x变量y位

#defineCLR_BIT(x,y)((x)&=~(0x0001<<(y)))//清零x变量y位

#defineLET_BIT(x,y,z)((x)=(x)&(~(0x0001<<(y)))|(z)<<(y))//置位或清零x变量y位

#defineF_CPU11059200UL//cpu震荡周期

#definesei()(EA=1)//开总中断

#definecli()(EA=0)//关总中断

#endif

freCountMain.c文件

/*************************************************************************

*实例名称:

频率计

*实例说明:

实现0~9000hz频率计的统计

*作者:

yd

*时间:

09.06.20

*************************************************************************/

#include"target.h"

#include"led.h"

uchardisplayBuff[4]={'0','0','0','0'};//数码管显示缓冲区,千,百,十,个

constuchard

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 人力资源管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1