单片机课程设计报告——智能数字频率计

单片机课程设计报告——智能数字频率计
单片机课程设计报告——智能数字频率计

单片机原理课程设计报告题目:智能数字频率计设计

专业:信息工程

班级:信息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所示)。其中脉

冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等

。利用单片机的定时/计数T0、T1的定时、计数

于被测频率f

x

功能产生周期为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!='\0')

{

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; //定时器0 200us

TL0=0x38;

TH1=0xff; //计数器1 100脉冲

TL1=0x9c;

TR0=1; //启动定时器0和计数器1

TR1=1;

while(yichu==0); //如果没有溢出一直循环

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

TR1=0;

if(yichu==1) //计数器先溢出:在200ms内测得的脉冲过多,说明频率较高(f>500khz)

{fenpin=16; //转为测16分频后的频率

cepin();}

else //定时器先溢出:100个脉冲的时间比较短,即频率较低,可以减少分频数

{

yichu=0;

B153=0;

A153=1;

TH0=0xfc; //定时器0 1ms

TL0=0x18;

TH1=0xff; //计数器1 100个脉冲

TL1=0x9c;

TR0=1; //启动定时器0和计数器1

TR1=1;

while(yichu==0); //如果没溢出一直循环

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

TR1=0;

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

{fenpin=4; //转为测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--- "); break;

case K2: flag=Peri; GotoXY(0,1); Print(" ---Cycle--- "); break;

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... ");

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 仿真软件的相关知识,成功地实现了数字频率计的设计。综合调试结果表明,本文提出的设计与传统测频系统相比,具有体积小、成本低、低功耗、精度高等优点,适用于各种测量电路。

本次设计的低频测量部分及高频测量部分分别采用测频、测周的测量方法,并通过计算精确计数,故测量误差很小,再加上智能分频使单片机的测量带宽提高了一千倍以上,仅用几个芯片搭成的低成本简单电路,使该频率计拥有了不错的性价比,且完全可以满足一般的测量需求。

单片机课程设计报告模板资料

哈尔滨远东理工学院 课题名称 专业班级 学号 学生姓名 指导教师 2015年10月14日

1、例举设计过程中遇到的问题及其解决方法(至少两例)。答:(1)问题说明: 解决方法: (2)问题说明: 解决方法: 2、教师现场提的问题记录在此(不少于2个问题)。

目录 1 设计任务 (1) 2设计方案 (2) 2.1任务分析 (2) 2.2方案设计 (2) 3 系统硬件设计 (3) 3.1时钟电路设计 (3) 3.2复位电路设计 (3) 3.3 灯控制电路设计 (3) 3.4 倒计时显示电路设计 (4) 3.5 按键控制电路设计 (5) 4 系统软件设计 (6) 4.1 1S定时 (6) 4.2 定时程序流程 (6) 4.3交通灯的设计流程图 (6) 4.4定时器0 及中断响应 (7) 5仿真与性能分析 (8) 6心得体会 (9) 参考文献 (10) 附录1 系统原理图 .......................................................................错误!未定义书签。附录2 系统PCB图 .....................................................................错误!未定义书签。附录3 程序清单 .. (11) II

1 设计任务 支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。用红、绿、黄发光二极管作信号灯。如图1.1所示。设东西向为主干道,南北为支干道。 1. 基本要求 (1) 主干道处于常允许通行的状态,支干道有车来时才允许通行。主干道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯。 (2) 主、支干道均有车时,两者交替允许通行,主干道每次放行30秒,支干道每次放行20秒,设立30秒、20秒计时、显示电路。 (3) 在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡。黄灯亮时,原红灯按1Hz 的频率闪烁。 (4) 要求主支干道通行时间及黄灯亮的时间均可在0~99秒内任意设置。 2. 选做 (1) 可设置紧急按钮,在出现紧急情况时可由交警手动实现全路口车辆禁行而行人通行状态,即主干道和支干道均为红灯亮。 (2) 实现绿波带。所谓‘绿波带’,是指在一定路段,只要按照规定时速,就能一路绿灯畅行无阻。“绿波带”将根据道路车辆行驶的速度和路口间的距离,自动设置信号灯的点亮时间差,以保证车辆从遇到第一个绿灯开始,只要按照规定速度行驶,之后遇到的信号灯将全是绿灯。

简易数字频率计设计

简易数字频率计设计报告 设计内容: 1、测量信号:方波、正弦波、三角波; 2、测量频率范围: 1Hz~9999Hz; 3、显示方式:4位十进制数显示; 4、时基电路由由555构成的多谐振荡器产生(当标准时间的精度要求较高时,应通过晶体振荡器分频获得); 5、当被测信号的频率超出测量范围时,报警。 设计报告书写格式: 1、选题介绍和设计系统实现的功能; 2、系统设计结构框图及原理; 3、采用芯片简介; 4、设计的完整电路以及仿真结果; 5、Protel绘制的电路原理图; 6、制作的PCB; 7、课程设计过程心得体会(负责了哪些内容、学到了什么、遇到的难题及解决方法等)。 电子课程设计过程: 系统设计→在Multisim2001下仿真→应用Protel 99SE绘制电路原理图→制作PCB →撰写设计报告

简易数字频率计课程设计报告 第一章技术指标 1.1整体功能要求 1.2系统结构要求 1.3电气指标 1.4扩展指标 1.5设计条件 第二章整体方案设计 2.1 算法设计 2.2 整体方框图及原理 第三章单元电路设计 3.1 时基电路设计 3.2闸门电路设计 3.3控制电路设计 3.4 小数点显示电路设计 3.5整体电路图 3.6整机原件清单 第四章测试与调整 4.1 时基电路的调测 4.2 显示电路的调测 4-3 计数电路的调测 4.4 控制电路的调测 4.5 整体指标测试 第五章设计小结 5.1 设计任务完成情况 5.2 问题及改进

5.3心得体会附录 参考文献

第一章技术指标 1.整体功能要求 频率计主要用于测量正弦波、矩形波、三角波和尖脉冲等周期信号的频率值。其扩展功能可以测量信号的周期和脉冲宽度。 2.系统结构要求 数字频率计的整体结构要求如图所示。图中被测信号为外部信号,送入测量电路进行处理、测量,档位转换用于选择测试的项目------频率、周期或脉宽,若测量频率则进一步选择档位。 数字频率计整体方案结构方框图 3.电气指标 3.1被测信号波形:正弦波、三角波和矩形波。 3.2 测量频率范围:分三档: 1Hz~999Hz 0.01kHz~9.99kHz 0.1kHz~99.9kHz 3.3 测量周期范围:1ms~1s。 3.4 测量脉宽范围:1ms~1s。 3.5测量精度:显示3位有效数字(要求分析1Hz、1kHz和999kHz的测量误 差)。 3.6当被测信号的频率超出测量范围时,报警. 4.扩展指标 要求测量频率值时,1Hz~99.9kHz的精度均为+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所示)。其中脉 冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等 。利用单片机的定时/计数T0、T1的定时、计数 于被测频率f x 功能产生周期为1s的时间脉冲信号,则门控电路的输出信号持图3-1

智能小车单片机课程设计报告

题目: 智能小车设计 打开命令行终端的快捷方式: ctr+al+t:默认的路径在家目录 ctr+shift+n:默认的路径为上一次终端所处在的路径. linux@ubuntu:~$ linux:当前登录用户名. ubuntu:主机名 :和$之间:当前用户所处在的工作路径. windows下的工作路径如C:\Intel\Logs linux下的工作路径是:/.../..../ ~:代表的是/home/linux这个路径.(家目录). ls(list):列出当前路径下的文件名和目录名. ls -a(all):列出当前路径下的所有文件和目录名,包括了隐藏文件. .:当前路径 ..:上一级路径 ls -l:以横排的方式列出文件的详细信息 total 269464(当前这个路径总计所占空间的大小,单位是K) drwxr-xr-x 3 linux linux 4096 Dec 4 19:16 Desktop 第一个位置:代表的是文件的类型. linux系统下的文件类型有以下几种. b:块设备文件 c:字符设备文件 d:directory,目录 -:普通文件. l:连接文件. s:套接字文件. p:管道文件. rwxr-xr-x:权限 r:读权限-:没有相对应的权限 w:写权限

x:可执行权限 修改权限: chmod u-或者+r/w/x 文件名 chmod g-或者+r/w/x 文件名 chmod o-或者+r/w/x 文件名 第一组:用户权限 第二组:用户组的权限 第三组:其他用户的权限. chmod 三个数(权限) 文件名 首先根据你想要的权限生成二进制数,再根据二进制数转换成十进制的三位数 rwxr-x-wx 111101011 7 5 3 chmod 753 文件名 rwx--xr-x 第二个位置上的数字:对应目录下的子文件个数,如果是非目录,则数字是1 第三个位置:用户名(文件创造者). 第四个位置:用户组的名字(前边的用户所处在的用户组的名字). 第五个位置:对应文件所占的空间大小(单位为b) 第六~八个位置:Dec 4 19:16时间戳(最后一次修改文件的时间) 最后一个位置:文件名 操作文件: 1.创建一个普通文件:touch 文件名 2.删除一个文件:rm(remove) 文件名 3.新建一个目录:mkdir(make directory) 目录名 递归创建目录:mkdir -p 目录1/目录2/目录3 4.删除一个目录:rmdir 目录名.//仅删除一个空目录 rm -rf 目录名//删除一个非空目录 5.切换目录(change directory):cd 路径 linux下的路径分两种 相对路径:以.(当前路径)为起点. 绝对路径:以/(根目录)为起点, 用相对路径的方式进入Music:cd ./Music 用绝对路径的方式进入Desktop:cd /home/linux/Desktop 返回上一级:cd ..

数电课程设计报告-数字频率计

数电课程设计报告:频率计 目录 一、设计指标 二、系统概述 1.设计思想 2.可行性论证 3.工作过程 三、单元电路设计及分析 1.器件选择 2.设计及工作原理分析 四、电路的组构及调试 1.遇到的问题 2.现象记录及原因分析 3.解决及结果 4.功能的测试方法、步骤、设备、记录的数据 五、总结 1.体会 2.电路总图 六、参考文献 一、设计指标 设计指标:要求设计一个测量TTL方波信号频率的数字系统。测试值采用4个LED七段数码管显示,并以发光二极管只是测量对象(频率)的单位:Hz、kHz。

频率的测量范围有四档量程。 1)测量结果显示四位有效数字,测量精度为万分之一。 2)频率测量范围:100.1Hz——999.9kHz,分为: 第一档: 100.0Hz——999.9Hz 第二档: 1.000kHz——9.999kHz 第三档: 10.00kHz——99.99kHz 第四档: 100.0kHz——999.9kHz 3)量程切换可以采用两个按键SWB、SWA手动切换。 扩展要求: 一、当被测频率大于999.9kHz,超出最大值时,设置亮一个警灯,并同时发出报警声音。 二、自动切换量程 提示: 1.计数器计到9999时,产生溢出信号CO,启动量程加档。 2.显示不足4位有效数字时量程减档。 三、各量程输出信号的频率最高位有效数字为1、2、3、4、5、6、7、8、9。 二、系统概述 1.设计思想 周期性信号频率可通过记录信号在1s内的周期数来确定其频率。

累计标准时间Ts中被测信号的脉冲个数Nx,被测信号频率:fx≈Nx/Ts 测量时间Ts选择:由于测量时间Ts需要根据被测信号的频率切换,所以通常对振荡时钟进行分频以获得不同的定时时间。 采样定时、显示锁存、计数器清零的控制时序波形图 2.可行性论证 用计数器实现记录周期数的功能;用时基信号产生计数时间作为采样时间;用四位动态扫描通过数码管显示结果;因为如果计数器直接把数据输入到数码管显示,那么数码管的数据就会不断变化,累计增加的情况,所以采用锁存器,在每个时间信号内,通过一个高电平使能有效,将计数器的数值锁存到寄存器或者锁存器;为了不要让每次锁存的数据会比上次

单片机数字频率计设计

目录 第一章摘要 (2) 第二章系统总体方案设计 (2) 2.1 总体思路设计 (2) 2.2 测频原理 (3) 第三章系统硬件设计 (4) 3.1 AT89S51单片机引脚的介绍 (4) 3.2 锁存器74HC573引脚的介绍 (6) 3.3 译码器74HC138引脚介绍 (7) 3.4 放大整形模块 (7) 3.5 显示模块设计 (8) 3.6 键盘电路设计 (9) 3.7 复位电路和时钟产生电路设计 (10) 3.8 +5V电源设计 (11) 3.9 系统整体原理图 (13) 第四章系统软件设计 (13) 4.1 主程序流程图 (13) 4.2子程序流程图 (14) 4.2.1中断服务子程序 (14) 4.2.2 显示子程序设计 (15) 4.2.3量程转换程序 (16) 第五章设计总结与心得体会 (17) 参考文献 (19) 附录 (20) 1、源程序 (20) 2、硬件电器总原理图 (25)

第一章摘要 在单片机技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率计的测量就显得更为重要,测量频率的方法有多种,其中基于单片机的数字频率计时器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。本次课程设计以AT89S51单片机为控制核心,应用AT89S51单片机、单片机的I/O端口外扩驱动器74HC573和74HC138、LED动态显示等实现对外部信号频率进行准确计数的设计。电路图设计使用protel绘图软件完成,软件设计方面使用单片机汇编或C语言对各个模块进行编程,最后通过综合测试,实现满足要求的设计方案。频率测量有两种方法:一是直接测频法,即在一定时间内测量被测信号的个数;而是测周法。直接测频法适用于高频信号的频率测量,测周法适用于低频信号的频率测量。 关键词:单片机;频率计;测量 第二章系统总体方案设计 设计要求: 使用单片机的定时器/计数器功能,设计频率测量装置。 (1)直接采用AT89S51单片机的I/O端口外扩驱动器,实现LED动态扫描驱动。(2)采用6位数码管显示输入单片机的外部脉冲频率。 (3)当被测频率fx<100Hz时,采用测周法,显示频率XXX.XXX;当被测频率fx>100Hz 时,采用测频法,显示频率XXXXXX。 (4)利用键盘分段测量和自动分段测量。 (5)完成单脉冲测量,输入脉冲宽度范围是100μs-0.1s,低四位显示脉冲宽度,单位为μs。 2.1 总体思路设计 以单片机AT89S51为核心,利用单片机AT89S51的计数/定时器(T1和T0)的功能来实现频率的计数,并且利用单片机的动态扫描把测出的数据送到数字显示电路显示。利用74HC573驱动数码管,显示电路共由六位LED数码管组成,总体原理框图如图2.1所示。

课程设计报告(频率计)

设计题目:数字频率计的设计与制作 一、课程设计的主要内容与目的 1. 主要内容:数字频率计的主要功能是测量周期信号的频率,频率是单位时间内信号 发生周期变化的次数,如果我们能在给定的1S时间内对信号波形计数,并将计数结果显示出来,就能读取被测信号的频率。数字频率计首先必须获得相对稳定与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号,然后通过计数器计算这一段时间间隔内的脉冲个数,将其换算后显示出来,这就是数字频率计的基本原理。 从数字频率计的基本原理出发,根据设计要求,得到如图1所示的电路框图。 图1 2. 设计目的:(1)掌握数字频率计的工作原理 (2)根据课程设计,熟悉一般产品设计的流程和方法。 (3)重点掌握数字频率计设计的计数部分。 二、主要技术指标 1.频率测量范围:10~9999HZ。 2.输入信号波形:任意周期信号,输入电压幅度>300mv. 3.电源:220V,50HZ。 系统框图中各部分的功能及实现方法 (1)电源与整流稳压电路 框图中的电源采用50Hz的交流市电。市电被降压、整流、稳压后为整个系统提供直流电源。系统对电源的要求不高,可以采用串联式稳压电源电路来实现。 (2)全波整流与波形整形电路 本频率计采用市电频率作为标准频率,以获得稳定的基准时间。按国家标准,市电的频率漂移不能超过0.5Hz,即在1%的范围内。用它作普通频率计的基准信号完全能满足系统的要求。全波整流电路首先对50Hz交流市电进行全波整流,得到如图2(a)所示100Hz的全波整流波形。波形整形电路对100Hz信号进行整形,使之成为如图2(b)所示100Hz的矩形波。波形整形可以采用过零触发电路将全波整流波形变为矩形波,也可采用施密特触发器进行整形。

单片机课程设计报告

课程设计报告 课程名称单片机原理及应用 设计题目电子琴的设计 专业班级自动化1142 姓名周太永 学号1104421242 指导教师蔡长青张卓 起止时间2014.6.23-2014.7.11 成绩评定 考核内容设计 表现 设计 报告 答辩 综合 评定 成绩 电气与信息学院

2013/2014学年第二学期 《单片机控制系统设计与调试》课程设计任务书 指导教师:蔡长青班级:自动化1141、2班 地点:机房、单片机实验室(实训中心415) 课程设计题目:基于单片机原理的电子琴设计 一、课程设计目的 1.灵活运用单片机的基础知识,依据课程设计内容,能够完成从硬件电路图设计, 到PCB制版,再到软件编程及系统调试实现系统功能,完成课程设计,加深对单片机基础知识的理解,并灵活运用,将各门知识综合应用。 2.能够上网查询器件资料,培养对新知识新技术的独立的学习能力和应用能力。 3.独立完成一个小的系统设计,从硬件设计到软件设计,增强分析问题、解决问 题的能力,为日后的毕业设计及科研工作奠定良好的基础。 二、课程设计内容(包括技术指标) 1.焊接。认真、仔细,避免缺焊、漏焊。 2.频率计算。会计算脉冲值与频率的关系。 3.工作过程。开机时,第一步是对定时器T0进行初始化,设定它的工作状态(对 于本系统将T0设定为工作方式0);然后判断是否有键按下,如果没有按键按下,继续判断,如果有按键按下,则判断是哪个键按下;再根据按键的功能将计数初值装入定时器T0中中并启动T0,当T0定时完毕后,重新装入计数初值继续定时并将P3.3取反,再次定时完毕后再一次的装入计数初值 继续定时并将P3.3取反,一直循环此操作直到按键释放为止,按键释放后 停止T0工作并再次判断是否又有按键按下,并继续执行以前的过程。 三、时间安排 1.布置任务、查资料1天 2.硬件电路图设计及PCB制版3天 3.硬件电路图及PCB制版验收、电路板焊接1天 4.软件编程设计3天 5.系统调试3天 6.调试验收1天 7.完成设计报告3天 四、基本要求 1.画出硬件电路图,完成PCB制版; 2.画出软件流程图,编写程序(C51语言/汇编语言); 3.完成系统调试; 4.提交设计报告。

数字频率计_课程设计报告

电气与信息工程学院 数字频率计 设计报告书 前言 摘要:在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的 测量就显得更为重要。测量频率的方法有多种,其中数字计 数器测量频率具有精度高、使用方便、测量迅速,以及便于 实现测量过程自动化等优点,是频率测量的重要手段之一。 其原理为通过测量一定闸门时间内信号的脉冲个数。本文阐 述了设计了一个简单的数字频率计的过程。 关键词:频率计,闸门,逻辑控制,计数-锁存

目录 第一章设计目的 第二章设计任务和设计要求 2.1 设计任务及基本要求 2.2.系统结构要求 第三章系统概述 3.1概述 3.2设计原理及方案 第四章单元电路设计及分析 4.1 时基电路 4.2逻辑控制电路 4.3计数电路 4.4锁存电路 4.5显示译码电路 4.6 闸门电路 第五章安装与调试过程 5.1 电路的安装过程 5.2 电路的调试过程 5.3 出现的问题及解决办法 第六章结果分析 第七章收获与体会

第八章元件清单 第九章实现结果实物图 附录A 参考文献 第一章 设计目的: 1.了解数字频率计测量频率与测量周期的基本原理; 2.熟练掌握数字频率计的设计与调试方法及减小测量误 差的方法。 3.本设计与制作项目可以进一步加深我们对数字电路应 用技术方面的了解与认识,进一步熟悉数字电路系统设计、制作与调试的方法和步骤。 4.针对电子线路课程要求,对我们进行实用型电子线路设 计、安装、调试等各环节的综合性训练,培养我们运用课程中所学的理论与实践紧密结合,独立地解决实际问题的能力。

第二章 设计任务及要求: 2.1设计任务及基本要求: 设计一简易数字频率计,其基本要求是: 1)测量频率范围0~9999Hz; 2)最大读数9999HZ,闸门信号的采样时间为1s;. 3)被测信号可以是正弦波、三角波和方波; 4)显示方式为4位十进制数显示; 5)完成全部设计后,可使用EWB进行仿真,检测试验设计电路的正确性。 2.2.系统结构要求 数字频率计的整体结构要求如图所示。图中被测信号为外部信号,送入测量电路进行处理、测量。 波形 整 形 计 数 器 数 码 显 示 振荡 电 路分 频 器 控 制 门 数 据 锁 存 器 显 示 译 码 器 被测 信 号

基于51单片机的数字频率计_毕业设计

毕业论文声明 本人郑重声明: 1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。除了特别加以标注地方外,本文不包含他人或其它机构已经发表或撰写过的研究成果。对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。本人完全意识到本声明的法律结果由本人承担。 2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查阅和借阅。本人授权大学学院可以将此文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。 3.若在大学学院毕业论文审查小组复审中,发现本文有抄袭,一切后果均由本人承担,与毕业论文指导老师无关。 4.本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。论文中凡引用他人已经发布或未发表的成果、数据、观点等,均已明确注明出处。论文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究成果做出重要贡献的个人和集体,均已在论文中已明确的方式标明。 学位论文作者(签名): 年月

关于毕业论文使用授权的声明 本人在指导老师的指导下所完成的论文及相关的资料(包括图纸、实验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属华北电力大学。本人完全了解大学有关保存,使用毕业论文的规定。同意学校保存或向国家有关部门或机构送交论文的纸质版或电子版,允许论文被查阅或借阅。本人授权大学可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存或编汇本毕业论文。如果发表相关成果,一定征得指导教师同意,且第一署名单位为大学。本人毕业后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为大学。本人完全了解大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存或汇编本学位论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入学校有关数据 库和收录到《中国学位论文全文数据库》进行信息服务。在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。 论文作者签名:日期: 指导教师签名:日期:

简易频率计课程设计

目录 1 技术要求及系统结构 (1) 1.1技术要求 (1) 1.2系统结构 (1) 2设计方案及工作原理 (2) 2.1 算法设计 (2) 2.2 工作原理 (3) 3组成电路设计及其原理 (6) 3.1时基电路设计及其工作原理 (6) 3.2闸门电路设计 (7) 3.3控制电路设计 (8) 3.4小数点控制电路 (9) 3.5整体电路 (10) 3.6 元件清单 (10) 4设计总结 (11) 参考文献 (11) 附录1 (12) 附录2 (17)

摘要 简易数字频率计是一种用四位十进制数字显示被测信号频率(1Hz—100KHz)的数字测量仪器.它的基本功能是测量正弦波,方波,三角波信号,有四个档位(×1,×10,×100,×1000),并能使用数码管显示被测信号数据,本课程设计讲述了数字频率计的工作原理以及其各个组成部分,记述了在整个设计过程中对各个部分的设计思路、对各部分电路设计方案的选择、元器件的筛选、以及在设计过程中的分析,以确保设计出的频率计成功测量被测信号。 关键词:简易数字频率计十进制信号频率数码管工作原理 1技术要求及结构 本设计可以采用中、小规模集成芯片设计制作一个具有下列功能的数字频率测量仪。 1.1技术要求 ⑴要求测量频率范围1Hz-100KHz,量程分为4档,即×1、×10、×100、×1000。 ⑵要求被测量信号可以是正弦波、三角波和方波。 ⑶要求测试结果用数码管表示出来,显示方式为4位十进制。 1.2 系统结构 数字频率计的整体结构要求如图1-1所示。图中被测信号为外部信号,送入测量电路进行处理、测量,档位转换用于选择测试的项目------频率、周期或脉宽,若测量频率则进一步选择档位。 图1-1 数字频率计系统结构框图 2 设计方案及工作原理 2.1 算法设计

单片机课程设计报告模板

单片机系统课程设计报告 专业:自动化 学生姓名: 学号: 指导教师: 完成日期:2011 年 3 月17 日

目录 1 设计任务和性能指标 (3) 1.1设计任务............................................................................ 错误!未定义书签。 2 设计方案 (4) 2.1任务分析 (4) 2.2方案设计 (4) 3 系统硬件设计 (5) 3.1时钟的电路设计 (5) 3.2复位电路设计 (5) 3.3灯控电路设计 (5) 3.4倒计时电路设计 (6) 3.5按键控制电路设计 (7) 4 系统软件设计 (8) 4.11秒定时 (8) 4.2定时程序流程 (8) 4.3交通灯的设计流程图 (9) 4.4定时器0与中断响应 (10) 5 仿真及性能分析 (10) 5.1仿真结果图 (11) 5.2仿真结果与分析 (12) 6 心得体会 (13) 参考文献 (14) 附录1 系统原理图 (15) 附录2 系统PCB图 .................................................................. 错误!未定义书签。附录3 程序清单 (17)

1.1设计任务 利用单片机完成交通信号灯控制器的设计,该交通信号灯控制器由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。用红、绿、黄发光二极管作信号灯。如图5.1所示。设东西向为主干道,南北为支干道。 图5.1 交通灯示意图 1. 基本要求 (1) 主干道处于常允许通行的状态,支干道有车来时才允许通行。主干 道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯。 (2) 主、支干道均有车时,两者交替允许通行,主干道每次放行30秒, 支干道每次放行20秒,设立30秒、20秒计时、显示电路。 (3) 在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡。 黄灯亮时,原红灯按1Hz 的频率闪烁。 (4) 要求主支干道通行时间及黄灯亮的时间均可在0~99秒内任意设置。 2. 选做 (1) 可设置紧急按钮,在出现紧急情况时可由交警手动实现全路口车辆 禁行而行人通行状态,即主干道和支干道均为红灯亮。 (2) 实现绿波带。所谓‘绿波带’,是指在一定路段,只要按照规定时速, 就能一路绿灯畅行无阻。“绿波带”将根据道路车辆行驶的速度和路口间的距离,自动设置信号灯的点亮时间差,以保证车辆从遇到第一个绿灯开始,只要按照规定速度行驶,之后遇到的信号灯将全是绿灯。 南 北 东 西

数字频率计课程设计报告

《数字频率计》技术报告 一、问题的提出 在传统的电子测量仪器中,示波器在进行频率测量时测量精度较低,误差较大。频谱仪可以准确的测量频率并显示被测信号的频谱,但测量速度较慢,无法实时快速地跟踪捕捉到被测信号频率的变化。而频率计则能够快速准确的捕捉到被测信号频率的变化。 在传统的生产制造企业中,频率计被广泛的应用在生产测试中。频率计能够快速的捕捉到晶体振荡器输出频率的变化,用户通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准。在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。 数字频率计是一种用数字显示的频率测量仪表,它不仅可以测量正弦信号、方波信号和尖脉冲信号的频率,而且还能对其他多种物理量的变化频率进行测量,诸如机械振动次数,物体转动速度,明暗变化的闪光次数,单位时间里经过传送带的产品数量等等,这些物理量的变化情况可以由有关传感器先转变成周期变化的信号,然后用数字频率计测量单位时间内变化次数,再用数码显示出来。 二、解决技术问题及指标要求 1、技术指标

被测信号:正弦波、方波或其他连续信号; 采样时间:1秒(0.1秒、10秒); 显示时间:1秒(2秒、3秒......); LED显示; 灵敏度:100mV; 测量误差:±1H z。 数字频率计是一种专门对被测信号频率进行测量的电子测量仪器。其最基本的工作原理为:当被测信号在特定时间段T内的周期个数为N时,则被测信号的频率f=N/T。一般T=1s,所以应要求定时器尽量输出为1s的稳定脉冲。 2、设计要求 可靠性:系统准确可靠。 稳定性:灵敏度不受环境影响。 经济性:成本低。 重复性:尽量减少电路的调试点。 低功耗:功率小,持续时间长。 三、方案可行性分析(方案结构框图) 1、原理框图

单片机简易频率计课程设计

前言 (3) 一、总体设计 (4) 二、硬件设计 (6) AT89C51单片机及其引脚说明: (6) 显示原理 (8) 技术参数 (10) 电参数表 (10) 时序特性表 (11) 模块引脚功能表 (12) 三、软件设计 (12) 四、调试说明 (15) 五、使用说明 (17) 结论 (17) 参考文献 (18)

附录 (19) Ⅰ、系统电路图 (19) Ⅱ、程序清单 (20)

前言 单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用在生活中至关重要。 随着电子信息产业的不断发展,信号频率的测量在科技研究和实际应用中的作用日益重要。传统的频率计通常是用很多的逻辑电路和时序电路来实现的,这种电路一般运行缓慢,而且测量频率的范围比较小.考虑到上述问题,本论文设计一个基于单片机技术的数字频率计。首先,我们把待测信号经过放大整形;然后把信号送入单片机的定时计数器里进行计数,获得频率值;最后把测得的频率数值送入显示电路里进行显示。本文从频率计的原理出发,介绍了基于单片机的数字频率计的设计方案,选择了实现系统得各种电路元器件,并对硬件电路进行了仿真。

一、总体设计 用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量. 所谓“频率”,就是周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔T内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率f x。时间基准信号发生器提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等于1s.闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。秒信号结束时闸门关闭,计数器停止计数。由于计数器计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。 本系统采用测量频率法,可将频率脉冲直接连接到AT89C51的T0端,将T/C1用做定时器。T/C0用做计数器。在T/C1定时的时间里,对频率脉冲进行计数。在1S定时内所计脉冲数即是该脉冲的频率。见图1: 图1测量时序图 由于T0并不与T1同步,并且有可能造成脉冲丢失,所以对计数器T0做一定的延时,以矫正误差。具体延时时间根据具体实验确定。 根据频率的定义,频率是单位时间内信号波的个数,因此采用上述各种方案

简易数字频率计课程设计

简易数字频率计课程设计 Prepared on 22 November 2020

简易频率计设计 摘要 在数字电路中,数字频率计属于时序电路,它主要由具有记忆功能的触发器构成。在计算机及各种数字仪表中,都得到了广泛的应用。在CMOS电路系列产品中,数字频率计是用量最大、品种很多的产品,是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器,并且与许多电参量的测量方案、测量结果都有十分密切的关系,在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。测量频率的方法有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。常用的频率测量方法有测频法、测周法、测周期/频率法、F/V与A/D法。本文阐述了用测频法构成的数字频率计 关键字:时序控制频率,数字频率计,555电路 目录

1绪论 课题描述 频率是周期信号每秒钟内所含的周期数值。输入电路:由于输入的信号可以是正弦波,方波。而后面的闸门或计数电路要求被测信号为矩形波,所以需要设计一个整形电路则在测量的时候,首先通过整形电路将正弦波或者三角波转化成矩形波。在整形之前由于不清楚被测信号的强弱的情况。所以在通过整形之前通过放大衰减处理。当输入信号电压幅度较大时,通过输入衰减电路将电压幅度降低。当输入信号电压幅度较小时,前级输入衰减为零时若不能驱动后面的整形电路,则调节输入放大的增益,时被测信号得以放大。通过时基电路及控制电路锁存器将最终频率稳定的显示在数码管上[1]。 设计任务与要求 1.频率测量范围:10~9999Hz; 2.输入电压幅度>300mV; 3.输入信号波形:任意周期信号; 4.显示位数:4 位; 5.电源: 220V 、 50Hz; 6.对所设计电路进行仿真分析。 7.编写设计报告,写出设计与制作的全过程,附上有关资料和图纸,有心得体会。 基本工作原理及框图 建议频率计电路框图如图1所示。

单片机课程设计报告书模板

. .. . .. .. 西南科技大学 2011级微机原理与接口技术 课程设计报告 课题名称微机原理与接口技术 姓名 学号 院、系、部制造科学与工程学院 专业 指导教师 2014年月日

目录 一、绪言 (1) 二、系统设计 (1) 2.1系统整体流程图 (1) 2.2日历时钟的控制方案论证 (1) 2.3单片机的选择方案论证 (2) 2.4键盘选择方案论证 (2) 2.5显示模块的选择方案论证 (2) 2.6模块的选择方案论证 (2) 三、硬件电路设计 (2) 3.1日历时钟的控制电路图 (2) 3.2行列式键盘的设计 (3) 3.3数码管显示电路的设计 (3) 3.4蜂鸣器驱动电路的设计 (4)

3.5主要元器件选择 (4) 四、程序流程图 (5) 五、c语言程序设计 (5) 六、日历时钟的控制器仿真 (19) 6.1K e i l调试 (19) 6.2P r o t e u s调试 (19) 七、结束语 (20) 八、参考文献 (21) 1、绪言 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。电子时钟是现代社会中的主要计时工具之一,广泛应用于手机,电脑,汽车等社会生活需要的各个方面,及对时间有要求的场合。本设计采用AT89C51单片机作为主要核心部件,附以上电复位电路,时钟电路及按键调时电路组成。数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。

基于51单片机的数字频率计的设计

1 前言 频率测量是电子学测量中最为基本的测量之一。由于频率信号抗干扰性强,易于传输,因此可以获得较高的测量精度。随着数字电子技术的发展,频率测量成为一项越来越普遍的工作,测频原理和测频方法的研究正受到越来越多的关注。 1.1频率计概述 数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号、方波信号及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。传统的频率计采用测频法测量频率,通常由组合电路和时序电路等大量的硬件电路组成,产品不但体积大,运行速度慢而且测量低频信号不准确。本次采用单片机技术设计一种数字显示的频率计,测量准确度高,响应速度快,体积小等优点。 1.2频率计发展与应用 在我国,单片机已不是一个陌生的名词,它的出现是近代计算机技术的里程碑事件。单片机作为最为典型的嵌入式系统,它的成功应用推动了嵌入式系统的发展。单片机已成为电子系统的中最普遍的应用。单片机作为微型计算机的一个重要分支,其应用范围很广,发展也很快,它已成为在现代电子技术、计算机应用、网络、通信、自动控制与计量测试、数据采集与信号处理等技术中日益普及的一项新兴技术,应用范围十分广泛。其中以AT89S52为内核的单片机系列目前在世界上生产量最大,派生产品最多,基本可以满足大多数用户的需要。

2 系统总体设计 2.1测频的原理 测频的原理归结成一句话,就是“在单位时间内对被测信号进行计数”。被测信号, 通过输入通道的放大器放大后,进入整形器加以整形变为矩形波,并送入主门的输入端。由晶体振荡器产生的基频,按十进制分频得出的分频脉冲,经过基选通门去触发主控电路,再通过主控电路以适当的编码逻辑便得到相应的控制指令,用以控制主门电路选通被测信号所产生的矩形波,至十进制计数电路进行直接计数和显示。若在一定的时间间隔T内累 计周期性的重复变化次数N,则频率的表达式为式: N fx= T 频率计数器严格地按照 N f= T 公式进行测频。由于数字测量的离散性,被测频率在计数 器中所记进的脉冲数可有正一个或负一个脉冲的1 ±量化误差,在不计其他误差影响的情况下,测量精度将为: 1 () fA N δ= 应当指出,测量频率时所产生的误差是由N和T俩个参数所决定的,一方面是单位时间内计数脉冲个数越多时,精度越高,另一方面T越稳定时,精度越高。为了增加单位时间内计数脉冲的个数,一方面可在输入端将被测信号倍频,另一方面可增加T来满足,为了增加T的稳定度,只需提高晶体振荡器的稳定度和分频电路的可靠性就能达到。 上述表明,在频率测量时,被测信号频率越高,测量精度越高。 2.2总体思路 频率计是我们经常会用到的实验仪器之一,频率的测量实际上就是在单位时间内对信号进行计数,计数值就是信号频率。本文介绍了一种基于单片机AT89S52 制作的频率计的设计方法,所制作的频率计测量比较高的频率采用外部十分频,测量较低频率值时采用单片机直接计数,不进行外部分频。该频率计实现10HZ~2MHZ的频率测量,而且可以实现量程自动切换功能,四位共阳极动态显示测量结果,可以测量正弦波、三角波及方波等各种波形的频率值。 2.3具体模块 根据上述系统分析,频率计系统设计共包括五大模块:单片机控制模块、电源模块、放大整形模块、分频模块及显示模块。各模块作用如下:

相关文档
最新文档