单片机原理及应用3位数显频率计数器毕业设计论文_第1页
单片机原理及应用3位数显频率计数器毕业设计论文_第2页
单片机原理及应用3位数显频率计数器毕业设计论文_第3页
单片机原理及应用3位数显频率计数器毕业设计论文_第4页
单片机原理及应用3位数显频率计数器毕业设计论文_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机原理及应用设 计 说 明 书3 位数显频率计数器起止日期: 2012 年 12 月 24 日 至 2013 年 12 月 28 日学 生 姓 名 班 级成 绩指 导 教 师 (签 字 )电子与信息工程系2013 年 12 月 28 日目录第一章:设计背景及要求 .11.1 数字频率计数器的背景及意义 .11.2 设计要求 .1第二章:设计原理及总体方案 .12.1 频率计的基本原理 .12.2 方案的确定 .2第三章:硬件设计 .33.1 主控单元 .33.2 频率采集 .73.3 显示单元 .73.4 原理图设计 .8第四章:软件设置 .84.1 设计流程 .84.2 程序设计 .9第五章:仿真设计及结果 .135.1 源程序编译及结果 .135.2 原理图绘制 .1353 仿真结果 .14第六章:总 结及体会 .140第一章:设计背景及要求1.1 数字频率计数器的背景及意义在现代社会中,随着电子工业的发展,能够精确测量各种设备仪器中电路的频率、电压、电流等参数已越来越重要。而传统的电子测量仪器中,示波器在进行频率测量时测量精度较低,误差较大。频谱仪可以准确的测量频率并显示被测信号的频谱,但测量速度较慢,无法实时快速的跟踪捕捉到被测信号频率的变化。正是由于频率计能够快速准确的捕捉到被测信号频率的变化,因此,频率计拥有非常广泛的应用范围。在生产制造企业中,频率计被广泛的应用在生产线的生产测试中。频率计能够快速的捕捉到晶体振荡器输出频率的变化,用户通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准。在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。我所设计的三位数显频率计数器,是基于 ATMEL 公司的 AT89S51 单片机,通过其 T0 与 T1 的定时与计数功能,来测量输入信号的频率,并通过六位动态数码管显示出来,并且尽可能使用最少的元器件,在满足性能要求的前提下,尽量节省成本,以期最大的性价比。1.2 设计要求(1) 基于 AT89S51 单片机,设计一个精确测量输入信号频率的频率计数器 (2)能够精确测量频率范围在 0Hz250kHz 之间的输入信号 (3) 测量误差不超过1Hz (4) 使用六位数码管显示测量结果 (5) 在满足性能的前提下,尽可能使用最少的、最廉价的元器件 第二章:设计原理及总体方案2.1 频率计的基本原理频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为 1 秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。测量一个信号的频率有两种方法:第一种是计时法,用基准信号去测量被测信号的高电平持续的时间,然后转换成被测信号的频率。第二种是计数法,计算在基准信号高电平期间通过的被测信号个数。根据设计要求测量 0HZ250KHZ 的正弦信号,首先要将1正弦信号通过过零比较转换成方波信号,然后变成测量方波信号。如果用第一种方法,当信号频率超过1KHZ 的时候测量精度将超出测量精度要求,所以当被测信号的频率高于 1KHZ 的时候需要将被测信号进行分频处理。如果被测信号频率很高需要将被测信号进行多次分频直到达到设计的精度要求。 数字频率计是一种应用很广泛的仪器电子,在广泛的应用领域内,到处可见到处理离散信息的数字电路。随着数字电路制造工业的进步,使得系统设计人员能在更小的空间内实现更多的功能,从而提高系统可靠性和速度 。本论文设计采用 AT89C51 单片机为控制器件来制作一个 0HZ250KHZ 的频率计,并将所需得到的频率通过数码管显示出来。根据设计要求用单片机的内部 T0 产生基准信号,由 INTO 输入被测信号,通过定时方式计算被测信号的持续时间。通过单片机计算得出结果,最后通过数码管显示测量结果。系统的原理框图如图 2-1 所示。AT89S51单片机 3 位数码管频率源图 2-1 数字频率计系统框图2.2 方案的确定系统采用 MCS51 系列单片机 AT89S51 作为控制核心,门控信号由 AT89S51 内部的计数定时器产生,单位为 1s。由于单片机的计数频率上限较低(12MHZ 晶振时约 500KHZ),所以需对高频被测信号进行硬件分频处理,AT89S51 则完成运算、控制及显示功能。由于使用了单片机,使整个系统具有极为灵活的可编程性,能方便地对系统进行功能扩展与改进。原理图如图 2-2单片机处理信号输入图 2-2 单片机测频原理图在本设计方案中,我通过程序设定T0工作在计数状态下,T1工作在计时状态下。T0计数器对输入的信号经行计数,其最大计数值为fOSC/24,当fOSC=12MHz时,T0的最大计数频率为500kHz。由于信号的频率就是每秒钟信号脉冲的个数,于是我让T1工作在定时状态下,定时时间为1秒。每定时1秒钟到,就停止T0的计数,然后从T0的计数单元中读取计数的数值,即完成了信号频率的测量。最后通过三位数码管显示出频率值。 3 位数码管显示2由于要尽可能的使用最少的元件,在满足设计要求的前提下,我尽可能的减少了元器件的使用。将被测信号不加任何处理,直接输入单片机的 T0 口。而将被测信号经行放大整形、倍频锁相等处理就不再进行了。这样做会使该频率计在测量信号频率时产生精度误差,但能够满足设计要求。第三章:硬件设计3.1 主控单元主控单元主要是 AT89C51 单片机系统,采用 12MHZ 的晶振频率。单片机的 P3.2 口接被处理后的被测信号,P0 口接 LED 显示器的数据输入端,ALE,RD,WR,P0.0,P0.1 通过外接控制电路接数码管显示器的控制端。单片机系统的电路如图 3-1 所示。图 3-1 单片机系统AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,3掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。 AT89S51单片机内部结构如下图:图3-2 单片机内部结构图4图3-3 单片机引脚图管脚说明: VCC:供电电压。 GND:接地。 P0:P0口为一个8位漏级开路双向I/O 口,每脚可吸收8TTL 门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1:P1口是一个内部提供上拉电阻的8位双向I/O口,P1 口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出 4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出 4个TTL门电流。当P3口写入“1”后,它5们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。I/O口作为输入口时有两种工作方式即所谓的读端口与读引脚读端口时实际上并不从外部读入数据而是把端口锁存器的内容读入到内部总线经过某种运算或变换后再写回到端口锁存器只有读端口时才真正地把外部的数据读入到内部总线上面图中的两个三角形表示的就是输入缓冲器CPU将根据不同的指令分别发出读端口或读引脚信号以完成不同的操作这是由硬件自动完成的不需要我们操心1然后再实行读引脚操作否则就可能读入出错为什么看上面的图如果不对端口置1端口锁存器原来的状态有可能为0Q端为0Q为1加到场效应管栅极的信号为1该场效应管就导通对地呈现低阻抗,此时即使引脚上输入的信号为1也会因端口的低阻抗而使信号变低使得外加的1信号读入后不一定是1若先执行置1操作则可以使场效应管截止引脚信号直接加到三态缓冲器中实现正确的读入由于在输入操作时还必须附加一个准备动作所以这类I/O口被称为准双向口89C51的P0/P1/P2/P3口作为输入时都是准双向口接下来让我们再看另一个问题从图中可以看出这四个端口还有一个差别除了P1口外P0P2P3口都还有其他的功能 。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的63.2 频率采集频率采集单元主要依靠单片机的定时器/计数器,定时器/计数器实质上就是一个加 1 计数器,其控制电路受软件控制、切换.当定时器/计数器为定时工作方式时,计数器的加 1 信号由振荡器的 12 分频信号产生,即每过一个机器周期,计数器加 1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于 12 个振荡周期,所以计数频率 fcount=1/12osc。如果晶振为 12MHz,则计数周期为:T=1/(12106)Hz1/12=1s(3-1)这是最短的定时周期。若要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如 8 位、13 位、16 位等) 。当定时器/计数器为计数工作方式时,通过引脚 T0 和 T1 对外部信号计数,外部脉冲的下降沿将触发计数。计数器在每个机器周期的 S5P2 期间采样引脚输入电平。若一个机器周期采样值为 1,下一个机器周期采样值为 0,则计数器加 1。此后的机器周期 S3P1 期间,新的计数值装入计数器。所以检测一个由1 至 0 的跳变需要两个机器周期,故外部的最高计数频率为振荡频率的 1/24。例如,如果选用 12MHz 晶振,则最高计数频率为 0.5MHz。虽然对外部输入信号的占空比无特殊要求,但为了确保某给定电平在变化前至少被采样一次,外部计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。3.3 显示单元本次设计中采用了LED显示器,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论