51/AVR单片机技术驿站!  <在线翻译>     便利工具    特色网址   无弹窗、无插件的绿色站点...  英才招聘   学历查询  喜欢>>收藏我站 

当前位置:首页 > 单片机技术文章 > 51单片机 > 详细内容
基于单片机高性价比频率计的设计与实现
发布时间:2009/8/8  阅读次数:547  字体大小: 【】 【】【

作者:冯雷星 杨伟 芦艳龙 来源:微计算机信息

摘要:该系统以8051单片机为核心,应用单片机的运算和控制功能并采用LED显示器实时地将所测频率显示出来,既满足测量的精度要求,  又具有很好的性能价格比。
关键词:单片机    同步    频率测量

1 系统测量原理

测量方法采用多周期同步测量法,保证了测量精度。

多周期同步测量原理与传统的频率和周期的测量原理不同,时钟信号(f0)经同步电路作用后与被测信号同步。主门 与主门 在时间T 内被同时打开,于是计数器 和计数器 便分别对被测信号和时钟信号的周期数进行累计。在T内,事件计数器的累加数为Na;时间计数器的累加数为Nb。再由单片机运算得出被测频率为(Na/Nb)×f。由于D触发器的同步作用,计数器 所记录的Na值已不存正负1误差的影响。但由于时钟信号与闸门的开和关无确定的相位关系,计数器 所记录的Nb值仍存在正负1误差的影响,由于时钟频率很高,正负1误差影响小,所以测量精度与被测信号频率无关,且在全频段的测量精度是均衡的。

图1 系统测量原理框图

2 系统硬件设计

在频率计设计中,硬件电路采用了8051单片机、双四位二进制计数器74LS393、缓存器74LS244、8155带RAM和定时器/计数器的可编程并行接口芯片、16K程序存储器扩展芯片2716、十倍分频器74s196、反向器74ls14、反向驱动器7406、7407等。所采用的芯片技术成熟,性能可靠,性价比较高。

系统硬件主要由四部分组成:通道部分、计数器部分、单片机控制和接口部分、显示部分。

2.1通道部分

本频率计的输入通道由两部分组成,第一部分就是常见的信号预处理电路,包括对被测信号的放大、整形、滤波等等。第一级由开关三极管构成的零偏置放大器,三极管采用开关三极管以保证放大器具有良好的高频响应。第二级是由74LS14施密特触发器构成的电路。施密特触发器一方面起到整形作用,用于把放大器生成的单相脉冲信号转换成与TTl/CMOS兼容的方波信号。另一方面其滞后带宽可以有效抑制信号中的干扰。第三级是由74ls196构成的分频器电路。本机设计测频范围20HZ~100MHZ,当被测频率大于10 MHZ时,需经分频电路分频后再送入计数器电路。第四级是由4N25构成的光电隔离电路,用于把输入的电信号转化为光信号进行传输,从而把测量电路与外界干扰隔开,能有效地保证测量精度。

第二部分是同步门电路,它的作用是保证被测信号和频率基准信号同时进入测量电路。其构成主要包括由与门组成的主门I和主门II,以及由D触发器构成的同步门控制电路,主门I控制被测信号fx的通过,主门II控制时钟信号f的通过。

2.2计数器部分

计数器包括时间计数器和事件计数器两部分,它们是完全相同的计数电路。分别由前后两级组成,前级电路由高速的TTL计数器74LS393构成八位二进制计数器;后级由单片机内的计数器构成十六位二进制计数器。计数前,先由P1.3发计数器清零信号,计数后通过74LS244 缓冲器将测量结果读入内存。这样设计既充分利用了硬件资源,又大大提高了测量频率范围。

图2 计数器电路图

2.3 单片机控制和接口部分

8051单片机的任务是进行整机测量过程的控制、故障的自动检测以及测量结果的处理与显示等。

P1口与P2 口被用于施加各种控制信号,其中:P1.0 作为预置闸门时间的控制线;P1.1作为同部门控制电路的复位信号线;P1.2用于查询闸门时间的状态线;P1.3作为计数器复位信号线。

单片机内部有两个16位二进制定时/计数器,用做两个主计数器的一部分,并通过T0,T1分别与外部事件计数器和时间计数器的进位端相接。外部的时间计数器和事件计数器的测量结果分别通过扩展输入口与P0口相连。

8155作为单片机的扩展I/O口,主要用来与显示电路接口, 8155内部的14 位计数器被用来作为本机的闸门时间计数器,定时器的输入信号取自单片机ALE端;定时器的输出与单片机的INT1相连,作为中断信号。

2.4 显示部分

采用8 位LED数码管进行显示。这是一个较为典型的采用8155并行口组成的显示电路。八位LED显示采用了动态显示软件译码工作方式。LED显示器选用共阴极,段码由8155PA口提供,位选码8155PB口提供。其中7406反向驱动器做作为位选码驱动器,这是因为8155PB口正逻辑输出的位控与共阴极LED要求的低电平点亮正好相反,即当PB口位控线输出高电平时,点亮一位LED。7407是同相驱动器,作段选码驱动器。

3 系统软件设计

软件采用汇编语言编写,应用模块化设计方法,主要包括中断监控服务程序,数值比较子程序,数据处理子程序,十进制转换子程序,LED显示子程序。主流程图如下:

图3 程序主流程图

程序编写较难的部分是数据处理部分,它涉及到多字节的乘除法。因为乘数和被乘数各为三字节,因此需要进行九次乘法运算,得到九个部分积。我们知道MUL AB 指令,把累加器A和寄存器B中的两个无符号8位数相乘,所得的16位乘积结果,低位字节放在A中,高位字节放在B中。假定部分积的高字节以“H ”为标志,部分积的低字节以“L”为标志,还要对相加产生的进位进行处理。  

下图为乘法的具体实现过程的示意图:

4 乘法运算示意图

乘法运算程序的关键段如下:

     MOV A,R6

     MOV B,R3    

     MUL AB                         ;得第一次部分积

     MOV O8H,A                 ;得乘积的第六字节

     MOV 09H,B                 ;R3R6H

     MOV A,R6

     MOV B,R2      

     MUL AB                         ;得第二次部分积

     ADD A,O9H                   ;R3R6H+R2R6L

     MOV 0BH,A

     CLR A

     ADDC A,B                   ;R2R6H+C

     MOV OAH,A

     MOV A,R6

     MOV B,R1

     MUL AB                         ;得第三次部分积

     ADD A,0AH                 ;R2R6H+R1R6L

     MOV OCH,A

     CLR A

     ADDC A,B                   ;R1R6H+C

4 结束语

该系统结构简单,与传统的电路相比,该系统处理速度快、稳定性高,采用多周期同步测量法实现全频段的频率精确测量,具有较高的性价比。

本文的创新观点是计数器和定时器分别由前后两级组成,前级电路由高速的TTL计数器74LS393构成八位二进制计数器;后级由单片机内的计数器构成十六位二进制计数器,大大提高了频率计的测量范围。

参考文献

[1]李光第,朱月秀等 . 单片机基础[M] . 北京航空航天大学出版社,2004

[2]李朝青. 单片机原理及接口技术设计[M] . 北京航空航天大学出版社,2003

[3]赵茂泰. 智能仪器原理及应用[M] . 电子工业出版社,2004

[4]赫建国,刘建新等 . 基于单片机的频率计设计[J] 西安邮电学院学报,2003

[5]曹柏荣,林士玮 . 基于单片机的康复仪研究[J] 微计算机信息, 2006,2-1:21-23。

我要评论
  • 匿名发表
  • [添加到收藏夹]
  • 发表评论:(匿名发表无需登录,已登录用户可直接发表。) 登录状态:未登录
最新评论
所有评论[0]
    暂无已审核评论!

网站导航 管理登陆 ┊ 免责声明 问题反馈  友链说明
本站部分内容来自网络共享资源,如有冒犯您的权利请来信告之删除或纠正!
不得对本站进行复制、盗链或镜像,转载内容须获得同意或授权;欢迎友情链接、站务合作!

    我要报警 Alexa
 mcusy_cn#126.com (请把#改成@) 交流:522422171
本站学习交流群:138..158(高级群1-)、77930286(高级群2)、61804809(群3)
Copyright© MCUSY All Rights Reserved
本站网警备案号: WZ36040002485
  ICP备案证书号:粤ICP备09034963号