基于51单片机数字频率计
基于AT98C51单片机数字频率计
摘要51系列单片机是国内目前应用最广泛的一种8位单片机之一,随着嵌入式系统、片上系统等概念的提出和接受及应用,51系列单片机还会在继后很长一段时间占据嵌入式低端市场。
重要的。
,因此,作为新世纪的大学生,在信息产业高速发展的今天,掌握单片机的基本结构、原理和使用时非常重要的。
随着电子技术的发展,当前数字系统的设计正朝着速度快、容量大、体积小、重量轻的方向发展。
在电子技术中,频率是最基本的参数之一,并且与许测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。
本设计所要介绍的是以单片机AT89C51为核心设计了一种量程自选的数字频率计。
在本文的设计采用单片机内部的定时器/计数器对脉宽的机器周期数进行计数,从而求得被测信号的频率值, 最后通过静态显示电路显示数值由于单片机内部振荡频率很高, 所以一个机器周期的量化误差相当小, 可以有效地提高低频信号的测量准确性。
关键字:单片机,AT98C51,量程自选频率计目录摘要 (1)一、设计目的 (3)二、设计要求及指标 (3)三、单元电路分析 (3)1、上拉电路 (3)2、信号输入电路 (6)3、显示电路 (7)四、系统框图 (9)五、仿真图 (10)六、仿真结果 (10)七、软件介绍 (12)八、心得体会 (13)九、参考文献 (13)附录源程序 (14)一设计目的1.掌握量程自选数字频率计的设计、组装与调试方法。
2.熟悉集成元器件的选择和集成电路芯片的逻辑功能及使用方法。
3.熟悉仿真软件的使用。
二设计要求及指标1.输入信号的频率量程可以自动选择。
2.测试结果用6位数码管显示。
三单元电路分析1、上拉电路AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。
使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
基于51单片机的1602液晶频率计设计(Proteus仿真图和程序)
基于51单片机的1602液晶频率计设计一、Proteus仿真图:二、程序代码//最大测量65536Hz的频率计//原理:T0定时1S,T1计数#include <REG51.H>#include<INTRINS.H>#define uchar unsigned char#define uint unsigned intuint count=0;uint nm=0;uchar Fw,Fq,Fb,Fs,Fg;#define DataPort P0sbit LCM_RS=P2^0;sbit LCM_RW=P2^1;sbit LCM_EN=P2^2;uchar code str0[]={"-Test frequency-"};uchar code str1[]={"F=00000Hz "};//uchar code str2[]={" "};/*******************************/void delay(unsigned int k){unsigned int i,j;for(i=0;i<k;i++){for(j=0;j<121;j++){;}}}//=================================================///* 函数名:void WaitForEnable(void)作用:检测忙碌信号*///================================================//void WaitForEnable(void){DataPort=0xff;LCM_RS=0;LCM_RW=1;_nop_();LCM_EN=1;_nop_();_nop_();//while(DataPort&0x80);delay(5);LCM_EN=0;}//==========================================================// /* 函数名:void WriteCommandLCM(uchar CMD,uchar Attribc)作用:写命令到LCM *///==========================================================// void WriteCommandLCM(uchar CMD,uchar Attribc){if(Attribc)WaitForEnable();LCM_RS=0;LCM_RW=0;_nop_();DataPort=CMD;_nop_();LCM_EN=1;_nop_();_nop_();LCM_EN=0;}//=========================================================///* 函数名:void WriteDataLCM(uchar dataW)作用:写数据*///=========================================================// void WriteDataLCM(uchar dataW){WaitForEnable();LCM_RS=1;LCM_RW=0;_nop_();DataPort=dataW;_nop_();LCM_EN=1;_nop_();_nop_();LCM_EN=0;}//=========================================================///* 函数名:void InitLcd()作用:LCM初始化*///=========================================================// void InitLcd(){WriteCommandLCM(0x38,1);WriteCommandLCM(0x08,1);WriteCommandLCM(0x01,1);WriteCommandLCM(0x06,1);WriteCommandLCM(0x0c,1);}//=========================================================///*函数名:void DisplayOneChar(uchar X,uchar Y,uchar DData)作用:显示指定坐标的一个字符*///=========================================================// void DisplayOneChar(uchar X,uchar Y,uchar DData){Y&=1;X&=15;if(Y)X|=0x40;X|=0x80;WriteCommandLCM(X,0);WriteDataLCM(DData);}//============================================================// /*函数名:void DisplayListChar(uchar X,uchar Y,uchar code *DData作用:显示指定坐标的一串字符*///============================================================// void DisplayListChar(uchar X,uchar Y,uchar code *DData){uchar ListLength=0;Y&=0x1;X&=0xF;while(X<=15){DisplayOneChar(X,Y,DData[ListLength]);ListLength++;X++;}}//============================================================// /* 函数名:void main(void)作用:主函数*///============================================================////============================================================// /* 函数名:void display()作用:显示函数*///============================================================// void display(){Fw=count/10000+0x30;Fq=count/1000%10+0x30;Fb=count/100%10+0x30;Fs=count/10%10+0x30;Fg=count%10+0x30;DisplayOneChar(2,1,Fw);DisplayOneChar(3,1,Fq);DisplayOneChar(4,1,Fb);DisplayOneChar(5,1,Fs);DisplayOneChar(6,1,Fg);}void InitTime(void){TMOD=0x51;//T0为定时器工作于方式1,T1为计数器工作于方式1TH0=0x4C;//定时器50ms赋高8初值, 12M晶振TL0=0x00;//定时器50ms赋低8初值, 12M晶振TR0=1;//开定时器1TH1=0;//计数器赋高8初值初值TL1=0;//计数器赋低8初值TR1=1;//开计数器0ET0=1;EA=1;}void timeo(void) interrupt 1{TH0=0x4C;//定时器50ms赋高8初值TL0=0x00;//定时器50ms赋低8初值nm=nm+1;if(nm==10){TR1=0; //关闭T1定时器,定时1S完成TR0=0;//关闭T0}}//============================================================// /* 函数名:void main(void)作用:主函数*///============================================================// void main(void){char i;uint temp,temp1;delay(500);InitLcd(); //LCM初始化设置InitTime();for(i=15;i>=0;i--){DisplayListChar(i,0,str0);//显示第一行字符DisplayListChar(i,1,str1);//显示第二行字符delay(100);}while(1){if(nm==10)//定时10*50MS=500ms{temp=TL1;temp1=TH1;count=2*(temp1*256+temp);//定时2乘以500ms=1000ms display();TH1=0;//计数器赋高8初值初值TL1=0;//计数器赋低8初值nm=0;TR1=1;TR0=1;}}}。
基于51单片机的数字频率计设计报告
目录摘要............................................. 错误!未定义书签。
关键词 (3)正文 (4)1 概述 (4)2 总体设计方案 (5)2.1软件 (5)2.2 设计思路 (5)3 系统软件设计 (5)3.1 主板说明 (5)3.2 芯片主要性能............................. 错误!未定义书签。
3.3 功能特性描述 (6)3.4 引脚描述 (6)4 系统软件设计 (9)4.1 初始定义 (9)4.2 子程序设计 (9)4.3 主要源程序 (10)5 系统调试 (13)6 课程设计体会 (15)7 参考文献 (15)附录 (16)数字频率计是现代科研生产中不可或缺的测量仪器,它以十进制数显示被测频率,基本功能是测量正弦信号,方波信号,及其它各种单位时间内变化的物理量。
本系统采用AT89S52单片机智能控制,结合外围电子电路,设计的频率计性能稳定。
在软件设计上采用了单片机的C语言设计,通过单片机内部定时/计数器同时动作,在测量频率时将测频率和测周期相结合,提高了频率计的测量准确性。
测量结果在四位七段式数码管上输出显示,结果精确到整数位。
频率计的软件设计,系统软件设计简单明了,适用于测量频率从1~9999Hz的脉冲信号,超频自动报警,安全可靠。
关键词:数字频率计;AT89S52单片机;信号;AT89S52最小系统板;LG5011BSR1.概述单片机是20世纪中期发展起来的一种面向控制的大规模集成电路模块,具有功能强、体积小、可靠性高、价格低廉等特点,在工业控制、数据采集、智能仪表、机电一体化、家用电器等领域得到了广泛的应用,极大的提高了这些领域的技术水平和自动化程度。
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在线系统可编程Flash 存储器。
使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
基于51单片机的频率计设计报告(免费)
《频率计》实验报告班级:电子094 姓名:刘洋学号:0910910408班级:电子094 姓名:王铁柱学号:0910910414实验日期:2011-11-14至2011-12-14一.设计要求1.1实验目的及原理(1)利用单片机计数器功能实现正弦波频率的检测。
(2),频率计又称为频率计数器是一种专门对被测信号频率进行测量的电子测量仪器。
1.2实验要求(1)输入信号为峰峰值为5V的正弦信号,信号频率为1~60KHz,设计整形电路将正弦信号整形为方波。
(2)利用单片机定时/计数器的计数功能对整形后方波进行计数从而实现频率的测量。
(2)在数码管或LCD实时显示输入信号的频率。
1.3实现部分(1)输入信号峰峰值可在1V~10V范围变化。
(2)实现了方波和正弦波的频率检测,通过按键进行方波或正弦波检测模式的改变,在数码管或LCD进行检测模式的显示。
(3)正弦波测量范围达到1Hz~3.8MHz,正弦波测量范围达到1Hz~4.7MHz,测量精度达到10Hz单位,高于实验要求。
二.总体设计2.1频率计测频原理概论:简而言之就是:“通过测量单位时间内出现的方波个数,进行频率计算”。
将输入的正弦波信号经波形转换模块转换为方波,高频信号再经过分频模块进行分频。
由晶体振荡器产生的基频,按十六进制分频得出的分频脉冲,经过驱动电路增加带载能力。
在时间间隔T内累计周期性的重复变化次数N,则频率的表达式为式:数字频率计的原理框图如下:电路总设计图2.2 系统组成及工作原理数字频率计由以下模块组成:单片机控制模块、驱动模块、施密特电路波形转换模块、按键模块、分频模块和显示模块。
(1)STC89C52单片机简介TN清零信号锁存信号III IIIIV VSTC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。
在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
基于51单片机的数字频率计_毕业设计论文
基于51单片机的数字频率计目录第1节引言 (2)1.1数字频率计概述 (2)1.2频率测量仪的设计思路与频率的计算 (2)1.3基本设计原理 (3)第2节数字频率计(低频)的硬件结构设计 (4)2.1系统硬件的构成 (4)2.2系统工作原理图 (4)2.3AT89C51单片机及其引脚说明 (5)2.4信号调理及放大整形模块 (7)2.5时基信号产生电路 (7)2.6显示模块 (8)第3节软件设计 (12)3.1 定时计数 (12)3.2 量程转换 (12)3.3 BCD转换 (12)3.4 LCD显示 (12)第4节结束语 (13)参考文献 (14)附录汇编源程序代码 (15)基于51单片机的数字频率计第1节引言本应用系统设计的目的是通过在“单片机原理及应用”课堂上学习的知识,以及查阅资料,培养一种自学的能力。
并且引导一种创新的思维,把学到的知识应用到日常生活当中。
在设计的过程中,不断的学习,思考和同学间的相互讨论,运用科学的分析问题的方法解决遇到的困难,掌握单片机系统一般的开发流程,学会对常见问题的处理方法,积累设计系统的经验,充分发挥教学与实践的结合。
全能提高个人系统开发的综合能力,开拓了思维,为今后能在相应工作岗位上的工作打下了坚实的基础。
1.1数字频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。
在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。
本数字频率计将采用定时、计数的方法测量频率,采用一个1602A LCD显示器动态显示6位数。
测量范围从1Hz—10kHz的正弦波、方波、三角波,时基宽度为1us,10us,100us,1ms。
用单片机实现自动测量功能。
基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。
基于51单片机的数字频率计
• 6、RESET/VPD(9脚):复位信号输入端/备用电源输入 端;
单片机执行程序都是从地址0000H开始的,所以在进入系 统时必须对CPU进行复位,有时候程序运行错误或操作错 误,系统会处于锁死的状态为了摆脱这样的状态也必须对 单片机进行复位。
复位的方法比较简单:只要在RESET脚上加一个持续时 间为24个振荡周期(两个机器周期)的高电平就可以了。
• 7、EA/VPP(31脚):内/外部ROM选择端; • 8、P0口(39-32脚):双向IO口P00-P07(P0口无上拉
电阻,作输出用需要接上拉电阻);
• 9、P1口(1-8脚):准双向通用IO口; • 10、P2口(21-28脚):准双向通用IO口; • 11、P3口(10-17脚):准双向通用IO口;
环境干扰等因素。经实际多次测试频率在 等于1000Hz的时候最大相对误差达到0.1%, 符合误差要求。
• 实物图
2.3 显示模块
• 2.3.1 LCD1602简介
LCD1602是一种专门用来显示字母、数字、 符号等的点阵型液晶模块,它由若干个5X7 或者5X11等点阵字符位组成,每个点阵字 符位都可以显示一个字符,每位之间有一 个点距的间隔,每行之间也有间隔,起到 了字符间距和行间距的作用。LCD1602是= 显示的内容为16X2,即可以显示两行,每 行16个字符液晶模块。
2.3.4 LCD1602地址
比如第二行第一个字符的地址是40H,那么是否直接 写入40H就可以将光标定位在第二行第一个字符的位置呢? 这样不行,因为写入显示地址时要求最高位D7恒定为高 电平1,所以实际写入的数据应该40H+80H=C0H
基于51单片机的简易数字频率计
基于51单片机的简易数字频率计基于51单片机的简易数字频率计要求使用定时/计数器1作定时用,定时1s;定时/计数器0作计数器用,被计数的外部脉冲从P3.4(T0)接入。
单片机将在1s内对脉冲计数并送四位数码管显示,最大计数显示值为0FFFFH。
求程序。
悬赏分:30 - 解决时间:2010-6-27 22:26;=========================================== ====最佳答案:这是个简易频率计,程序如下:;---------------------------------ORG 0000HJMP STARTORG 000BHJMP T0_INT;---------------------------------START:MOV TMOD, #51H ;/*01010001 T1计数,T0定时*/MOV TH0, #HIGH(65536 - 50000) ;50ms@12MHzMOV TL0, #LOW (65536 - 50000)MOV TH1, #0MOV TL1, #0SETB TR0SETB TR1SETB ET0SETB EAMOV R7, #20SJMP $;---------------------------------T0_INT: ;50ms执行一次MOV TL0, #LOW (65536 - 50000) ;重新写入初始值MOV TH0, #HIGH(65536 - 50000) ;50ms@12MHz DJNZ R7, T0_ENDMOV R7, #20MOV P1, TL1MOV P2, TH1MOV TL1, #0MOV TH1, #0T0_END:RETI;---------------------------------END用PROTEUS仿真如下图。
图片链接:/%D7%F6%B6%F8%C2%DB%B5%C0/ album/item/902f7103f249d83149fb5162.html图中信号的频率是5000Hz,显示的1388是16进制,这是题目中要求的形式。
基于.51单片机的频率计的设计说明书
4.2主程序
• 主程序首先对系统环境初始化,设置分频选通信号P2=0x00,选通 0通道。设置T0工作方式,采用硬件启动方式,GATE=1,当INT0 和TR0同时为1时启动计时,计数方式为方式1(16位),TH0和 TL0都置零。当外部中断INT0=1时等待,当外部中断为0时启动T0 即TR0=1,当INT0一直为0时就等待,一旦INT0=1就启动计数同时 等待,当INT0为0时跳出并关闭T0即TR0=0。这样就计得高电平期 间基准脉冲个数,当脉冲个数小于500时就选择10分频信号,即P2 自加1,同时记录分频一次;如果分频后脉冲个数还小于500则再次 分频,直到计数个数大于500
•
3.2 分频电路:
• 分频电路采用十进制的计数器74HC4017来分频,当被测信号脉冲个 数达到10个时74HC4017产生溢出,C0端输出频率为输入频率的1/10, 达到十分频的作用。如果当频率很高时需要多次分频只需将多片 74HC4017级联就可以了
• 74HC4017时序图如下图所示
系统分频电路如下图所示
• while(p32==1); //执行完这条语句后信号电平状态为低电平
• TR0=1;
//使能TR0;
• while(p32==0); //等待信号高电平到来,如果高电平来了则定时器开始计时,如果没来,则继续循 环等待。
• while(p32==1); //等待信号高电平结束后,如果低电平,则定时器停止计时
• 根据设计要求用单片机的内部定时器0产生基准信号,由INTO输入被测 信号,通过定时方式计算被测信号的高电平持续时间。并通过单片机计 算得出结果,最后由1062液晶显示器显示测量结果。
• 频率计的系统设计框架如下图所示
被测信号
基于AT89C51单片机的频率计设计
基于AT89C51单片机的频率计设计频率计是一种测量信号频率的仪器。
在工业自动化、仪器仪表和电子实验等领域广泛应用。
本文将基于AT89C51单片机设计一个简单的频率计。
一、设计原理频率计的工作原理是通过计数单位时间内输入信号的脉冲数量,并将其转化为频率进行显示。
本设计使用AT89C51单片机作为控制核心,采用外部中断引脚INT0作为计数脉冲输入口,通过对计数器的计数值进行处理,最终转化为频率并在LCD1602液晶屏上进行显示。
二、硬件设计硬件电路主要包括AT89C51单片机、LC1602液晶显示屏、脉冲输入引脚INT0,以及供电电路等。
其中,AT89C51单片机的P0口用于与LC1602液晶屏的数据口连接,P2口用于与液晶屏的控制口连接。
脉冲输入引脚INT0连接到外部信号源,通过中断请求实现计数器的计数功能。
液晶显示屏的VDD和VDDA引脚接5V电源,VSS和VSSA引脚接地,RW引脚接地,RS引脚接P2.0,E引脚接P2.1,D0-D7引脚接P0口。
三、软件设计软件设计主要包括初始化设置、中断服务程序、计数器计数和频率转换、液晶屏显示等模块。
1.初始化设置:首先设置P0和P2为输出端口,中断引脚INT0为外部触发下降沿触发中断,计数器为初始值0。
2.中断服务程序:中断服务程序负责处理外部脉冲输入引脚INT0的中断请求。
每当INT0引脚检测到下降沿时,计数器加13.计数和频率转换:在主函数中,通过读取计数器的值并根据单位时间计算频率。
通过AT89C51单片机的定时器模块,我们可以设置一个单位时间进行计数。
在单位时间结束后,将计数器的值除以单位时间得到频率。
4.液晶屏显示:通过P0口向液晶屏的数据口发送频率值,并通过P2口向液晶屏的控制口发送控制信号,完成频率的显示。
四、测试结果将生成的二进制固件烧录到AT89C51单片机中,将脉冲信号输入到INT0引脚,即可在LCD1602液晶显示屏上看到实时的频率值。
数字频率计(51单片机)
数字频率计(51单片机)数字频率计(51单片机)数字频率计(Digital Frequency Counter)是一种常用的电子测量仪器,可用于测量信号的频率。
在本文中,我们将介绍如何使用51单片机实现一个简单的数字频率计。
一、原理简介数字频率计的基本原理是通过计算信号波形周期内的脉冲数来确定频率。
在实际应用中,我们通常使用51单片机作为微控制器,通过计数器和定时器模块来实现频率计算。
二、硬件设计1.信号输入首先,我们需要将待测信号输入到频率计中。
可以使用一个输入接口电路,将信号连接到51单片机的IO口上。
2.计时模块我们需要使用51单片机的定时器/计数器来进行计时操作。
在这里,我们选择使用定时器0来进行计数,同时可以利用定时器1来进行溢出次数的计数,以扩展计数范围。
3.显示模块为了显示测量结果,我们可以使用数码管、LCD液晶显示屏等显示模块。
通过将结果以可视化的方式呈现,方便用户进行观察和读数。
三、软件设计1.定时器配置首先,我们需要对定时器进行配置,以确定计时器的计数间隔。
通过设置定时器的工作模式、计数范围和时钟频率等参数,可以控制定时器的计数精度和溢出时间。
2.中断服务程序当定时器溢出时,会触发中断,通过编写中断服务程序,实现对计数器的相应操作,例如将计数值累加,记录溢出次数等。
3.数字频率计算根据计数器的值和溢出次数,我们可以计算出信号的频率。
通过简单的公式计算,即可得到测量结果。
四、实验步骤1.搭建硬件电路,将待测信号连接到51单片机的IO口上,并连接显示模块。
2.根据硬件设计要求,配置定时器的工作模式和计数范围。
3.编写中断服务程序,实现对计数器的相应操作。
4.编写主程序,实现数字频率计算和显示。
5.下载程序到51单片机,进行测试。
五、实验结果与分析通过实验,我们可以得到信号的频率测量结果,并将结果以数码管或LCD屏幕的形式进行显示。
通过对比实际频率和测量频率,可以评估数字频率计的准确性和稳定性。
基于51单片机数字频率计的设计与开发
摘要在电子技术中,频率是最大体的参数之一,而且与许多电参量的测量方案、测量结果都有十分紧密的关系,因此频率的测量就显得更为重要。
测量频率的方式有多种,其中电子计数器测量频率具有精度高、利用方便、测量迅速,和便于实现测量进程自动化等优势,是频率测量的重要手腕之一。
电子计数器测频有两种方式:一是直接测频法,即在必然闸门时刻内测量被测信号的脉冲个数;二是间接测频法,如周期测频法。
直接测频法适用于高频信号的频率测量,间接测频法适用于低频信号的频率测量。
本文论述了基于通用集成电路设计了一个简单的数字频率计的进程。
关键词:频率,信号,周期AbstractIn electronic technology,the frequency is the most basic one of the parameters,andwith a number of electrical parameters of the measurement program,measurement more important,There are several ways of mesuring frequency,in which electronic counter the frequency with high precision,easy to use ,quick measurements,and is easy to realize the advatages of automaion of measurement process is an important means of frequency Counter Frequency Measurement There are two ways:First,the directfrequency measurement method,thatis,the gate in a certain period of time measured the number of measured signal pulse;2is indirect frequency measurement method,such as cycle frequency measurement frequency measurement method for high-frequency signals offrequency measurement,indirect frequency measurement method for low-frequency signald of frequency this paper,based on a commom integrated circuit design of a simple digital frequency meter process.Key words:frequency,signal,period目录摘要 (Ⅰ)一、引言(一)数字频率计概述 (1)(二)问题提出 (1)(三)设计思想 (1)二、方案论证与比较(一)方案选择 (2)一、整体方案比较 (2)二、测频方案比较 (2)(二)测频原理 (2)三、数字频率计设计(一)数字频率计原理 (4)一、数字频率计的大体组成 (4)二、数字频率计的要紧技术指标 (5)(二)数字频率计的设计 (5)一、硬件电路设计 (5)二、软件的设计 (7)3、软件仿真 (9)四、大体元器件的论述(一)AT89S52简介 (9)一、要紧功能特性 (10)二、引脚功能 (11)(二)555按时器 (11)一、555按时器及其应用 (11)二、施密特触发器 (12)五、终止语(一)总结 (13)致谢 (14)参考文献 (15)附录 (16)一、引言(一)数字频率计概述数字频率计是运算机,通信设备,音频视频等科研生产领域不可缺少的测量仪器。
基于51单片机的简易频率计设计
基于51单片机的简易频率计设计下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!引言在电子测量领域,频率计是一种常用的仪器,用于测量信号的频率大小。
基于51单片机宽量程数字频率计的设计与实现
• 127•本文设计的宽量程数字频率计能较准确测量出方波、正弦波和三角波等多种周期信号的频率值(被测信号的电压峰峰值要求高于70mV),测量频率范围是:10HZ~20MHZ。
设计的数字频率计有一定的实用价值,该设计也可为设计某些特殊功能的频率计提供一定的参考。
引言:数字频率计是数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。
若配以适当的传感器,可以对多种物理量进行测量,如机械振动的频率、转速、声音的频率以及一叠纸的张数等等。
因此,数字频率计是一种应用很广泛的仪器。
数字频率计作为一种应用广泛的仪器设备,它可以完全由硬件电路搭接构成、可以基于单片机运算处理设计实现、还可以基于 SOPC 的嵌入式实现(武卫华,郑诗程,基于SOPC的嵌入式数字频率计设计与实现,电子测量与仪器学报,2010年第2期72-78页)。
完全由硬件电路搭接构成数字频率计,其优点是设计涉及的知识面较窄,容易理解设计思想与工作原理,不足之处是电路构成复杂,功能扩展性差,实现的功能单一,如要扩展频率计的量程不容易实现。
基于 SOPC的嵌入式设计数字频率计优点是硬件电路简单,功能扩展性强,功能扩展可通过修改设计程序实现,不足之处是设计涉及的知识面较宽,设计思想与工作原理对初学者不易理解。
基于单片机运算处理设计综合了上述两种设计的优点。
本文介绍了基于单片机运算处理的宽量程(10Hz至20MHz)数字频率计的设计。
图1 基于51单片机宽量程数字频率计工作原理框图1 基于51单片机宽量程数字频率计的工作原理基于51单片机数字频率计工作原理框图如图1所示。
该频率计由放大电路、信号变换与整形电路、信号处理电路(单片机)、分频电路,以及频率显示电路构成。
经过放大电路基于51单片机数字频率计工作原理框图如图1所示。
该频率计由放大电路、信号变换与整形电路、信号处理电路(单片机)、分频电路,以及频率显示电路构成。
经过放大电路将被测信号峰值小于2.5V的信号进行放大,并利用放大电路的饱和特性将峰值大于5V的信号实现限幅,防止待测信号峰值过大烧毁芯片。
基于51单片机的频率计
1.实验任务利用51单片机的T0、T1的定时计数器,来完成对输入的信号进行频率计数,计数的频率结果通过8位动态数码管显示。
此设计能够对0-250KHZ的信号频率进行准确计数,计数误差不超过±1HZ。
2.电路原理图图4.31.13.系统板上硬件连线(1).把“单片机系统”区域中的P0.0-P0.7与“动态数码显示”区域中的ABCDEFGH端口用8芯排线连接。
(2).把“单片机系统”区域中的P2.0-P2.7与“动态数码显示”区域中的S1S2S3S4S5S6S7S8端口用8芯排线连接。
(3).把“单片机系统”区域中的P3.4(T0)端子用导线连接到“频率产生器”区域中的W A VE 端子上。
4.程序设计内容(1).定时/计数器T0和T1的工作方式设置,由图可知,T0是工作在计数状态下,对输入的频率信号进行计数,但对工作在计数状态下的T0,最大计数值为fOSC/24,由于fOSC=12MHz,因此:T0的最大计数频率为250KHz。
对于频率的概念就是在一秒只数脉冲的个数,即为频率值。
所以T1工作在定时状态下,每定时1秒中到,就停止T0的计数,而从T0的计数单元中读取计数的数值,然后进行数据处理。
送到数码管显示出来。
(2).T1工作在定时状态下,最大定时时间为65ms,达不到1秒的定时,所以采用定时50ms,共定时20次,即可完成1秒的定时功能。
5.C语言源程序#includeunsigned char code dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};unsigned char dispbuf[8]={0,0,0,0,0,0,10,10};unsigned char temp[8];unsigned char dispcount;unsigned char T0count;unsigned char timecount;bit flag;unsigned long x;void main(void){unsigned char i;TMOD=0x15;TH0=0;TL0=0;TH1=(65536-4000)/256;TL1=(65536-4000)%6;TR1=1;TR0=1;ET0=1;ET1=1;EA=1;while(1){if(flag==1){flag=0;x=T0count*65536+TH0*256+TL0;for(i=0;i<8;i++){temp[i]=0;}i=0;while(x/10){temp[i]=x ;x=x/10;i++;}temp[i]=x;for(i=0;i<6;i++){dispbuf[i]=temp[i];}timecount=0;T0count=0;TH0=0;TL0=0;TR0=1;}}}void t0(void) interrupt 1 using 0 {T0count++;}void t1(void) interrupt 3 using 0 {TL1=(65536-4000)%6;TH1=(65536-4000)/256;timecount++;if(timecount==250){TR0=0;timecount=0;flag=1;}P0=dispcode[dispbuf[dispcount]]; P2=dispbit[dispcount]; dispcount++;if(dispcount==8){dispcount=0;}}。
基于51单片机的数字频率计
基于51单片机的数字频率计作者:刘祥静柴欣君白皓贺程梅许圣儒来源:《科学导报·学术》2020年第16期摘 ;要:本应用系统设计的目的是通过在“单片机原理及应用”课堂上学习的知识,以及查阅资料,培养一种自学的能力。
并且引导一种创新的思维,把学到的知识应用到日常生活当中。
在设计的过程中,不断的学习,思考和同学间的相互讨论,运用科学的分析问题的方法解决遇到的困难,掌握单片机系统一般的开发流程,学会对常见问题的处理方法,积累设计系统的经验,充分发挥教学与实践的结合。
全能提高个人系统开发的综合能力,开拓了思维,为今后能在相应工作岗位上的工作打下了坚实的基础。
1.1数字频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。
在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。
本数字频率计将采用定时、计数的方法测量频率,采用一个1602A LCD显示器动态显示6位数。
测量范围从1Hz—10kHz的正弦波、方波、三角波,时基宽度为1us,10us,100us,1ms。
用单片机实现自动测量功能。
基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。
它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。
1.2频率测量仪的设计思路与频率的计算频率测量仪的设计思路主要是:对信号分频,测量一个或几个被测量信号周期中已知标准频率信号的周期个数,进而测量出该信号频率的大小,其原理如右图1所示。
若被测量信号的周期为,分频数m1,分频后信号的周期为T,则:T=m1Tx。
由图可知:T=NTo(注:To为标准信号的周期,所以T为分频后信号的周期,则可以算出被测量信号的频率f。
)由于单片机系统的标准频率比较稳定,而是系统标准信号频率的误差,通常情况下很小;而系统的量化误差小于1,所以由式T=NTo可知,频率测量的误差主要取决于N值的大小,N 值越大,误差越小,测量的精度越高。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目:基于51单片机的数字频率计目录第1节摘要 (2)1.1数字频率计概述 (2)1.2频率测量仪的设计思路与频率的计算 (2)1.3基本设计原理 (3)第2节数字频率计<低频)的硬件结构设计 (4)2.1系统硬件的构成 (4)2.2系统工作原理图 (4)2.3AT89C51单片机及其引脚说明 (5)2.4信号调理及放大整形模块 (7)2.5时基信号产生电路 (7)2.6显示模块 (8)第3节软件设计 (12)3.1 定时计数 (12)3.2 量程转换 (12)3.3 BCD转换 (12)3.4 LCD显示 (12)第4节结束语 (13)参考文献 (14)附录 C语源程序代码 (15)基于51单片机的数字频率计河南工业职业技术学院计控0904班学生:指导老师:引言本应用系统设计的目的是通过在“单片机原理及应用”课堂上学习的知识,以及查阅资料,培养一种自学的能力。
并且引导一种创新的思维,把学到的知识应用到日常生活当中。
在设计的过程中,不断的学习,思考和同学间的相互讨论,运用科学的分析问题的方法解决遇到的困难,掌握单片机系统一般的开发流程,学会对常见问题的处理方法,积累设计系统的经验,充分发挥教案与实践的结合。
全能提高个人系统开发的综合能力,开拓了思维,为今后能在相应工作岗位上的工作打下了坚实的基础。
ABSTRACTThis text introduces the control system of a kind of elevator PLC.The elevator is perpendicular directional of the conveyance equipments be indispensable in the high building of transportation equipments.It depends electric power, dragging along to move a car that can carry person or thing and lead a track in the building of the well way up do perpendicularity to ascend and descend sport, there is prominent function in the people's life.And the control elevator circulate of the PLC system also has more and more high request, request to attain the movement purpose of "steady, quasi-, quick" of elevator movement.That system mainly from PLC, logic control the electric circuit constitute.Include an exchanges difference to tread electric motor among them, after the electric appliances, get in touch with a machine, route of travel switch and press button, give out light the indicator constitute and transducer for the control system of integral whole.The this machine control unit adoption carries on whole process a control to the machine by the programmable controller PLC of Mitsubishi company.1.1数字频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。
在进行模拟、数字电路的设计、安装、调试过程中,因为其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。
本数字频率计将采用定时、计数的方法测量频率,采用一个1602A LCD显示器动态显示6位数。
测量范围从1Hz—10kHz的正弦波、方波、三角波,时基宽度为1us,10us,100us,1ms。
用单片机实现自动测量功能。
基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。
它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。
1.2频率测量仪的设计思路与频率的计算频率测量仪的设计思路主要是:对信号分频,测量一个或几个被测量信号周期中已知标准频率信号的周期个数,进而测图 1 频率测量原量出该信号频率的大小,其原理如右图1所示。
若被测量信号的周期为,分频数m1,分频后信号的周期为T,则:T=m1T x 。
由图可知:T=NT o<注:T o为标准信号的周期,所以T为分频后信号的周期,则可以算出被测量信号的频率f。
)因为单片机系统的标准频率比较稳定,而是系统标准信号频率的误差,通常情况下很小;而系统的量化误差小于1,所以由式T=NT o可知,频率测量的误差主要取决于N值的大小,N值越大,误差越小,测量的精度越高。
1.3 基本设计原理基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。
它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。
所谓“频率”,就是周期性信号在单位时间<1s)内变化的次数。
若在一定时间间隔T 内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。
其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率f x。
时间基准信号发生器提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等于1s。
闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。
秒信号结束时闸门关闭,计数器停止计数。
因为计数器计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。
第2节数字频率计<低频)的硬件结构设计2.1 系统硬件的构成本频率计的数据采集系统主要元器件是单片机AT89C51,由它完成对待测信号频率的计数和结果显示等功能,外部还要有分频器、显示器等器件。
可分为以下几个模块:放大整形模块、秒脉冲产生模块、换档模拟转换模块、单片机系统、LCD显示模块。
各模块关系图如图2所示:图2 数字频率计功能模块2.2 系统工作原理图该系统工作的总原理图如图3所示:图3 数字频率计系统工作原理图2.3 AT89C51单片机及其引脚说明89C51是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:4K字节的程序存储器,128字节的RAM,32条I/O线,2个16位定时器/计数器, 一个5中断源两个优先级的中断结构,一个双工的串行口, 片上震荡器和时钟电路。
引脚说明:·V CC:电源电压·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口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流<I IL)。
·P2口:P2是一带有内部上拉电阻的8位双向的I/O端口。
P2口的输出缓冲能驱动4个TTL逻辑门电路。
当向P2口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。
作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流<I IL)。
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时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。
作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流<I IL)。
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 <外部数据存储器都选通)表1 P3口的第二功能·RST:复位输入。
当振荡器工作时,RST引脚出现两个机器周期的高电平将使单片机复位。
·ALE/:当访问外部存储器时,地址锁存允许是一输出脉冲,用以锁存地址的低8位字节。
当在Flash编程时还可以作为编程脉冲输出<)。
一般情况下,ALE是以晶振频率的1/6输出,可以用作外部时钟或定时目的。
但也要注意,每当访问外部数据存储器时将跳过一个ALE脉冲。
·:程序存储允许时外部程序存储器的读选通信号。
当AT89C52执行外部程序存储器的指令时,每个机器周期两次有效,除了当访问外部数据存储器时,将跳过两个信号。
·/V PP :外部访问允许。
为了使单片机能够有效的传送外部数据存储器从0000H 到FFFH 单元的指令,必须同GND 相连接。
需要主要的是,如果加密位1被编程,复位时EA 端会自动内部锁存。
当执行内部编程指令时,应该接到V CC 端。