课程设计报告频率计

2024-05-10

课程设计报告频率计(共6篇)

篇1:课程设计报告频率计

单片机原理课程设计报告

题目:智能数字频率计设计

专业: 信息工程 班级:信息111 学号:*** 姓名:*** 指导教师:***

北京工商大学计算机与信息工程学院

1、设计目的

(1)了解和掌握一个完整的电子线路设计方法和概念;

(2)通过电子线路设计、仿真、安装和调试,了解和掌握电子系统研发产品的一个基本流程。

(3)了解和掌握一些常见的单元电路设计方法和在电子系统中的应用: 包括放大器、滤波器、比较器、计数和显示电路等。

(4)通过编写设计文档与报告,进一步提高学生撰写科技文档的能力。

2、设计要求

(1)基本要求

设计指标:

1.频率测量:0~250KHz; 2.周期测量:4mS~10S; 3.闸门时间:0.1S,1S;

4.测量分辨率:5位/0.1S,6位/1S; 5.用图形液晶显示状态、单位等。

充分利用单片机软、硬件资源,在其控制和管理下,完成数据的采集、处理和显示等工作,实现频率、周期的等精度测量方案。在方案设计中,要充分估计各种误差的影响,以获得较高的测量精度。

(2)扩展要求

用语音装置来实现频率、周期报数。

(3)误差测试

调试无误后,可用数字示波器与其进行比对,记录测量结果,进行误差分析。

(4)实际完成的要求及效果

1.测量范围:0.1Hz~4MHz,周期、频率测量可调; 2.闸门时间:0.05s~10s可调; 3.测量分辨率:5位/0.01S,6位/0.1S; 4.用图形液晶显示状态、单位(Hz/KHz/MHz)等。

3、硬件电路设计

(1)总体设计思路 本次设计的智能数字频率计可测量矩形波、锯齿波、三角波、方波等信号的频率。系统共设计包括五大模块: 主芯片控制模块、整形模块、分频模块、档位选择模块、和显示模块。设计的总的思想是以AT89S52单片机为核心,将被测信号送到以LM324N为核心的过零比较器,被测信号转化为方波信号,然后方波经过由74LS161构成的分频模块进行分频,再由74LS153构成的四选一选择电路控制档位,各部分的控制信号以及频率的测量主要由单片机计数及控制,最终将测得的信号频率经LCD1602显示。

各模块作用如下: 1.主芯片控制模块: 单片机AT89S52 内部具有2个16位定时/计数器T0、T1,定时/计数器的工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。利用单片机的计数器和定时器的功能对被测信号进行计数。以AT89S52 单片机为控制核心,来完成对各种被测信号的精确计数、显示以及对分频比的控制。利用其内部的定时/计数器完成待测信号周期/频率的测量。

2.整形模块:整形电路是将一些不是方波的待测信号转化成方波信号,便于测量。本设计使用运放器LM324连接成过零比较器作为整形电路。

3.分频模块: 考虑单片机利用晶振计数,使用11.0592MHz 时钟时,最大计数速率将近500 kHz,因此需要外部分频。分频电路用于扩展单片机频率测量范围,并实现单片机频率测量使用统一信号,可使单片机测频更易于实现,而且也降低了系统的测频误差。本设计使用的分频芯片是74LS161实现4分频及16分频。

4.档位选择模块:控制74LS161不分频、4分频 或者 16分频,控制芯片是74LS153。5.显示模块:编写相应的程序可以使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示,本设计选用LCD1602。

(2)测频基本设计原理

所谓“频率”,就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔T内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T(右图3-1所示)。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率fx。利用单片机的定时/计数T0、T1的定时、计数功能产生周期为1s的时间脉冲信号,则门控电路的输出信号持 图3-1 续时间亦准确地等于1s。闸门电路由标准的秒脉冲信号进行控制,当秒脉冲信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。秒脉冲信号结束时闸门关闭,计数器停止计数。由于计数器计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。

(2)系统框图

本智能数字频率计系统框图如图3-2所示

图3-2智能数字频率计系统框图

(3)单片机部分

P0口经上拉后做LCD数据接口 P2.1~P2.3作为LCD控制端口 P2.4~P2.5作为分频选择端口 P3.5作为被测信号输入端口

P3.2~P3.4作为开关控制端口(对应电路图中K1,K2,SET)

图3-3 89D52单片机部分电路

(4)分频部分

74HC161与74ls161功能兼容,是常用的四位二进制可预置的同步加法计数器,他可以灵活的运用在各种数字电路,以及单片机系统中实现分频器等很多重要的功能。

其管脚图如图3-4所示:

图3-4 74HC161 图3-5 74HC153管脚图

74HC153是一个双4选1数据选择器,其管脚图如图3-5所示:

74LS161对整形后的防波信号进行分频,Q1为四分频输出,Q3为16分频输出。未经分频、经过四分频和经过16分频的三路信号作为74LS153的一个4选1数据选择器低三位输入,由单片机控制选择分频数,然后再送单片机内部计数器T1(如图3-6)。

图3-6 分频、选择分频档位电路图

(5)LCD显示部分

LCD显示,1602的八位数据I/O口与单片机的P0口相连,读写控制端接P2.0-P2.2口。三个按键中,设置键接P3.2单片机按外部中断0接口,当按键按下后,置P3.2口低电平,单片机中断。S1、S2为频率/周期、闸门时间加/减选择按键(如图3-7)。

图3-7 LCD显示部分电路图

4、软件设计

(1)主程序流程图设计

本次程序设计采用的是C语言程序设计,其设计流程图4-1所示:

图4-1主程序流程图

(2)子程序流程图设计

<1>显示程序:

LCD显示程序设计流程如图4-2所示:

图4-2显示程序流程图 <2>频率测量程序框图:

频率测量程序的整体架构如图4-3所示:

图4-3频率测量框架图

(3)中断服务流程图

INT0中断流程图如图4-4所示:

图4-4INT0中断流程图

(4)程序代码

#include #include #include #include float f;

//频率 float p;

//周期 float sj;

//闸门时间 char idata buff[20];char flag=0;

//频率、周期选择标志位

char xs=0;//设置闸门时间结束后是否显示结果的标志位

unsigned char m=0,n=0,yichu=0,fenpin;

//m定时中断次数 n计数中断次数 yichu判断是定时

//器还是计数器溢出

#define Key_Set P3 #define K1 0xf7

//11110111

P33 #define K2 0xef

//11101111

P34 #define NO_Set 0xff #define Freq 0 #define Peri 1

sbit B153=P2^4;sbit A153=P2^3;sbit P17=P3^4;sbit P16=P3^3;sbit P35=P3^5;sbit Set=P3^2;unsigned char LCD_Wait(void);void LCD_Write(bit style, unsigned char input);void LCD_SetDisplay(unsigned char DisplayMode);void LCD_SetInput(unsigned char InputMode);void LCD_Initial();void GotoXY(unsigned char x, unsigned char y);void Print(unsigned char *str);void C52_Initial();void Delay(unsigned int t);void display(float f);void cepin();void panduan();void timedisplay(float sj);void Time_Set1();void Time_Set2();void t0();void t1();

/*****模块名称 LCD1602显示程序******/

/***********************端口定义 ***********************************/

sbit LcdRs= P2^0;sbit LcdRw= P2^1;sbit LcdEn= P2^2;sfr DBPort= 0x80;

//P0=0x80,P1=0x90,P2=0xA0,P3=0xB0.数据端口 /************************内部等待函数********************************/

unsigned char LCD_Wait(void){

LcdRs=0;

//寄存器选择输入端 1:数据 0:指令

LcdRw=1;

_nop_();//RW:为0:写状态;为1:读状态;

LcdEn=1;

_nop_();

//使能输入端,读状态,高电平有效;写状态,下降沿有效

LcdEn=0;

return DBPort;

} /**********************向LCD写入命令或数据***************************/

#define LCD_COMMAND 0

// Command #define LCD_DATA 1

// Data #define LCD_CLEAR_SCREEN

0x01

// 清屏 #define LCD_HOMING

0x02

// 光标返回原点 void LCD_Write(bit style, unsigned char input){

LcdEn=0;

LcdRs=style;

LcdRw=0;

_nop_();

DBPort=input;

_nop_();//注意顺序

LcdEn=1;

_nop_();//注意顺序

LcdEn=0;

_nop_();

LCD_Wait();} /********************设置显示模式*********************************/

#define LCD_SHOW

0x04

//显示开 #define LCD_HIDE

0x00

//显示关

#define LCD_CURSOR

0x02

//显示光标

#define LCD_NO_CURSOR

0x00

//无光标

#define LCD_FLASH

0x01

//光标闪动 #define LCD_NO_FLASH

0x00

//光标不闪动 void LCD_SetDisplay(unsigned char DisplayMode){

LCD_Write(LCD_COMMAND, 0x08|DisplayMode);

} /*********************设置输入模式***********************************/ #define LCD_AC_UP 0x02 #define LCD_AC_DOWN 0x00

// default #define LCD_MOVE 0x01

// 画面可平移 #define LCD_NO_MOVE 0x00

//default void LCD_SetInput(unsigned char InputMode){

LCD_Write(LCD_COMMAND, 0x04|InputMode);} /******************初始化LCD**************************************/

void LCD_Initial(){

LcdEn=0;

LCD_Write(LCD_COMMAND,0x38);

//8位数据端口,2行显示,5*7点阵

LCD_Write(LCD_COMMAND,0x38);

LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR);

//开启显示, 无光标

LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN);

//清屏

LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE);

//AC递增, 画面不动 }

/************************************************************************/ void GotoXY(unsigned char x, unsigned char y){ if(y==0)

LCD_Write(LCD_COMMAND,0x80|x);if(y==1)

LCD_Write(LCD_COMMAND,0x80|(x-0x40));} void Print(unsigned char *str){

while(*str!=')

{

LCD_Write(LCD_DATA,*str);

str++;

} }

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

模块名称:

频率测量程序

* *

测量范围:0.1Hz~4MHz,闸门时间:0.05s~10s可调。

* ***************************************************************************/ /***************************89c52初始化************************************/ void C52_Initial(){ sj=1000000.00;Key_Set=0xff;TMOD=0x51;

// 01010001 T1为计数器,T0为定时器

EA=1;ET0=1;ET1=1;EX0=1;

PX0=1;

//外部中断0设置为高优先级

IT0=0;

//电平触发方式 } /**************************延时子程序**************************************/ void Delay(unsigned int t)

//t随着数值越大,误差趋于平衡.{

unsigned char i;

while(t--)

{

for(i=0;i<123;i++){;}

} } /*************************计数中*********************************/ void t1(void)interrupt 3

//计数器1溢出,yichu=1 { n++;yichu=1;TH1=0;TL1=0;} /***********************定时中断****************************/ void t0(void)interrupt 1

{ m++;yichu=2;

//定时器0溢出,yichu=2 TH0=0x3c;

//定时50ms TL0=0xb0;} /***********************频率显示*****************************/ void Fdisplay(float f){

if(f>999400.00)

{

if(f<4000400.00)

{sprintf(buff,“ F=%2.4fmHz ”,(f/1000000.00));}

}

else

{

if(f>1040.00)

{sprintf(buff,“ F=%4.2fkHz ”,(f/1000.00));}

else

{

if(f>0.06)

{sprintf(buff,“ F=%3.2fHz

”,f);}

}

}

GotoXY(0,1);

Print(buff);} /***********************周期显示**********************************/ void Pdisplay(float p){

if(p>999400.00)

{

if(p<10004000.00)

{sprintf(buff,“ Cycle:%2.4fs ”,(p/1000000.00));}

else

{sprintf(buff,“error(Time or F)”,p);}

}

else

{

if(p>9950.00)

{sprintf(buff,“ Cycle:%4.2fms ”,(p/1000.00));}

else

{

if(p>0.248)

{sprintf(buff,“ Cycle:%3.3fus ”,p);}

else

{sprintf(buff,“error(Time or F)”,p);}

}

}

GotoXY(0,1);

Print(buff);}

/*********************测试频率**************************/ void cepin(){ unsigned char a;unsigned long js;m=0;n=0;TMOD=0x51;TH0=0x3c;

//定时50ms TL0=0xb0;TH1=0;TL1=0;a=sj/50000.00;TCON=0x50;

//启动定时器和计数器 while(m!=a);TCON=0;js=TH1*256+n*65536+TL1;f=(js/(sj/1000000.00))*fenpin;p=sj/(js*fenpin);if(xs==0)

//设置结束后第一次不显示结果 { if(flag==Freq)Fdisplay(f);else Pdisplay(p);} }

/*********************判断频率******************************/ void panduan(){ xs=0;

//设置结束后第二次循环显示结果 B153=1;

//选择16分频 A153=0;yichu=0;TMOD=0x51;

TH0=0xff;

TL0=0x38;TH1=0xff;

TL1=0x9c;TR0=1;

TR1=1;while(yichu==0);

TR0=0;

TR1=0;

if(yichu==1)

(f>500khz)

{fenpin=16;

cepin();} else

频数

{

yichu=0;

B153=0;

A153=1;

TH0=0xfc;

TL0=0x18;

TH1=0xff;

TL1=0x9c;

TR0=1;

TR1=1;

while(yichu==0);

TR0=0;

TR1=0;

if(yichu==1)

(1khz

{fenpin=4;

//定时器0

200us

//计数器1

100脉冲

//启动定时器0和计数器1

//如果没有溢出一直循环

//已经溢出关闭定时器0和计数器1

//计数器先溢出:在200ms内测得的脉冲过多,说明频率较高

//转为测16分频后的频率 //定时器先溢出:100个脉冲的时间比较短,即频率较低,可以减少分

//定时器0

1ms

//计数器1

100个脉冲

//启动定时器0和计数器1

//如果没溢出一直循环

//已经溢出关闭定时器0和计数器1

//计数器先溢出:在1ms内测得的脉冲过多,说明频率较高

//转为测4分频后测频率

cepin();}

else

//定时器先溢出:100个脉冲的时间比较短,即频率较低

{ fenpin=1;

B153=0;

A153=0;

cepin();}

} } /*************************显示闸门时间***********************************/

void timedisplay(float GTime){ sprintf(buff,“GTime=%7.0fus ”,GTime);GotoXY(0,1);Print(buff);Delay(50);} /***************************减按键*******************************/ void Time_Set2(){ Delay(1000);if(P17==1)

{ sj=sj-50000.00;

if(sj>50000.00)timedisplay(sj);

else

{sj=50000.00;

timedisplay(sj);}

} else {while(P17==0)

{ Delay(500);

sj=sj-500000.00;

if(sj>50000.00)timedisplay(sj);

else

{sj=50000.00;

timedisplay(sj);}

} }

} /***************************加按键**********************************/

void Time_Set1(){ Delay(1000)if(P16==1)

{

sj=sj+50000.00;

if(sj<10000000.00)timedisplay(sj);

else

{sj=10000000.00;

timedisplay(sj);}

} else {while(P16==0)

{ Delay(500);

sj=sj+500000.00;

if(sj<10000000.00)timedisplay(sj);

else

{sj=10000000.00;

timedisplay(sj);}

//按住1s快加0.5s

} }

} /************************闸门时间设置***********************************/ void Time_Set()interrupt 0 { EA=0;

//防止无限中断

Delay(100);if(Set==0)

{

Delay(1000);

//判断处于哪种设置状态

if(Set==1)

{

GotoXY(0,1);

Print(“ Press Button ”);

GotoXY(0,0);

Print(“

T Settings

”);

while(Set==1)

{

switch(Key_Set)

{

case K1: Time_Set1();break;

case K2: Time_Set2();break;

default: break;

}

}

}

else

//选择测试频率或周期

{

GotoXY(0,1);

Print(“ 1.Freq 2.Cycle”);

GotoXY(0,0);

Print(“

Select ”);

while(Set==0);

//等待设置按键松开

while(Set==1)

{

switch(Key_Set)

{

case K1: flag=Freq;GotoXY(0,1);Print(“

---Freq---

case K2: flag=Peri;GotoXY(0,1);Print(”

---Cycle---

default: break;

}

}

}

} GotoXY(0,0);Print(“---Cymometer---”);

GotoXY(0,1);Print(“

Waiting...”);while(Set==0);

//防止再次进入中断

EA=1;xs=1;

//不显示此次结果.} /**************************主程序****************************/ void main(){

LCD_Initial();

//LCD初始化 GotoXY(0,0);Print(“---Cymometer---”);GotoXY(0,1);Print(“ Huixi && Xia”);Delay(1000);GotoXY(0,1);Print(“

Waiting...”);

“);break;”);break;

C52_Initial();

//89c52初始化 while(1)

{

panduan();

} }

5、调试过程

程序的设计及调试过程中离不开89C52的开发系统板电路图,起初忽视了开发板上的K3键用到的P35引脚也是定时器T1的信号输入引脚。后来在其他管脚的分配也曾出现错误,不过通过调试、修改都一一改正。仿真的时候默认晶振是12MHz,故程序编写的时候按12MHz设计的定时,以至于在实体时候测量不是很准确,后通过重新计算、修改程序达到了较高的准确率。但最终在实体系统演示中犯了一个极其幼稚的错误,未拿掉短接帽,以至于起初LCD未任何显示,浪费了不少时间去找程序的问题,还是自己不够认真细心。

6、实验结果

(1)最终实物图

最终实体电路系统如图6-1。

图6-1最终实物图

该课程设计验收时结果符合设计要求,可测量矩形波,方波,三角波,锯齿波等信号的频率;测量范围为0.1Hz~4MHz;闸门时间为0.05s~10s可调。

(2)电路仿真分析

由于实物演示不方便,这里用仿真图进行说明: 如下图,开关K1、K2、SET分别代表实物单片机最小系统上的开关K5、K4、K6。SET为确认键,K1可以选择频率输出,K2可以选择周期输出。K1、K2配合还可以调节阀门时间。

下图为开关仿真图和结果显示图:

开关K1,K2选择测周、测频及闸门时间的增减,SET键用于功能切换及确认

初始显示

选择测频率或测周期

频率显示

周期显示

改变阀门时间

7、总结与感悟

本设计通过运用单片机AT89S52,Proteus 仿真软件以及Kell 仿真软件的相关知识,成功地实现了数字频率计的设计。综合调试结果表明,本文提出的设计与传统测频系统相比,具有体积小、成本低、低功耗、精度高等优点,适用于各种测量电路。

本次设计的低频测量部分及高频测量部分分别采用测频、测周的测量方法,并通过计算精确计数,故测量误差很小,再加上智能分频使单片机的测量带宽提高了一千倍以上,仅用几个芯片搭成的低成本简单电路,使该频率计拥有了不错的性价比,且完全可以满足一般的测量需求。本次课程设计由前期自己查资料、想设计思路、写代码及画电路图,然后在实验室多半天基本完成。总体来说还算顺利,所以前期做足准备工作很重要。通过本次课设,我们复习了老师所讲的C51知识,通过将所学的课本知识用于实践,即体会到了知识运用所得成果的快乐,又加深了我对知识的理解,印象更加深刻。通过参加竞赛及此次课设,我深刻体会到无论设计什么,首先要分析需求,根据所学设计构思,只要思路出来了编程的大致方向确定,问题就解决一半。另外,很多东西都是有前人经验的,并不是要我们只会盲目埋头自己苦干,要学会搜集资料,总结前人经验教训用于自己的设计,达到事半功倍的效果。在电路设计及编程、仿真以及最后的搭建实体电路系统中,任何一个环节中细节都不容忽视,比如焊接前外围电路板的排版布局,拿到新的洞洞板要先看构造,综合考虑电路需要,想好布局再焊,尽量避免错误焊接,吸掉重焊。这样既影响美观,又可能损坏电路板。另外,仿真只是初步的检验设计构思是否满足设计需要,仿真效果完美在实体系统调试运行中还是会遇到各种各样的问题亟待解决。总的来说,做任何设计要有清楚的头脑,做好准备工作,还要有耐心、细心,以及团队合作意识。每次的动手设计都能让我学到很多,有知识有心态,实践中的学习总会印象深刻!

篇2:课程设计报告频率计

设计课题: 数字频率计 作 者:

李成赞≦

专 业: 08信息工程 班 级:(2)班

学 号: 3081231201 日 期 2009年6月5日——2009年6月17日

指导教师: 廖 东 进

设计小组其他成员:叶昕瑜 史海镔 陈福青 姚闽 梁芳芳

衢州职业技术学院信息与电力工程系

前 言

一、频率计的基本原理:

频率计又称为频率计数器,是一种专门对被测信号频率进行测量的电子测量仪器。其最基本的工作原理为:当被测信号在特定时间段T内的周期个数为N时,则被测信号的频率f=N/T。

频率计主要由四个部分构成:时基(T)电路、输入电路、计数显示电路以及控制电路。在一个测量周期过程中,被测周期信号在输入电路中经过放大、整形、微分操作之后形成特定周期的窄脉冲,送到主门的一个输入端。主门的另外一个输入端为时基电路产生电路产生的闸门脉冲。在闸门脉冲开启主门的期间,特定周期的窄脉冲才能通过主门,从而进入计数器进行计数,计数器的显示电路则用来显示被测信号的频率值,内部控制电路则用来完成各种测量功能之间的切换并实现测量设置。

二、频率计的应用范围:

在传统的电子测量仪器中,示波器在进行频率测量时测量精度较低,误差较大。频谱仪可以准确的测量频率并显示被测信号的频谱,但测量速度较慢,无法实时快速的跟踪捕捉到被测信号频率的变化。正是由于频率计能够快速准确的捕捉到被测信号频率的变化,因此,频率计拥有非常广泛的应用范围。

在传统的生产制造企业中,频率计被广泛的应用在产线的生产测试中。频率计能够快速的捕捉到晶体振荡器输出频率的变化,用户通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。

在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准。在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。

目 录

1、设计要求

数字频率计

2、第一章 系统概述

3、第二章单元电路设计与分析 3.1 数字频率计的基本原理 3.2 数字频率的设计 3.2.1 放大整形电路

3.2.2 时基电路

3.2.3 逻辑控制电路 3.2.4 输出实现器

4、第三章 总结设计

附录A 系统电路原理图

附录B 元件清单

附录C 参考文献

设 计 要 求

电子课程设计报告格式:

每人必须写出一份4000字以上设计总结报告,总结报告应包括以下内容:

题目名称、前言、目录、鸣谢、元器件明细表、附图、参数文献。

其中,前言应包含设计题目的主要内容、资料收集工作的简介。正文参考格式如下:

第一章 系统概述

简单介绍系统设计思路与总体解决的可行论证,各功能块的划分与组成,全面介绍总体工作或工作原理。

第二章 单元电路设计与分析

详细介绍个单元电路的选择、设计及工作原理分析,并介绍有关参数的计算及元件参数的选择等。

第三章 总结

简单介绍对设计题目的结论性意见,进一步完善或改进的意向性说明,总结设计课程的收获与体会。

元器件明细表主要用于列出本次课程设计中所用到的全部元器件。

附图要求用2#以上图纸画出总原理接线图,参考文献格式如下:

序号 作者名 书刊名 出版社 出版时间(刊号)

数字频率计(设计要求):

数字频率计是用来测量正弦信号、矩形信号等波形上工作频率的仪器,其测量结果直接用十进制数字显示。本题要求采用中、小规模集成芯片设计集成有下列功能的数字频率测量计:

被测信号的频率范围为1Hz—100KHz,分成两个频段,即1—999Hz、1—100KHz,用三位数码管显示测量数据,测量误差小于5%。

数字频率计

第一章 系统概述

为了使计数器被测信号的频率范围为1—999Hz、,用三位数码管显示测量数据。

第二章 单元电路设计与分析

一、数字频率计测频率的基本原理

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

f=N/T

图1——数字频率计的组成框图和波形图

图1是数字频率计的组成框图。被测信号v x 经放大整形电路变成计数器所要求的脉冲信号I,其频率与被测信号的频率f x 相同。时基电路提供标准时间基准信号II,其高电平持续时间t1=1 秒,当l秒信号来到时,闸门开通,被测脉冲信号通过闸门,计数器开始计数,直到l秒信号结束时闸门关闭,停止计数。若在闸门时间1s内计数器计得的脉冲个数为N,则被测信号频率f 逻辑控制电路的作用有两个:一是产生锁存脉冲IV,使显示器上的数x =NHz。字稳定;二是产生清“0”脉冲V,使计数器每次测量从零开始计数。

各信号之间的时序关系如图1所示。

二、数字频率计的电路设计

基本电路设计

数字频率计的基本框图如图1所示,各部分作用如下。

①放大整形电路

图2——放大整形电路图

放大整形电路由晶体管3DG100与74LS00等组成,其中3DGl00组成放大器将输入频率。为f 三角波等进行放大,与非门74LS00构成施密特触发器,它对放 x 的周期信号如正弦波、大器的输出信号进行整形,使之成为矩形脉冲。

②时基电路

图3——时基电路

时基电路的作用是产生一个标准时间信号(高电平持续时间为 1s),由定时器555构成的多谐振荡器产生。若振荡器的频率 f0 1/(t1 t 2)0.8Hz,则振荡器的输出波形如图1中的波形II所示,其中t1=1s,t2=0.25s。由公式t1=0.7(R1+R2)C和t2=0.7R2C,可计算出电阻R1、R2及电容C的值如图。

③逻辑控制电路

图4——逻辑控制电路

根据图1所示波形,在计数信号II结束时产生锁存信号IV,锁存信号IV 结束时产生 清“0”信号 V。脉冲信号IV和V可由两个单稳态触发器74LS123产生,它们的脉冲宽度由电路的时间常数决定。

设所存信号IV和清“0”信号V的脉冲宽度tw相同,如果要求tw=0.02s,则得:

tw=0.45RextCext=0.02s

若取 Rext=10kΩ,则 Cext=tw/0.45Rext=4.4μ

F。

由74LS123的功能(见下表1)可得,当 1R 1B 1 触发脉冲从1A端输入时,在触D

发脉冲的负跳变作用下,输出端1Q可获得一负脉冲,其波形关系正好满足图1所示的波形IV和V的要求。手动复位开关S按下时,计数器清“0”。

表1——74LS123功芯片能表

④输出实现器

图5——频率计算器

表2——74LS90的不同接线方法

锁存器的作用是将计数器在1s结束时所计得的数进行锁存,使显示器上能稳定地显示 此时计数器的值。如图所示,1s计数时间结束时,逻辑控制电路发出锁存信号IV,将此时计数器的值送译码显示器,选用两个8位锁存器74L273可以完成上述功能。当时锁存信号CP的正跳变来到时,锁存器的输出等于输入,从而将计数器的输出值送到锁存器的输出端。

高电平结束后,无论D为何值,输出端的状态仍保持原来的状态不变,所以在计数期间内,计数器的输出不会送到译码显示器。

表3——74LS273功能表

表4——74LS4

第三章 结束语

①设计总结

简易的数字频率计基本完成,各Vcc接电源正极,各开关控制电路的各个部分。整个电路综合使用了与门、非门、555定时器、显示器、74LS48译码器、74LS273锁存器、74LS90计数器等等的逻辑器件和施密特、可重触发器等模拟电子器件。

②设计心得、体会

本次课程设计由李成赞同学总设计,在廖东进老师辅导下顺利完成啦。通过本次的课程设计,加深了我对数字电子技术模拟电子两门课程的理解,强化了我对相关知识的记忆,提高了我对所学知识的应用。这极大扩展了我的视野,更加激发了我对这门课程的热爱,在设计的过程中,由于综合应用了各种学习、应用软件,例如:word、auto CAD、Multisim等,不但体改了技能,还能从中获得了成就感。通过这次设计,我完全知道了团队合作的所带来的快乐,集体的力量的强大性!我定位了我自己,发现自己的优势和不足,并且勉励自己不断进步,并对未来充满信心。

再此感谢给与指导的廖东进老师、李培江老师、黄云龙老师的指导。对本课程设计的的大力支持。

附录A

附录B:元件清单

篇3:课程设计报告频率计

课程内容以综合性的学习任务为中心, 内容具有趣味性和实用性, 通过“做”中体会、联系实际, 激发学生的情感参与, 加深对课题设计的理解和体会, 增强学生的合作意识, 培养学生的创新精神。

1.实施小班化教学, 班级人数15人, 分为三组, 每组成员分工不同, 能随时进行讨论。

2.采用项目教学法, 把“数字频率计的设计与制作”项目 (见图1) 划分为三个子项目和一个综合项目 (即学习情境) :LED译码显示电路设计 (情境1) 、计数器及时钟设计 (情境2) 、阀门电路设计 (情境3) 及数字频率计的设计与制作 (情境4) 。“情境1”、“情境2”、“情境3”采用项目教学法、演示讲解法及案例分析法。“情境4”采用综合应用引导文教学法、演示讲解法及案例分析法。

3.以项目开发的技术需求驱动学生的自主学习与探究, 在课堂教学中真正实现以学生为主体, 以教师为主导。

4.营造开放、自由的创新环境, 培养高职学生的创新意识与创新能力, 培养学生的沟通、协作、表达能力。

二、教学目标

教学对象是课改试验班的同学, 综合能力较强。学生在本课之前已经有了设计单元电路的经验, 本课是前面单元电路的延续和拓展, 综合性的项目使学生具有更浓厚的兴趣和强烈的求知欲望。

本课程教学重点为数字频率计设计的工作原理及过程;教学难点为设计过程中自主性学习及团队合作的能力。根据本节课的教学内容及特点, 以及教材、大纲对学生的要求, 结合学生现有的知识水平和理解能力, 确定课程的教学目标如下:

1.知识目标。 (1) 了解数字频率计的功能要求。 (2) 理解数字频率计的工作原理及各子电路工作原理。

2.能力目标。 (1) 资料检索、信息收集、制定方案及撰写报告的能力。 (2) 自主性、探究性及尝试性学习能力。 (3) 小组成员间具有相互讨论、评价、合作及团队协作能力。 (4) 具有观察、分析、判断能力及创新思维的能力。

三、教学过程

3.素质目标。养成严谨、细致、一丝不苟的学习作风和学习态度, 养成爱动脑、勤思考的良好习惯, 培养团队间的协作精神。

1.导入新课 (见表1)

2.情境教学 (见表2, 3, 4)

四、教学反思

1.“数字频率计的设计与制作”课程教学过程采用情境教学模式, “引—探—练—伸”效果显著。情境教学是教师前一情境传授的内容转移为下一情境学生自主的内容, 学生后一情境继承前一情境自主的内容。让学生在“做”的过程中本着对科技产品的好奇去探究知识的奥秘。

2.通过项目制作, 学生学会了如何检索资料、查询信息、撰写项目报告和同学之间的合作交流, 培养了学生团队协作等综合能力。

3.教学的过程中要因材施教, 不同层次的学生, 采用不同的方法去对待, 尊重学生的个性差异, 真正体现以人为本。

4.教学的过程中评价非常重要, 通过对学生学习过程的鼓励, 让学生从“不想学”变成“渴望学”, 通过对学习成果的肯定, 让学生乐于学习, 勇于创新。

摘要:文章以具体的产品作为载体探讨电子项目的教学模式, 将学习领域课程内容具体化, 以团队的形式完成“数字频率计设计”的工作任务。以工作过程为导向, 随着教学过程的进行, 学生成为学习的主体, 强化专业技能与职业能力, 树立岗位意识和团队协作能力。

关键词:项目课程,学习情境,小班化教学

参考文献

[1]郎咸慧, 王力平.《图片变变变》教学设计[J].中小学信息技术教育, 2006, (10) .

[2]张朋新.光电传感器教学设计与反思[J].网络科技时代, 2007, (1) .

篇4:课程设计报告频率计

关键词 EDA技术;可编程逻辑器件;数字频率计

中图分类号:G642.0 文献标识码:B

文章编号:1671-489X(2016)16-0031-02

数字频率计是计算机、通信设备、音频视频等科研生产领域不可缺少的测量仪器,以EDA工具作为开发手段。基于FPGA所设计的数字频率计,具有高速、精确、可靠、抗干扰性强和现场可编程等优点。在设计中,所有频段均采用直接测频法对信号频率进行测量,克服了逼近式换档速度慢的缺点;在换档设计方面,突破了以往改变闸门时间的方法,采用门控信号和被测信号对计数器的使能端进行双重控制,使自动换档的实现更加简单可靠,提高了测量的精确度;在运算单元采用高速串行BCD码除法,不仅提高了运算速度,而且减小了资源消耗。

1 设计要求

设计一种基于FPGA的数字频率计,要求:数字频率计分为0~9.999 Hz、10.00~99.99 Hz、100.0~999.9 kHz

和1000~9999 kHz四档,且能够实现自动换档的功能。

2 总体设计方案

数字频率计总体框图如图1所示。数字频率计由分频器、计数器、锁存器和译码器等模块构成,系统有3个输入信号,即两个时钟信号CLK、SIG和一个清除信号CLR。系统有5个输出信号,即报警信号ALM、显示信号Q、数码管片选信号L、位控位A和位控位B。

分频器模块通过对时钟信号CLK进行分频,为计数器模块提供1 s的闸门时间test-en。当test-en为高电平时,闸门被打开,被测信号的脉冲通过闸门进入计数器进行计数;当test-en下降沿到来时,产生一个锁存信号,将计数值保存起来,由八段译码器译码并在数码管显示计数结果。锁存数据后,在下次test-en上升沿到来之前产生清零信号,将计数器清零,为下次计数做准备。

3 设计实现

采用模块化的设计思想,依据系统设计要求自上至下地细化设计。顶层设计完成后,采用硬件描述语言对各模块进行编程,在MAX+PLUSⅡ环境下进行编译、功能仿真,创建各模块的器件符号,待建立整体系统顶层文件时调用。

分频器模块 分频器模块(FEN)通过对4 MHz时钟信号进行分频得到0.5 Hz时钟,为计数器模块(CORNA)提供1 s的闸门时间。根据给定的分频值,分频器模块对4 MHz频率进行1/2n的分频,每来一个时钟,中间值cnt状态改变一次;经过n个cnt触发处理后,就可以得到1/2n的分频信号。

数码管片选信号产生模块 数码管片选信号产生模块(SEL)把时钟信号转换成片选信号提供给输出模块。片选信号低电平时,表示其对应的数码管可以进行显示操作,数据信号输出数码管显示所需的数据,即“000”“001”“010”“011”“100”“101”“110”和“111”。

计数器模块 计数器模块(CORNA)通过对待测信号在基准时间内进行计数测量待测信号的频率,完成对输入时钟信号的计数。由分频器提供的使能信号DOOR为高电平时,允许计数;DOOR为低电平时,停止计数,并保持所计的数。当中间值c6不为零时,选择4档;当中间值c5不为零时,选择3档;当中间值c4不为零时,选择2档;否则选择1档,计数选档结束后,将5个输出信号传给锁存器。

锁存器模块 锁存器模块(LOCK)在分频器模块输出信号DOOR的下降沿到来时,将计数器的数值Q3、Q2、Q1、Q0、DANG锁存。

数据输出模块 数据输出模块(CH)对应于数码管片选信号,将相应的数据送出,其中档位也通过数码管显示。数据输出模块根据锁存器和数码管片选信号的输出信号,实现数码管的实时显示。

八段译码驱动模块 八段译码驱动模块(DISP)将输入的BCD码转换为LED数码管需要的数据,八段译码驱动模块的仿真波形如图2所示。

D是八段译码驱动模块的输入信号,由数据输出模块输出信号d赋予;Q是八段译码驱动模块的输出信号,对应于数码管的8个显示段。当d为“0000”时,q为3F;当d为

“0001”时,q为06;当d为“0010”时,q为5B;当d为

“0011”时,q为4F;当d为“0100”时,q为66;当d为

“0101”时,q为6D;当d为“0110”时,q为7D;当d为

“0111”时,q为27;当d为“1000”时,q为7F;当d为

“1001”时,q为6F。

各模块连接 各模块总体连接图如图3所示。CLK输入至分频器,SIG、CLR输入至计数器,输出报警信号ALM来自计数器,Q是八段译码器连接显示器的输出,L是数码管片选信号产生模块的输出,输出A和B是位控位[1]。

系统仿真波形如图4所示。当输入信号SIG、CLR、CLK的值为“000”“010”“100”和“110”时,仿真波形相同。输出信号Q在0.0~875.0 ns时为3F(即“0111111”),之后为0(即“0000000”)。输出信号L在0.0~125.0 ns时为“000”,之后每隔250.0 ns依次为“001”“010”“011”“100”……输出信号A和B为高电平。

4 结语

EDA技术给电子系统设计带来巨大的变革,特别是硬件描述语言的出现和发展,并与大规模可编程器件相结合,极大地提高了电子系统设计的效率和可用性,成为电子系统设计人员的得力助手。

参考文献

篇5:数字频率计的课程设计课案

近年来,在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要.在电子系统非常广泛应用领域内,到处可见到处理离散信息的数字电路。供消费用的微波炉和电视、先进的工业控制系统、空间通讯系统、交通控制雷达系统、医院急救系统等在设计过程中无一不用到数字技术。数字电路制造工业的进步,使得系统设计人员能在更小的空间内实现更多的功能,从而提高系统可靠性和速度。数字集成电路具有结构简单(如其中的晶体管是工作于饱和与截止2种状态,一般不设偏置电流)和同类型电路单元多(如一个计数系统需要很多同类型的触发器和门电路)的特点,因而容易是高集成度和归一化。由于数字集成电路与电子计算机的发展紧密相关,因而发展很快,目前已是集成电路中产量最高、集成度最大的一种器件。集成电路的类型很多,从大的方面可分为模拟和数字集成电路两大类。虽然它们都可模拟具体的物理过程,但其工作方式有着很大的不同。甚至可能完全不同。电路中的工作信号通常是用电脉冲表示的数字信号。这种工作方式的信号,可以表达2种截然不同的现象。如以有脉冲表示“1”,无脉冲便表示“0”;以“1”表示“真”,则“0”便表示“假”,等等。反之亦然。这就是“数字信号”的含义。所以,“数字量”不是连续变化的量,其大小往往并不改变,但在时间分布上却有着严格的要求,这是数字电路的一个特点。数字式频率计基于时间或频率的A/D转换原理,并依赖于数字电路技术发展起来的一种新型的数字测量仪器。由于数字电路的飞速发展,所以,数字频率计的发展也很快。通常能对频率和时间两种以上的功能数字化测量仪器,称为数字式频率计(通用计数器或数字式技术器)。在电子测量技术中,频率是一个最基本的参量,对适应晶体振荡器、各种信号发生器、倍频和分频电路的输出信号的频率测量,广播、电视、电讯、微电子技术等现代科学领域。因此,数字频率计是一种应用很广泛的仪器。

1概述

1.1 数字频率计概述 数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。1.2 数字频率计的基本原理

频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则没测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。如配以适当的传感器,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。因此,数字频率计是一种应用很广泛的仪器 电子系统非常广泛的应用领域内,到处可见到处理离散信息的数字电路。数字电路制造工业的进步,使得系统设计人员能在更小的空间内实现更多的功能,从而提高系统可靠性和速度。数字频率计的原理电路的设计

2.1 基本设计原理与方案

2.1.1 数字频率计的基本设计原理

基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。所谓“频率”,就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔T内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率fx。时间基准信号发生器提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等于1s。闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。秒信号结束时闸门关闭,计数器停止计数。由于计数器计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。2.1.2 数字频率计的整体电路设计方案

数字频率计主要由4个基本单元组成:可控制的计数锁存、译码显示系统、石英晶体振荡器及多级分频系统、带衰减器的放大整形系统和闸门电路。该原理电路我们将设计4个基本单元电路,而后利用四个基本单元电路绘制整机框图,画出总电路图,并且对电路图进行原理分析,利用Multisim、Protel软件进行绘制原理图和仿真模拟实验现象,记录调试分析的结果。

2.2 单元电路的设计和元器件的选择

数字频率计的原理框图如图11-1-1所示。他主要由5个模块组成,分别是:脉冲发生器电路、测频控制信号发生器电路、计数模块电路、锁存器、译码驱动电路。当系统正常工作时,脉冲发生器提供的1 Hz的输入信号,经过测频控制信号发生器进行信号的变换,产生计数信号,被测信号通过信号整形电路产生同频率的矩形波,送入计数模块,计数模块对输入的矩形波进行计数,将计数结果送入锁存器中,保证系统可以稳定显示数据,显示译码驱动电路将二进制表示的计数结果转换成相应的能够在七段数码显示管上可以显示的十进制结果。在数码显示管上可以看到计数结果。

2.2.1 放大整形电路

放大整形电路由晶体管9014和74LS00等组成。其中9014组成放大器将输 频率为fx的周期信号如正弦波 三角波等进行放大。与非门74LS00构成施密特触发器,它对放大器的输出信号进行整形,使之成为矩形脉冲。由于输入的信号幅度是不确定、可能很大也有可能很小,这样对于输入信号的测量就不方便了,过大可能会把器件烧毁,过小可能器件检测不到,所以在设计中采用了这个信号调理电路对输入的波形进行阻抗变换、放大限幅和整形,信号调理部分电路具体实现电路原理图和参数如图1所示:

图1—放大整形电路图

2.2.2 石英晶体振荡器(1)石英晶体振荡器原理

若在晶片的两个极板间加一电场,会使晶体产生机械变形;反之若在极板间施加机械力,又会在相应的方向上产生电场,这种现象称为压电效应。如在极板间所加的是交变电压,就会产生机械变形振动,同时机械变形振动又会产生交变电场。一般来说,这种机械振动的振幅是比较小的,其振动频率则是很稳定的。但当外加交变电压的频率与晶片的固有频率(决定于晶片的尺寸)相等时,机械振动的幅度将急剧增加,这种现象称为压电谐振,因此石英晶体又称为石英晶体谐振器。

(2)石英晶体振荡器的电路图

石英晶体具有优越的选频性能。将石英晶体引入普通多谐振荡器就能构成具有较高频率稳定性的石英晶体多谐振荡器。我们知道,普通多谐振荡器是一种矩形波发生器,上电后输出频率为的矩形波。根据傅里叶分析理论,频率为

(的矩),形波可以分解成无穷多个正弦波分量,正弦波分量的频率为如果石英晶体的串联谐振频率为,那么只有频率为的正弦波分量可以通过石英晶体(第个正弦波分量,过石英晶体。频率为),形成正反馈,而其它正弦波分量无法通

矩形波。因为石的正弦波分量被反相器转换成频率为英晶体多谐振荡器的振荡频率仅仅取决于石英晶体本身的参数,所以对石英晶体

以外的电路元件要求不高。

用反相器与石英晶体构成的振荡电路如图2所示。利用二个非门U1A、U2A自我回馈,使它们工作在线性状态,然后利用石英晶体JU来控制振荡频率,同时利用电容C1来作为二个非门之间的耦合,二个非门输入和输出之间并接的电阻R1和R2作为负反馈组件用,由于回馈电阻很小,可以近似认为非门的输入和输出的压降相等。电容C2是为了防止寄生振荡。例如:电路中的石英晶振频率是4MHZ,则电路的输出频率为4MHZ。

图2---石英晶体振荡电路

2.2.3 分频器

由于石英晶体振荡器产生的频率很高,要得到秒脉冲,就需要分频电路。例如,振荡器输出4MHZ的信号,通过D触发器(74LS74)(图3)进行4分频变成1MHZ,然后送到10分频计数器(74LS90,该计数器可以用8421码制,也可以用5421码制),经过六次10分频而获得1HZ的方波信号作为秒脉冲信号。

图3---74LS74四分频电路

图4---分频器输出波形

2.2.4 闸门电路与逻辑控制电路(1)闸门电路

闸门电路的作用是控制计数器的输入脉冲。是由与门组成,该电路有二个输入端和一个输出端,输入端的一端接门控信号,另一端接整形后的被测方波信号。当标准时间信号(1s正脉冲)来到时,闸门开通,即门控信号为高电平“1”时,此时被测信号的脉冲通过闸门进入计数器计数;而门控信号为低电平“0”时,闸门关闭,计数器无时钟脉冲输入。可见,门控信号的宽度一定时,闸门的输出值正比于被测信号的频率,通过计数显示系统把闸门的输出结果显示出来,就可以得到被测信号的频率。(2)逻辑控制电路

在时基信号结束时产生的负跳变用来产生锁存信号,锁存信号的负跳变又用来产生清零信E,脉冲信号和清零信号可由双单稳态触发器74LS123产生,它们的脉冲宽度由电路的时间常数决定。根据tw=0.7Rext×Cext可以计算出各个参数。这样当脉冲从74221 的1脚输入可以产生锁存信号和清零信号,其要求刚好满足D和E的要求。当手动开关S按下时,计数器清零。

由二块74221芯片组成的逻辑控制电路

2.2.5 脉冲形成电路(1)电路原理及电路图

脉冲形成电路的作用是将输入的周期性信号,如正弦波、三角波或者其他呈周期性变化的波形变换成脉冲波,其周期不变。将其他波形变换成脉冲波的电路有很多种,如施密特触发器、单稳态触发器、比较器等,采用集成555构成的单稳态触发器,电路如图5所示。

图5---集成555芯片构成的单稳态触发电路及仿真结果(2)仿真结果分析及结论

仿真结果分析及其结论:555定时器构成的单稳态触发器是负脉冲触发的单稳态触发器,稳态时输出为低电平,暂稳态时输出为高电平,且其在暂稳态维持时间仅与电路本身的参数R、C有关,与外界触发脉冲的幅值和宽度有关。2.2.6 时基电路

此电路由555定时器组成一个多谐振荡器,要求产生一个标准信号(高电平持续时间为1s),振荡器的频率f=1/(t1+t2)=0.8Hz,其中t1=1S,t2=0.25S由公式t1=0.7(R1+R2C)和t2=0.7R2C因此,我们可以计算出各个参数通过计算确定了R1取47K欧姆,R2取39K欧姆,电容取10μF。再加入一个100K的可变电阻,来改变电路占空比。这样我们得到了比较稳定的脉冲。如图6所示。

图6---时基电路

2.2.7 锁存器

锁存器的作用是将计数器在1s结束时所计得的数进行锁存,使显示器上能稳地显示此时计数器的值。1s计数时间结束时,逻辑控制电路发出锁存信号IV,将些时计数器的值送译码显示器。

选用两个8位锁存器74LS273可以完成上述功能。当锁存信号CP的正跳变来到时,锁存的输出等于输入,从而将计数器的输出值送到锁存器的输出端。高电平结束后,无论D为何值,输出端的状态仍保持原来的状态不变。所以在计数期间内,计数器的输出不会送到译码显示器.电路连接图如图7所示。

图7---锁存器连接电路图

2.2.8 计数器

计数器是按十进制计数的。需要注意的是,如果在系统中不接锁存器,则显示器上的显示数字就会随计数器的状态不停变化,只有在计数器停止计数时,显示器上显示的数字才能稳定,所以,计数器后面必须接入锁存器。

计数器的作用是对输入脉冲计数。根据设计要求,最高测量频率为 9999Hz,应采用 4 位十进制计数器。可以选用现成的用74LS90芯片集成的 10 进制计数器(如图8所示)。

图8---74LS90芯片集成的十进制计数器

2.2.9 译码器与显示器(1)译码器

本设计采用的是由74LS48芯片集成的译码器(图9)。

图9---74LS48芯片集成的译码器电路图

(2)显示系统

发光二极管(LED)由特殊的半导体材料砷化镓、磷砷化镓等制成,可以单独使用,也可以组装成分段式或点阵式LED显示器件(半导体显示器)。分段式显示器(LED数码管)由7条线段围成8字型,每一段包含一个发光二极管。外加正向电压时二极管导通,发出清晰的光,有红、黄、绿等色。只要按规律控制各发光段的亮、灭,就可以显示各种字形或符号。LED数码管有共阳、共阴之分。图10(a)是共阴式LED数码管的原理图,图10(b)是其表示符号。使用时,公共阴极接地,7个阳极a~g由74LS48集成的七段译码器来驱动(控制),如图10(c)所示。

图10---数字显示译码器

2.3 数字频率计的完整电路图及基本原理(1)数字频率计完整电路图

数字频率计由4个基本单元组成;可控制的计数锁存、译码显示系统,石英晶体振荡器及多级分频系统,带衰减器的放大整形系统和闸门电路。经过前面章节的分析设计,得出数字频率计的完整电路图(图11)如下。

图11---数字频率计完整电路图

(2)数字频率计测周期的基本原理

当被测信号的频率较低时,采用直接测频方法由量化误差引起的测频误差太大,为了提高测低频时的准确度,应先测周期Tx,然后计算fx=1/Tx。

被测信号经放大整形电路变成方波,加到门控电路产生闸门信号,如Tx=10ms,在此期间,周期为Ts的标准脉冲通过闸门进入计数器。若Ts=1us,则计数器计得的脉冲数N=Tx/Ts=10000个。若以毫秒(ms)为单位,则显示器上的读书为10.000。

以上分析可见,频率计测周期的基本原理正好与测频相反,即被测信号用来控制闸门电路的开通与关闭,标准时基信号作为计数脉冲。仿真结果分析

篇6:课程设计报告频率计

第一章设计指标

……………………………………....……...……....P2 设计指标

……………………………………………………………....第二章 系统概述

………………………………………...…..…...…....P3 2.1设计思想

…………………………………………………………..2.2可行性论证

…………………………………………….…...…...2.3各功能的组成……………………………………………………… 2.4总体工作过程

……………………………………………………… 第三章 单元电路设计与分析

………………………………...…...…...P4 3.1各单元电路的选择

……………………………………………… 3.2设计及工作原理分析

……………………………………………… 第四章 电路的组构与调试

…………………………………..…...…...P7 4.1 遇到的主要问题

…………………………………………………..4.2 现象记录及原因分析

…………………………………………….4.3 解决措施及效果

………………………………………………… 4.4 功能的测试方法、步骤、设备、记录的数据

…………………… 第五章 结束语

………………………………………………………...P11 5.1对设计题目的结论性意见及进一步改进的意向说明

…………..5.2 总结设计的收获与体会

………………………………………….附图(电路图、电路总图)………………………………………………P12

第一章设计指标

在生产实践和科学实验中,经常需要测量信号的频率。数字频率计就是用数字方式测量和显示被测信号频率的仪器。实用的数字频率可以测量多种不同的周期波形。

设计要求

要求设计一个测量TTL方波信号频率的数字系统。用按键选择测量信号频率。测量值采用四个LED七段数码管显示,并以发光二极管指示测量对象:测量的单位 HZ khz。频率测量范围有四档量程。

(1)测量结果显示4位有效数字,测量结果显示四位有效数字。测量精度为万分之一。(2)频率测量范围:0.1hz~999.9khz,分四档。

第一档:100.1hz~999.9hz

第二档:1.000khz~9.999khz

第三档:10.00khz~99。99khz

第四档:100.0khz~999.9khz(3)量程切换可以采用两个按键手动切换或由电路控制自动切换。

设计思想

数字频率计的基本原理是测量周期信号在单位时间内的信号周波数。主要电路为计数器需要控制的是计数器的输入脉冲。显然切换被测信号的时基信号的路径就可以实现数字频率记测量功能的转换。

由于测量结果以十进制显示,为了显示译码方便,一般采用十进制计数器级联构成信号测试电路。本设计要求频率测量结果以四位有效数字显示,所以可以采用四个十进制计数器级联构成莫为10000的极术器对被测信号计数,最大值为9999.四个计数器的4组BCD码译码后显示的结果。

第二章 系统概述

2.1设计思想

总体思想可以分为五块:

1.量程选择(包含小数点以及单位控制)2.单稳态触发器 3.计数器和锁存器 4.译码显示 5.分频计

2.2可行性论证

该设计通过单稳态触发器输出的清零信号和锁存信号控制译码的显示

2.3各功能的组成

量程通过操作台上的两个按键组合成2x2种组合,同时控制多个74153M芯片达到同时控制时基信号,档位,小数点,单位指示灯的选择分别反馈到分频器,单稳态触发器等各个模块的控制段,达到时基信号,档位,小数点,单位指示灯一一对应的效果然后通过计数器,锁存器,以及译码显示,最终在操作台的四位七段显示器上显示结果

第三章 单元电路设计与分析

各单元电路的选择以及原理简要分析

1.量程选择(包含小数点以及单位控制)

电路如上图,A,B两个输入端子同时对档位,小数点,以及单位控制端。

2.单稳态触发器

单稳态电路如上,输出锁存端Y,然后Y通过一个D触发器产生一个延时一个周期的清零信号,因为计数器和锁存器的级联,必先锁存有效,再对计数器进行清零,所以清零信号要延时于锁存信号。

3.计数器和锁存器

计数器如下图,用四个74160十进制计数器进位输出端RCO通过一个非门进行级联,构成一个10000进制计数器,其中第一个74160的仿真图也在下面

锁存器:锁存器采用两个74374进行对四个74160输出的16个二进制数字进行锁存

其中引出清零段和锁存端,4.译码显示

采用四位动态扫描:当选着段AB选择不同的值时,分别从四片74153M中选择出同一下标的数据

6.分频器,分频器分为两个模块,一个是DIV8,即把10MHZ的信号依次分频10,最后能够达到0.1HZ的频率。

另一个是通过芯片达到任意进制的分频器(基础要求当中的8分频和四分频)

第四章 电路的组构与调试

4.1 遇到的主要问题

我在这个设计电路当中,设计,调试比较顺利,唯一让我陷入困境的问题是,当输入某一频率时,显示器不能直接显示最终结果。

4.2 现象记录及原因分析

问题现象1:显示器乱码

问题现象1:显示器一直显示0 问题现象2:例如输入为500赫兹频率的信号时,显示器从0000由一递增开始快速跳到500然后瞬间清零,达不到锁存目的。分析:锁存器输出段和显示器的连接端口不对,并且电路当中的锁存器的锁存信号没有在应该有效的时候令锁存器达到锁存目的,故我着重检查计数—锁存电路

4.3 解决措施及效果

对于问题一,在仔细对照大课题前的四位动态扫描小实验当中的引脚接入,发现,一个74160所输出的4为二进制码并不是全部接入显示电路当中的同一片74153M芯片,导致乱码,而是应该分别接入四片74153M芯片。在重新接入对应的引脚后,显示器不再显示乱码,却出现问题现象二

对于问题现象2。在仔细检查电路之后,发现单稳态输出的锁存通过非门接入锁存器锁存段导致显示一直存在于0000,而后去掉了非门,结果照成问题现象3.针对问题现象3 措施1.修改单稳态电路,一共设计了以下的新的单稳态方案

仿真

:虽然是清零信号延时于锁存信号,但理论上会带来一定的误差,不过应该还是能大致正确显示频率数,结果接入新的单稳态芯片后,发现问题没有解决,依旧是显示器从0000由一递增开始快速跳到500然后瞬间清零,达不到锁存目的。

措施二,发现74373的锁存端是高电平有效,于是在高频率的信号输入下,锁存的时间跟清零时间非常接近导致锁存失败。提出新的才想:如果换成74374锁存信号上升沿有效的锁存器。会不会解决问题,于是把原先锁存电路当中的74373换成74373.结果正常实现。问题解决,在全部连接入其他部分的电路后,达到课程设计的基础要求

拓展要求方面

对于拓展要求二当中的实现多种频率信号,开始觉得采用不同分频的分频器就能达到效果,于是利用741690的置位端以及4个按钮达到多分频的目的。结果调试发现,某些频率的第一位有效数字重复,达不到1-9的目的。

于是采用74161 十六进制计数器进行分频,发现能实现1-9当中大部分的情况,唯独“4”不能出现,分析发现,74161进制达不到25分频。于是提出了以下两个解决方案

方案一:采用两片74161进行级联,构成16X16 进制分屏器,然后最高位都置为1,低五位通过5个按键进行组合。能够组合出25进制分频器,达到出现“4”的 效果。但仍旧发现依旧显示不出“4”的效果,失败。

方案二:在原先一片74161的情况下,输出信号通过一个D触发器,在次达到二分频的效果,但在纸上演示的时候,发现,“4”能够输出,但采用这个方案之后,“9”却不能输出了。方案二失败。

4.4 功能的测试方法、步骤、设备、记录的数据

1.四位动态显示器的测试方法:遮住显示屏,采用自己设计的组合的真值表进行组合,达到自己想要的输出字符。

2.对于计数器-锁存器-显示器部分,先输入个低频测试信号,例如1hz,观察显示器是否从0一直跳到9,并在低位由9变0的时候,高位进1成功。3.接入单稳态触发器,让清零段和锁存端接入单稳态的输出信号,并输入500赫兹看能否正确稳定显示0500 4.接入量程控制,切换AB键组合看能否显示0.500 00.50 000.5,并对应的单位指示灯是否正确亮灭。

5.最后电路。通过一个外接的函数信号发生器,调节在四档量程内的频率,查看显示器的显示数值跟信号发生器的显示是否一致 附上基础要求以及拓展要求2的测试表格:

第五章 结束语

5.1对设计题目的结论性意见及进一步改进的意向说明

这次的设计题目其实很有综合性,能够用上我们在数电课上所学的大部分知识,但还有一些知识点也应该涉及到,例如:TTL门的应用,时序逻辑电路的运用,以及ROM的编程引用,这样能加强我们所学知识的联系,运用,实践的能力,并应该整体电路以及设计方案都让学生自己设计,这样我相信能够涌现出更多有新奇创意的设计方案,百花齐放。进一步改进:其实对于拓展要求1,我们可以构思一个时序逻辑电路,通过画状态转换图,状态转换表等一系列基础分析方法,构建出合理电路。对于拓展要求二,其实我们可以运用ROM的编程达到设计要求,这有待我们进一步的思考,学习和实践。

付上各个部分的电路图(详细电路图在第三章)集成该部分的芯片图: 1.div8

2.7seg(七段显示)

3.单稳态触发器

4.计数器(JSQ)

5.七段显示芯片

6.小数点,量程,单位指示灯控制芯片

7.分频器芯片

8.基础要求总电路

9.扩展要求芯片(具体电路图在第四章)

10.拓展要求电路总图

上一篇:历届人大会议的意义下一篇:先进制造业发展研究