欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    电气自动化专业毕业论文基于单片机的数字频率计设计.doc

    • 资源ID:4145654       资源大小:92KB        全文页数:49页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    电气自动化专业毕业论文基于单片机的数字频率计设计.doc

    电气自动化专业毕业论文-基于单片机的数字频率计设计 第1章 绪论 频率是最基本的参数之一 并且与许多电参量的测量方案测量结果都有十分密切的关系因此 频率的测量就显得更为重要测量频率的方法有多种其中电子计数器测量频率具有精度高使用方便测量迅速 以及便于实现测量过程自动化等优点 是频率测量的重要手段之一电子计数器测频有两种方式 一是直接测频法 即在一定闸门时间内测量被测信号的脉冲个数 二是间接测频法 如周期测频法直接测频法适用于高频信号的频率测量 间接测频法适用于低频信号的频率测量数字频率计是一种基本的测量仪器是用数字显示被测信号频率的仪器 如配以适当的传感器 可以对多种物理量进行测试 因此 它被广泛应用于航天电子测控等领域随着电子技术的快速发展 它将被更广泛的应用到各个领域中去目前市场上的频率计产品很多但基本上都是采用专用计数芯片如ICM7240ICM7216和数字逻辑电路组成由于这些芯片本身的工作频率不高 如ICM7240 仅有15MHz 左右 从而限制了产品的工作频率的提高 远不能达到在一些特殊的场合需要测量很高的频率的要求而且测量精度也受到芯片本身极大的限制12 数字频率计概述频率是电子技术领域永恒的话题电子技术领域离不开频率一旦离开频率电子技术的发展是不可想象的为了得到性能更好的电子系统科研人员在不断地研究着频率CPU就是用频率的高低来评价其性能好坏可见频率在电子系统中的重要性由于社会发展和科技发展的需要信息传输和处理的要求的提高对频率的测量精度也提出了更高的要求需要更高准确度的时频基准和更精密的测量技术而频率测量所能达到的精度主要取决于作为标准频率源的精度以及所使用的测量设备和测量方法频率测量技术发展非常快大量的工作在改进创造新的测频原理方法和仪器以便以更高的精度速度自动进行测量和数据处理并向多功能小型化高性价比方向发展综观过去一二十年的国内频率计市场其生产单位有几十家主要集中在江苏四川河北上海等电子工业较发达的地区产品的型号品牌已有上百种这些国内产品虽然在采用大规模集成电路和专用集成电路改进设计强化多功能和小型化等方面都取得了很大进展近几年随着我国电子仪器业的迅速发展及对仪器仪表的需求不断增长生产厂商采用新器件和新技术使频率计的便携性智能性有很大提高其测频范围显示分辨率采样时间灵活性等技术性能已接近或达到国外先进水平可见其市场发展前景乐观电子仪器市场与全国经济前景一样变的越来越好13 课题开发工具和语言com Keil与Proteus仿真介绍Keil c51 程序调试Keilc51 不仅支持C语言同时也可以对汇编进行调试KeilC51的编程及调试步骤主要由以下部分组成 1 选用芯片AT89C51 2 根据电路图设置引脚功能 3 对程序进行调试 4 生成机器代码hex 文件Proteus仿真通过KeilC51 的程序调试把程序烧写成机器语言就可以在Proteus中仿真在调试中因为电路界面太小省去了放大部分直接采用输入方波正弦波锯齿波和三角波的信号来查看电路是否有异常及存在的问题主要步骤分以下几部分 1 根据Protel所画的电路图连接各部分元件 2 单片机载入机器代码hex 文件 3 设置内置晶振为12M 4 分别输入方波正弦波锯齿波和三角波信号进行测试com言选用开发语言应注意以下两点 1 生成的目标代码质量高程序运行效率高 2 可移植性好基本上不用作修改就能用于各种类型的计算机和各种操作系统简洁紧凑灵活方便 运算符丰富 数据结构丰富 4C是结构式语言 5C语法限制不太严格程序设计自由度大 6C语言允许直接访问物理地址可以直接对硬件进行操作 生成目标代码质量高程序执行效率高 一般只比汇编程序生成的目标代码效率低1020 8C语言适用范围大可移植性好C 语言进行单片机应用系统数字频率计的设计 不仅编程简单 精度高 而且避免了汇编语言在进行乘除法运算时要考虑采用浮点运算的要求与汇编语言相比编程语句大大减少第2章 方案论证与系统原理21 频率测量常见方法 1 直接测频法直接测频法是把被测频率信号经脉冲形成电路后加到闸门的一个输入端 只有在闸门开通时间T 以秒计 内 被计数的脉冲被送到十进制计数器进行计数设计数器的值为N 由频率定义式可以计算得到被测信号频率为 f N T 经分析 本测量在低频段的相对测量误差较大增大T 可以提高测量精度 2 组合法直接测量周期法在低频段精度高组合测频法是指在低频时采用直接测量周期法测信号周期 然后换算成频率这种方法可以在一定程度上弥补方法的不足 但是难以确定最佳分测点 且电路实现较复杂 3 倍频法直接测频法在高频段有着很高的精度可以把频率测量范围分成多个频段 使用倍频技术 根据频段设置倍频系数将经整形的低频信号进行倍频后再进行测量 高频段则进行直接测量 4 高精度恒误差测频法通过对传统测量方法的研究 结合高精度恒误差测量原理 设计一种测量精度与被测频率无关的硬件测频电路本方法立足于快速的宽位数高精度浮点数字运算22可用实验方案介绍方案1 采用频率计模块 如ICM 7216 构成 特点是结构简单 量程可以自动切换ICM 7216 内部带有放大整形电路 可以直接输入模拟信号外部振荡部分选用一块高精度晶振体和两个低温系数电容构成10MHz 并联振荡电路用转换开关选择10m s 011s 1s 10s 四种闸门时间 同时量程自动切换 直接点亮L ED方案2 系统采用可编程逻辑器件 PLD 如A TV2500 作为信号处理及系统控制核心 完成包括计数门控显示等一系列工作该方案利用了PLD 的可编程和大规模集成的特点 使电路大为简化 但此题使用PLD 则不能充分发挥其特点及优势 并且测量精度不够高 导致系统性能价格比降低系统功能扩展受到限制方案3 系统采用MCS251 系列单片机89C51 作为控制核心 性能好 价格便宜由于单片机的计数频率上限较低 12MHz 晶振时约500kHz 所以需对高频被测信号进行硬件欲分频处理 89C51 则完成运算控制及显示功能由于使用了单片机 使整个系统具有极为灵活的可编程性 能方便地对系统进行功能扩展与改进综上所述权衡各方面的利弊本系统采用方案三23 系统实现原理频率计的主要功能是测量周期信号的频率频率是单位时间内信号发生周期变化的次数如果我们能在给定的时间内对信号计数并将计数结果显示出来就能读取被测信号的频率数字频率计首先必须获得相对稳定与准确的时间同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号然后通过计数器计算这一段时间间隔内的脉冲个数将其换算后显示出来这就是数字频率计的基本原理AT89C51单片机为核心利用它内部的定时计数器完成待测信号频率的测量单片机AT89C51内部具有2个16位定时计数器定时计数器的工作可以由编程来实现定时计数和产生计数溢出中断要求的功能在构成为定时器时每个机器周期加1 使用12MHz时钟时每lus加1 这样以机器周期为基准可以用来测量时间间隔在构成为计数器时在外部引脚P34发生从1到0的跳变时计数器加1这样在计数闸门的控制下可以用来测量待测信号的频率外部输人每个机器周期被采样一次这样检测一次从1到0的跳变至少需要2个机器周期 24个振荡周期 所以最大计数速率为时钟频率的124 使用12MHz时钟时最大计数速率为500KHz 定时计数器的工作由相应的运行控制位TR控制当TR置1定时计数器开始计数当TR清0停止计数我们知道当系统晶振频率为12 MHz时即使定时计数器工作在方式1最长定时时间也不过65536 ms要获得1s 即1000 ms 的定时时间属于超长定时除了使用定时器功能外还要使用软件计数方法可使用定时器T1方式1定时时间可设为50 ms软件计数器初值为20定时器T1溢出时软件计数器减1当软件计数器减到0时就获得了1s的时间用于测量频率的计数器T0记录T1每次中断时的频率用软件的方式将其累加单片机所能检测的最大频率为500kHz所以设计了分频电路以降低频率进行更大频率的检测计数完后将最后的频率值乘以分频值以得到要测量的实际频率最后经数值转换输入显示电路最后经数值转换输入显示电路本设计测量范围为1HZ30MHZ测量误差为±2HZ单片机应用系统有软件和硬件两部分组成硬件是指单片机CPU扩展存储器输入输出接口电路及设备等组成的电路系统软件包括监控程序和各种应用程序本设计用到单片机的IO接口复位晶振和P34口的特殊功能T0计数功能存储器的扩展IO口的扩展等功能没用到有待在以后的继续深造中对其进行扩展及研究单片机应用系统的开发过程如图2-1所示图2-1利用计算机程序设计软件工程计算机单片机在自动控制数据采集数据处理和数据显示的方法设计本应用系统并采用计算机硬件应用系统一般的设计和研究方法完成简单的硬件应用系统的设计选型安装及调试频率计应用系统由整形电路分频电路单片机显示电路和系统软件所组成如图2-2图22第3章 硬件设计本章主要介绍系统相关芯片基础知识频率计应用系统的基本单元电路组成以及对基本电路的设计与实现31 系统相关芯片介绍 1 单片机主控模块单片机有以下选型原则1单片机的系统适应性单片机的系统适应性是指能否用这个单片机完成对应用系统的控制或数据处理的任务或增加一些附加的集成电路完成要求的任务而不是一味的追求高性能这是单片机选型最重要的原则系统适应性主要考虑以下问题阳端口数目中断源和定时器外围端口部件CPU吞吐量2单片机的可开发性单片机的可开发性是选择单片机的一个非常重要的因素如果所选用的单片机没有足够的开发手段那么该系统的开发将很难顺利的进行3单片机的可购买性单片机的购买途径是否顺畅以及购买量是否足够即是否直接从单片机生产厂家或其代理商处买到当我们用单片机来开发一个产品时势必有其数量的要求这就要求所选用的单片机也应有数量的保证另外还要关注一下此类的单片机是否仍然在生产中总之遵循以上原则对单片机进行选择一般来说就可以选择 图31 AT89C51管脚图出合适的用于具体的应用系统的单片机本设计采用AT89C51引脚排列如图1所示AT89C51是因为有编程灵活易调试的特点而且AT89C51的引脚较多利于电路的扩展它集成了CPURAMROM定时器计数器和多功能IO口等一台计算机所需的基本功能部件有40个引脚32个外部双向输入输出 IO 端口同时内含两个外中断口两个16位可编程定时计数器两个全双工串行通信口其片内集成了4KB的FLASHPEROM用来存放应用程序这个FLASH 程序存储器除允许一般的编程器离线编程外还允许在应用系统中实现在线编程并且还提供了对程序进行三级加密保护的功能AT89C51的另一个特点是工作速度更高晶振频率可高达24MHz 一个机器周期仅为500ms比MCS251系列单片机快了一倍 2 介绍74HC16174HC161是4位二进制同步加法计数器除了有二进制加法计数功能外还具有异步清零同步并行置数 保持等功能74161的逻辑电路图和引脚排列图如图2所示R是异步清零端LD是预置数控制端D0D1D2D3是预置数据输人端P和T是计数使能端CO是进位输出端它的设置为多片集成计数器的级联提供了方便2 74HC161的引脚排列图74HC161的功能表如表所示由表可知具有以下功能由状态表可知它具有分频的作用若输入计数器的C脉冲频率为f则从Q端输出脉冲频率为f2通常也称Q端输出信号是输人计数脉冲 C的2分频信号Q1端输出信号是输人计数脉冲C4分频信号Q4端输出信号是输人计数脉冲C16分频 信号N进制计数器可实现n分频 3 74LS02芯片如图33所示74LS02是由四个二端输入的或非门组成的集成芯片A1A和B1B4为输入端Y1Y4为输出端 VCC为电源GND为接地端图 图33 74LS02引脚图 74LS02的功能表见表3在本设计中用到其中的两个或 非门具体用法见控制电路的设计表 3 4 介绍74LS08如图34所示74LS08是由四个二端输入的与门组成的集成芯片A1A和B1B4为输入端Y1Y4为输出端VCC为电源GND为接地端图34 74LS08管脚图74LS08的功能表见表4在本设计中用到其中的两个与门具体用法见控制电路的设计表 432 硬件电路设计com 时钟电路设计时钟电路用于产生单片机工作所需的时钟信号时序是指令执行中各个信号之间的相互关系单片机本身就如同一个复杂的同步时序电路为了保证同步工作方式的实现电路要在唯一的时钟信号控制下严格地按照时序进行工作 AT89C51内部带有时序电路因此只需要在片外通过XTAL1和XTAL2引脚引入定时控制元件就可以构成一个稳定的自激振荡器在AT89C51的内部有一个增益反相放大器而在外部XTAL1和XTAL2之间接一个晶体振荡器和微调电路我们在本设计中使用的振荡器的频率一般要求保持在1212MHz之间并且它的频率可以向两端延伸 在高端可以达到40MHz低端可以达到0Hz为了方便我们选用12MHZ的晶振做定时控制元件如图35所示谐振电路有晶振和电容构成因为电容的大小影响振荡器的稳定性和起振的快速性所以C1C2选用1033pF并且将30pF的电容作为微调电容为了保证振荡器振荡的稳定性在设计时晶振电容等均应尽可能靠近芯片以减少分布电容图35 AT89C51时序电路com 复位电路设计单片机的复位就是对单片机的初始化就是让程序重新开始执行也就是说让单片机的PC寄存器初始化为0000H一般的初始化是指进入程序的正常初始化但是当程序出错或者操作错误使系统处于死锁状态时为了摆脱困境也需要按复位键使系统重新启动复位方式有自动复位和手动复位两种方式我们在本设计中采用手动复位的方式也就是采用按键复位的方式 单片机一般设置引脚RST为复位信号的输入端并且高电平有效其有效时间应该持续24个振荡脉冲周期以上我们在设计中使用12MHZ的晶振则复位信号的持续时间应超过2s才能完成复位动作其复位电路如图36 图36 AT89C51按键复位电路com 分频电路设计7进行了64分频使检测频率扩大到50000064HZ略大于30MHz满足了设计要求如图37所示高频率从U2的CLK端口输入经U2十六分频后从RCO进位端输出十六分频的信号再进入U3的CLK输入端从U3的Q1输出实现4分频两片合计将高频信号进行了64分频如图38所示为分频后的波形图在分频电路中只用到了74HC161的分频功能置数清零等功能没有用到因此74HC161的MRLOADENTU2除外和ENP都接高电平如图37所示信号的分频与否需要进行控制U2的ENT端就作为分频的控制端由控制电路控制图37 分频电路图38 64分频波形com 分频控制电路在分频电路中已经叙述过检测信号是否进行分频由分频控制电路控制分频电路如图39所示它由两个与门一个或非门和一个非门组成在实际电路中两个与门由7408芯片提供一个或门由7402芯片提供一个非门也由7402芯片提供具体是将7402芯片的一个或非门的一个输入端直接接地剩下一个输入端和一个输出端就组成了一个非门信号的控制由软件和硬件两部分完成如图39所示未分频信号由U5的1端口进入分频信号由U7的1端口进入当检测信号为低频时通过软件使单片机的P25口输出低电平此时U7将1端的分频信号断开低电平经过U6非门变为高电平使得U5的1端口的低频信号通过再经过U4送入T0计数端口进行频率的计数首先P25为高电平信号此时U7通路U5开路信号进入分频电路分频后从U7的1端口送入最后进入单片机的T0口进行信号检测检测的信号通过软件的方式还原具体见第四章软件设计当频率很低时甚至分频后为零则使P25为低电平信号信号直接进入单片机图39 分频控制电路com路设计 本设计采用LED数码管显示首先对数码管进行简要的介绍如图310所示为LED数码管的外部及内部结构LED数码管是由发光二极管显示字段的显示器件它由8个发光二极管构成通过不同的组合可显示0到9A到F及其小数点等字符数码管通常有共阴极和共阳极两种接法共阴极数码管的发光二极管阴极必须接低电平当某发光二极管的阳极为高电平一般为5V时此二极管点亮共阳极数码管的发光二极管是阳极接到高电平对于需点亮的发光二极管使其阴极接低电平一般为地即可显然要显示某字形就应使此字形的相应字形点亮实际就是送一个用不同电平组合代表的数据至数码管一般共阳极数码管必须外接电阻而共阴极不一定外接电阻LED显示器有静态显示和动态显示两种显示方式图310 LED数码管本设计采用了两个四位数码管显示采用了四位一体的共阳极数码管如图3-11所示AG为断码输入端DP为小数点14为位码输入总上述显示采用动态显示为增大显示亮度设置了上拉电阻以加大驱动电流数码管的段选端接单片机的P1口14位选端分别接单片机的P20P21P22P23数字频率计的显示只需09十个数字09的段码输入分别为十六进制数C0HF9HA4HB0H99H92H82HF8H80H90H图311 四位一体LED数码管第4章 软件设计 本章主要介绍整体设计思路及流程图相关程序的分析及流程图仿真软件及仿真过程41 整体设计硬件系统的设计完成后就要在其基础上设计系统所需要的软件系统系统功能是软硬件共同实现的两者缺一不可由于软件的可伸缩性最终实现的系统功能可强可弱差别很大因此在硬件结构确定后软件是系统功能强弱的决定性因素软件是在硬件的基础上来满足用户需求的系统功能控制逻辑对于单片机如果没有软件系统系统功能无法实现所以软件系统的正确与否是实现系统功能的关键软件系统不仅要正确还要能准确实现系统的功能要求对于软件系统设计比硬件的设计还要重要本设计的软件系统采用模块化的设计思想来实现测频模块化设计是将一个大的程序按功能分割成一些小的模块各个模块相对独立功能单一结构清晰接口简单利用这种模块化设计有许多优点减少了程序设计的复杂性提高了元件的可靠性缩短了开发周期避免程序开发的重复劳动易于维护和功能扩展本设计的软件功能模块分为主程序模块延时子程序模块定时计数器初始化子程序模块计数器计数转换子程序模块显示数字转换子程序模块中断服务程序模块显示及分频转换子程序模块等组成其流程图41如下图41 程序流程图本设计中中断主要实现50ms的计时下面列出了中断服务程序的流程图图42 T1中断服务程序本章主要以显示及分频转换子程序模块和中断服务程序模块为例介绍功能的实现42 程序分析com 显示及分频转换子程序显示及分频转换子程序如下unsigned int zhuanhuan unsigned int i short j 定义短整型数j switch i i为要显示的数字 case 0 j 0xC0 break 0的段码 case 1 j 0xF9 break 1的段码 case 2 j 0xA4 break 2的段码 case 3 j 0xB0 break 3的段码 case 4 j 0x99 break 4的段码 case 5 j 0x92 break 5的段码 case 6 j 0x82 break 6的段码 case 7 j 0xF8 break 7的段码 case 8 j 0x80 break 8的段码 case 9 j 0x90 break 9的段码 return j 将要显示的段码返回调用此程序处 void suan unsigned long i unsigned int a 0 if P_H 1 判断分频控制端低电平表示没分频 高电平表示已分频 i i64 若分频检测值乘以64 while 1 a i1000 取千位的数字 P1 zhuanhuan a 调用zhuanhuan 子程序 P_A 1 显示第一位 delay 124 延时1ms P_A 0 第一位熄灭 a i1000 100 取百位的数字 P1 zhuanhuan a P_B 1 显示第二位 delay 124 P_B 0 第二位熄灭 a i100 10 取个位的数字 P1 zhuanhuan a P_C 1 显示第三位 delay 124 P_C 0 第三位熄灭 a i10 取个位的数字 P1 zhuanhuan a P_D 1 显示第四位 delay 124 P_D 0 第四位熄灭 ZhuanhuanSuan子程序为分频控制及显示子程序该程序把检测到的频率数值转换成十进制数通过调用Zhuanhuan子程序调出相应的段码再付给P1口以显示当程序执行到Suan子程序时首先把检测的频率值付给i此程序中的i便是检测到的频率值以下各指令的作用见程序注释While1表示进入死循环这样是为了把检测到的频率实时的显示因此第一次检测完频率后若频率发生变化程序将不再检测这样方便某时刻频率的记录要再检测时只需按下复位键便可检测下一个频率com 中断服务程序中断服务程序如下void T1_I void interrupt 3 using 0 TR0 0 TR1 0 TH1 0x3C TL1 0xB0 TF0 0 TF1 0 void T1_I void interrupt 3 using 0位定时器T1的中断服务程序主要作用是实现定时的准确减少定时的误差同时还可以使检测的频率数比较准确当T1定时溢出时相应的中断标志位TF1置1程序立即转向相应的中断服务程序服务程序执行完以后返回中断处继续当前的程序中断服务程序的作用非常重要它使检测频率的精度大大提高由于每执行一条语句都要一定的时间若采用其他方法在执行语句时在时间上便会出现较大的误差使得检测的频率误差较大以上就显示及分频转换子程序模块和中断服务程序模块为例介绍了本设计的实现方法并详细介绍了程序指令的作用这已经基本可以达到理解程序的要求至于其他程序本章不再介绍43 仿真Proteus 软件搭建仿真电路 用Keil 软件进行了软件设计与调试经过Keil 软件调试 在没有差错的情况下 生成HEX 文件 此时源程序和HEX 文件应保存在同一目录下 否则仿真会出错然后把原理图的Sourse 目录加上源程序 双击AT89C51 芯片 并在目录上加上HEX 文件 这时已经把生成好的文件烧在了芯片中 注意每打一次原理图进行仿真时 必须重新设置Sourse 文件和HEX按照以上步骤将仿真软件调整好之后就可以将脉冲频率设置好输入到仿真软件内 得到最后的仿真结果从图仿真结果中可以看出 脉冲频率信号通过分频计数 较为成功的在数码管上显示出来虽然有一定的误差 但与其他方法相比 它所需要的外围器件较少 适用于嵌入式系统 得到的频率计领域较宽 精度较高 是一种较为成功的设计方案下面介绍仿真过程com Keil的使用在电脑上安装好keil软件后打开软件进入程序设计界面见下图新建文件并输入源程序保存文件输入保存的文件名注意这里要加后缀本设计采用的是C程序所以后缀加c本次文件名定为pinlvjic如图这样文件已经保存频率计文件夹里了接下来要新建工程选择顶部菜单中project下拉菜单的new project保存工程软件会默认路径为源程序文件夹保存工程后会弹出选择单片机菜单栏选择Atmel中的AT89C51此时工程已建好在左边工程栏中选择Target 1中的source group 1添加开始时新建的文件文件添加好后工程框内便会由源程序了设置输出HEX文件接下来进行编译若程序有逻辑或语法错误keil软件会自动检测出来然后进行修改再编译重复这个过程直到编译没有错误此时系统也将生成HEX文件如下图这时候程序已没有语法和逻辑错误但不表明能实现预期结果这就需要结合proteus软件进行仿真以实现预期结果com Proteus的使用电脑上安装好protues软件后打开软件进入电路设计界面把用到的元件添加到左面的元件栏中如下图添加元件后元件栏中便有所有需要的元件并可进行电路设计将所需的元件添加完后就可进行电路布局了本次设计布局见附录电路图布置好后将keil中生成的HEX文件添加到单片机中首先双击单片机点击Program File栏的文件包添加HEX文件之后便可以仿真了但没有出现预期结果时就要检查程序的功能实现是否正确还可以添加omf文件查看程序运行情况以检查出现错误的原因具体这里就不再介绍如下图下图为仿真的结果是将200Hz的正弦波检测并显示出来的结果第5章 单片机应用系统调试单片机应用系统的硬件调试和软件调试是分不开的许多硬件故障是在调试软件时才发现的但通常是先排除系统中明显的硬件故障后才和软件结合起来调试如电解电容二极管的极性错误集成块安装方向错误等在印刷电路板布线密度高的情况下 极易因工艺原因造成短路引起系统不可靠的因素很多如金属化孔接插件接触不良会造成系统时好时坏内部和外部的干扰电源纹波系数过大器件负载过大等造成逻辑电平不稳定另外走线和布局的不合理等也会引起系统可靠性差若样机中存在电源故障则加电后将造成器件损坏电源的故障包括电压值不符合设计要求电源引出线和插座不对应电源功率不足负载能力差对于样机所用的电源事先必须单独调试调试好后检查其电压值负载能力极性等均符合要求才能加到系统的各个部件上在不插片子的情况下加电检查各插件上引脚的电位仔细测量各地点电位是否正常尤其应注意单片机插座上的各点电位是否正常若有高压联机时将会损坏开发机对于模块结构程序要一个个子程序分别调试调试子程序时一定要符合现场环境即入口条件和出口条件调试的手段可采用单步运行方式和断点运行方式通过检查用户系统CPU的现场RAM的内容和IO口的状态检测程序执行结果是否符合设计要求通过检测可以发现程序中的死循环错误机器码错误及转移地址的错误同时也可以发现用户系统中的硬件故障软件算法及硬件设计错误在调试过程中不断调整用户系统的软件和硬件逐步通过一个个程序模块各程序模块通过后可以把各功能块联合起来一起进行整体程序综合调试在这阶段若发生故障可以考虑各子程序在运行时是否破坏现场缓冲单元是否发生冲突零位的建立和清除在设计上有否失误堆栈区域有否溢出输入设备的状态是否正常等等若用户系统是在开发系统的监控程序下运行时还要考虑用户缓冲单元是否和监控程序的工作单元发生冲突单步和断点调试后还应进行连续调试这是因为单步运行只能验证程序的正确与否而不能确定定时精度CPU的实时响应等问题待全部完成后应反复运行多次除了观察稳定性之外还要观察用户系统的操作是否符合原始设计要求安排的用户操作是否合理等必要时还要作适当修正在全部调试和修改完成后将用户软件固化于EPROM中插入用户样机后用户系统即能脱离开发机独立工作至此系统研制完成 1 晶振的准确度会影响一秒定时的准确度从而引起测量结果误差 2 单片机计数速率的限制引起误差被测信号频率越高测量误差越大且所测信号频率不能超过500kHz 这是因为用软件的方法使单片机定时1秒时测量频率最大为25kHz×20Hz当所测频率越接近25kHz×20Hz时测量结果与实际频率的误差就越大 3 原理上存在±1 误差由于该设计是在计数门限时间一秒内的频率信号脉冲数所以定时开始时的第一个脉冲和定时时间到时的最后一个脉冲信号是否被记录存在随机性这种误差对测量频率低的信号影响较大54 减小误差措施 1 选用频率较高和稳定性好的晶振如选12 MHz的晶振可使测量范围扩大稳定性好的晶振 2 测量频率较高的信号时可先对信号进行分频再进行测量 3 延长门限时间减少原理上±1 的相对误差 4 可多次测量取平均值第6章 总结本文通过运用单片机 Proteus 及keil仿真软件成功地实现了数字频率计的设计数字频率计是一种基本的测量仪器是用数字显示被测信号频率的仪器 如配以适当的传感器 可以对多种物理量进行测试 因此 它被广泛应用于航天电子测控等领域随着电子技术的快速发展 它将被更广泛的应用到各个领域中去目前市场上的频率计功能很多价格不菲然而在很多实际应用场合只需要单独测量频率不需要太多功能如果使用市面上的频率计就会有很大的浪费本文研究的频率计已经通过了仿真板调试各项功能达到了预定的设计指标整个系统体积较小价格便宜操作简单显示清晰且误差小有较高的实用价值致 谢 感谢参考文献 1华成英童com出版社200852com出版社20085 3谭com出版社200574周润景张丽娜刘应群主编proteus入门使用教程机械工业出版社 200795张毅坤陈善久裘雪红编单片微型计算机原理与应用西安电子科技大学出版社2006126张com出版社200477王幸之钟爱琴王雷王闪编AT89系列单片机原理与接口技术北京航空航天大学出版社200458闫玉德俞虹编MCS-51单片机原理与应用C语言版机械工业出版社 200319尹国光编基于单片机的数字频率计的设计和仿真中国新通信 技术版 2008410郝建国刘立新党建华编 基于单片机的频率计设计 西安邮电学院学报 20038附录 电路原理图附录 外文资料与翻译Remote Type MCU TimerEvent CountersTimerEvent CountersAs the HT48RA0-2HT48CA0-2 and HT48RA0-1HT48CA0-1 do not contain internal timers note that this section does not apply to these devicesThe provision of internal timers form an important part of any microcontroller giving the designer ameans of carrying out time related functionsAlthough the HT48RA0-2HT48CA0-2 and HT48RA0-1HT 48CA0-1 devices do not possess any internal TimerEvent Counters the HT48RA1HT48CA1 HT48RA3HT48CA 3 and HT48RA5HT48CA5 devices contain two internalTimerEvent Counters namely one 8-bit timer and one 16-bit timer As each timer has three different operating modes they can be configured to operate as a general timer an external event counteror as a pulse width measurement device In the case of 8-bit timers the provision of an internal8-stage prescaler in the timer clock circuitry gives added range to the 8-bit timersThere are two types of registers related to the TimerEvent Counters The first is the register thatcontains the actual value of the timer and into which an initial value can be preloaded Reading from this register retrieves the contents of the TimerEvent Counter The second type of associated register is the timer control register which defines the timer options and determines how thetimer is to be used The timer clock source for the 8-bit timer can be configured to come from the internal system clock source fSYS or alternately from the external timer input pin TMR0 The timer clock source for the 16-bit timer can be configured to come from the internal system clock source divided by 4 namely fSYS4 or alternately from the external timer input pin TMR1An external clock source is used when the timer is in the event counting mode the clock source beingprovided on the external timer pin known as TMR0 or TMR1 which are pin-shared with the PC0 and PC5 IO pins respectively Depending upon the condition of the T0ET1E bit in the correspondingtimer control register each high to low or low to high transition on the external timer inputpin will increment the counter by oneConfiguring the TimerEvent Counter Input Clock SourceThe internal timer_s clock source can originate from eithe

    注意事项

    本文(电气自动化专业毕业论文基于单片机的数字频率计设计.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开