资源描述
. . . .
《智能仪器》报告书
题目:智能频率测试仪的设计
院系:机电工程学院
专业: 应用电子技术
班级:零九一班
:宋建琪
学号:2009061525
指导老师:董卫军
日期:2011.12
智能频率测试计
单片机是20世纪中期发展起来的一种面向控制的大规模集成电路模块,具有功能强、体积小、可靠性高、价格低廉等特点,在工业控制、数据采集、智能仪表、机电一体化、家用电器等领域得到了广泛的应用,极大的提高了这些领域的技术水平和自动化程度。
一 智能频率计
1.1智能频率计概述
智能频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的智能测量仪器。它的基本功能是测量正弦信号,方波信号与其他各种单位时间变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。 设计要求与方法
智能频率测试仪的设计
⑴.功能要求
①.可以测量被测信号的频率。
②.使用多周期同步测量原理,实现全频段等精度测量。
③.输入采用交流耦合方式。
④.使用220V/50Hz交流电源,设置电源开关、电源指示灯和电源保护功能。
⑵.主要技术指标
①.测量频率围:1Hz~1MHz
②.测量误差:≤0.01%(全频段)
③.额定输入信号电压:500mV
④.最大输入信号电压:100V
⑤.输入阻抗:1MΩ
⑥.显示方式:6位LED数码管显示被测信号的频率。以AT89C51为中心
测量围从1Hz—10kHz的正弦波、方波、三角波,时基宽度为1us,10us,100us,1ms。用单片机实现自动测量功能。
基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。
1.2频率测量仪的设计思路与频率的计算
图1 频率测量原理图
频率测量仪的设计思路主要是:对信号分频,测量一个或几个被测量信号周期中已知标准频率信号的周期个数,进而测量出该信号频率的大小,其原理如右图1所示。
若被测量信号的周期为,分频数m1,分频后信号的周期为T,则:T=m1Tx 。由图可知: T=NTo
(注:To为标准信号的周期,所以T为分频后信号的周期,则可以算出被测量信号的频率f。)
由于单片机系统的标准频率比较稳定,而是系统标准信号频率的误差,通常情况下很小;而系统的量化误差小于1,所以由式T=NTo可知,频率测量的误差主要取决于N值的大小,N值越大,误差越小,测量的精度越高。
频率测试仪的设计方案有如下两种方案:
方案一:方案主要有四部分组成:信号整形部分,单片机控制部分,时基电路部分,,数据锁存部分和数据显示部分。
基本流程:待测信号进入系统,信号整形部分会将其整形成脉冲,另一方面时基电路提供标准的时基脉冲,在其上升沿达到1S时结束技术。而在这一秒测得的整形后的脉冲频率就是待测信号的频率,然后单片机送数据锁存等待命令。
方案一的缺点:设计关键是555定时器构成的多谐振荡器提供的标准脉冲,实际在现实中很难做到精确度1S,这点不好掌握,影响以后的技术精度。
数据锁存部分
信号整形部分
单片机部分
时基电路部分
显示部分
方案一的系统框图
方案二:有五部分组成:信号整形部分,分频处理部分,数据选择部分,单片机部分,数据显示部分。整体框图如下
显示部分
数据选择部分
信号整形部分
单片机部分
分频处理部分
工作流程:待测信号进入系统,信号整形部分会将其整形成脉冲,经过分频器。分频出两个信号,一个给单片机,一个给选择器,数据选择器处理后也将信号给单片机经过处理,运算,最后将数据送给显示部分,以用户的形式显示出来。
方案二的优缺点:是利用分频器应对大量程的测量,相对方案一的优势,如果测量频率不大的话,可以直接测量。就不存在方案一的问题,方案二也有缺点,就是待测信号比较大时,需要分频,这样就对原来的频率破坏,存在误差较大。
两种方案各有优缺点,虽然在理想状态下两种方案均可,考虑到本次实训条件,555定时器很难做到精准1s计时,而且测量小频率时,方案二可以避免破坏原频率,方案二较为合适。
1.3基本设计原理
基本设计原理是直接用十进制数字显示被测信号频率的一种测量装置。它以测量周期的方法对正弦波、方波、三角波的频率进行自动的测量。
所谓“频率”,就是周期性信号在单位时间(1s)变化的次数。若在一定时间间隔T测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率fx。时间基准信号发生器提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等于1s。闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。秒信号结束时闸门关闭,计数器停止计数。由于计数器计得的脉冲数N是在1秒时间的累计数,所以被测频率fx=NHz。
二 智能频率计(低频)的系统硬件结构设计
2.1 系统硬件的构成
本频率计的数据采集系统主要元器件是单片机AT89C51,由它完成对待测信号频率的计数和结果显示等功能,外部还要有分频器、显示器等器件。可分为以下几个模块:放大整形模块、秒脉冲产生模块、换档模拟转换模块、单片机系统、LED显示模块。各模块关系图如图2所示:
图2 智能频率计功能模块
2.2 系统工作原理图
图3 智能频率计系统工作原理图
2.3 稳压电源的设计
电子电路中的电源一般是低压直流电,所以要想从 220 伏市电变换成直流电,应该先把 220 伏交流变成低压交流电,再用整流电路变成脉动的直流电,最后用滤波电路滤除脉动直流电中的交流成分后才能得到所要得的+5伏直流电。
2.4 光电式传感器的选择
光电传感器通常是指能敏感到由紫外线到红外线光的光能量,并能将光能转化成电信号的器件。其工作原理是基于一些物质的光电效应。
光电效应:当具有一定能量E的光子投射到某些物质的表面时,具有辐射能量的微粒将透过受光的表面层,赋予这些物质的电子以附加能量,或者改变物质的电阻大小,或者使其产生电动势,导致与其相连接的闭合回路中电流的变化,从而实现了光—电转换过程。
2 . 5 AT89C51的选择
管脚说明:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。
P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚 备选功能
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口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电 平用于锁存地址的地位字节。
/PSEN:外部程序存储器的选通信号。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。
XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。
2.6 七段码LED显示器
单片机常使用7段LED构成字型“8”,另外,还有一个小数点发光二极管以显示数字、符号与小数点.这种显示器有共阴极和共阳极两种,如图所示.发光二极管的阳极连在一起的(公共端K0)称为共阳极显示器,阴极连在一起的(公共端K0)称为共阴极显示器.一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)a~g,另一个小数点为dp发光二极管.当在某段发光二极管上施加一定的正向电压时,该笔划即亮;不加电压则暗.为了保护各段LED不被损坏,需外加限流电阻.
LED七段显示器
三 系统软件设计
3.1 系统工作流程图
3.2 系统软件工作原理
将整形后的波形送至单片机的T1计数器输入口,打开定时器0,初始化定时器0,将单片机的部定时器T0定时为1S,此时T1输入口在1s所计数到的脉冲个数即为该信号的频率。将该计数脉冲个数经单片机处理送至LED显示。
3.3 系统软件处理方法
本频率计的设计以 AT89S52 单片机为核心 ,利用它部的定时/ 计数器完成待测信号频率的测量 。单片机 AT89S52 部具有 2 个 16 位定时/计数器 ,定时/ 计数器的工作可以由编程来实现定时 、计数和产生计数溢出中断要求的功能 。在构成为定时器时 ,每个机器周期加 1 (使用 12M Hz 时钟时 ,每 1us 加 1) ,这样以机器周期为基准可以用来准确定时1S。在构成为计数器时 ,在相应的外部引脚发生从 1 到 0 的跳变时计数器加 1 ,这样在计数闸门的控制下可以用来测量待测信号的频率 。外部输入每个机器周期被采样一次 ,这样检测一次从1 到 0 的跳变至少需要 2 个机器周期 (24 个振荡周期) ,所以最大计数速率为时钟频率的 1/ 24 ( 使用12M Hz 时钟时 ,最大计数速率为 500 KHz) 。定时/计数器的工作由相应的运行控制位 TR 控制 ,当 TR置 1 ,定时/ 计数器开始计数 ;当 TR 清 0 ,停止计数 。设计综合考虑了频率测量精度和测量反应时间的要求 。
四 智能频率计
4.1 原理图
4.2 系统各部分流程图
主程序流程图 中断程序流程图
4.3 汇编源程序代码(程序)
各单元子程序已经设计完毕,将各子程序通过适当的指令起来,总程序的第一部分为T0、T1初始化,第二部分为1定时,第三部分为计数,第四部分为采集频率,第五福分为进制转化,第六部分为数码显示,这几各部分即构成了频率计系统的总体程序,如下所示。
20 / 20
NUMBYT EQU 5DH
SLA EQU 5EH
MTD EQU 5FH
SCL EQU P1.0
SDA EQU P1.1
ORG 0000H
AJMP START
ORG 000BH ;T0中断入口
AJMP T0INT
ORG 001BH ;T1中断入口
AJMP T1INT
ORG 0030H
START:
MOV SP,#70H
MOV IE,#8AH ;开放T0、T1中断
MOV TMOD,#51H ;T0定时,T1计数
MOV TH0,#0DCH
MOV TL0,#00H ;定时10ms
MOV20H,#100 ;100*10ms=1s
MOV TH1,#00H
MOV TL1,#00H
MOV 21H,#0
MOV 22H,#0
MOV 23H,#0;存放采集到的频率
SETB TR1
SETB TR0
WAIT:AJMP WAIT ;等待中断
T1INT:
INC 23H;计数器溢出则23H单元自增1
RETI
T0INT: ;定时10ms产生中断
DJNZ 20H,NEXT1
CLR TR1
CLR TR0
MOV 22H,TH1 ;1s时间到则采集数据
MOV 21H,TL1
ACALL DISPLAY
AJMP EXIT
NEXT1:MOV TH0,#0DCH ;继续定时
MOV TL0,#00H
EXIT:RETI
DISPLAY:
MOV R0,#60H
MOV R1,#08H ;对60H-67H单元清零
NEXT2:MOV R0,#0
INC R0
DJNZ R1,NEXT2
ZHUANHUAN: ;进制转换
MOV A,23H
MOV B,#0AH
DIV AB
MOV 24H,A ;存储第一位商
MOV A,B
MOV 30H,22H
ANL 30H,#0F0H
ADD A,30H
SWAP A
MOV B,#0AH
DIV AB
MOV 25H,A ;存储第二位商
MOV A,B
SWAP A
ANL 22H,#0FH
ADD A,22H
MOV B,#0AH
DIV AB
MOV 26H,A ;存储第三位商
MOV A,B
MOV 30H,21H
ANL 30H,#0F0H
ADD A,30H
SWAP A
MOV B,#0AH
DIV AB
MOV 27H,A ;存储第四位商
MOV A,B
SWAP A
ANL 21H,#0FH
ADD A,21H
MOV B,#0AH
DIV AB
MOV 28H,A ;存储第五位商
MOV 50H,B ;存储十进制数个位
;;;;;;;;;;;;;;;;;
MOV A,24H
SWAP A
ADD A,25H
MOV B,#0AH
DIV AB
MOV 24H,A ;存储第一位商
MOV A,B
SWAP A
ADD A,26H
MOV B,#0AH
DIV AB
MOV 25H,A ;存储第二位商
MOV A,B
SWAP A
ADD A,27H
MOV B,#0AH
DIV AB
MOV 26H,A ;存储第三位商
MOV A,B
SWAP A
ADD A,28H
MOV B,#0AH
DIV AB
MOV 27H,A ;存储第四位商
MOV 51H,B ;存储十进制数十位
;;;;;;;;;;;;;;;;;
MOV A,24H
SWAP A
ADD A,25H
MOV B,#0AH
DIV AB
MOV 24H,A ;存储第一位商
MOV A,B
SWAP A
ADD A,26H
MOV B,#0AH
DIV AB
MOV 25H,A ;存储第二位商
MOV A,B
SWAP A
ADD A,27H
MOV B,#0AH
DIV AB
MOV 26H,A ;存储第三位商
MOV 52H,B ;存储十进制数百位
;;;;;;;;;;;;;;;;;
MOV A,24H
SWAP A
ADD A,25H
MOV B,#0AH
DIV AB
MOV 24H,A ;存储第一位商
MOV A,B
SWAP A
ADD A,26H
MOV B,#0AH
DIV AB
MOV 25H,A ;存储第二位商
MOV 53H,B ;存储十进制数千位
;;;;;;;;;;;;;;;;;
MOV A,24H
SWAP A
ADD A,25H
MOV B,#0AH
DIV AB
MOV 54H,B ;存储十进制数万位
MOV 55H,A ;存储十进制数十万位
PINBI: ;将高位的0屏蔽不显示
MOV R3,#0
MOV R0,#55H
ST2:MOV A,R0
JZ ST1
AJMP SHUMA
ST1:INC R3
DEC R0
AJMP ST2
SHUMA:
MOV A,#6
CLR C
SUBB A,R3
MOV R2,A ;将需要显示的位数存入R2
MOV R0,#50H
MOV R1,#5FH
MOV DPTR,#TAB
NEXT3:MOV A,R0
MOVC A,A+DPTR
INC R0
INC R1
MOV R1,A
DJNZ R2,NEXT3
MOV MTD,#10H
MOV NUMBYT,#09H
MOV SLA,#70H
LCALL WRNBYT
RET
WRNBYT:
PUSH PSW
WRNBYT1:
MOV PSW,#18h
CALL STA
MOV A,SLA
CALL WRB
CALL CACK
F0,WRNBYT
MOV R0,#MTD
MOV R5,NUMBYT
WRDA:
MOV A,R0
LCALL WRB
LCALL CACK
F0,WRNBYT1
INC R0
DJNZ R5,WRDA
LCALL STOP
POP PSW
RET
WRB:MOV R7,#8 ;字节数据发送
WLP:RLC A
JC WR1
CLR SDA
SETB SCL
NOP
NOP
NOP
NOP
CLR SCL
DJNZ R7,WLP
RET
WR1:SETB SDA
SETB SCL
NOP
NOP
NOP
NOP
CLR SCL
CLR SDA
DJNZ R7,WLP
RET
CACK:
SETB SDA
SETB SCL
NOP
NOP
MOV C,SDA
MOV F0,C
CLR SCL
NOP
NOP
RET
STA:
SETB SDA ;发送起始位
SETB SCL
NOP
NOP
NOP
NOP
CLR SDA
NOP
NOP
NOP
NOP
CLR SCL
RET
STOP:
CLR SDA ;发送停止位
SETB SCL
NOP
NOP
NOP
NOP
SETB SDA
NOP
NOP
NOP
NOP
CLR SCL
RETI
TAB:DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H
END
五 设计心得
本次课程设计有较强的综合性,不仅要求设计者能灵活使用单片机的各种指令,熟练使用单片计计数器与定时器,熟练编写顺序结构程序,循环结构程序以与分支结构程序,还要求对单片机的电路连接结构,
经过一个多星期的资料收集与查询,又经过几天的总体构思,在脑中对频率计的设计有了一个总体的框架,对程序的流程图也有一个基本的结构,最后结合参考资料,结合自己对单片机知识的认识,又经过两天对程序的编写以与程序的改进,最后终于完成了本次课程设计各各项容。看着自己亲自通过自己的知识和努力设计的频率计,心里是很欣慰的,因为我从这次课程设计不仅仅只是得到了一个自己的产品,还学到了很多,例如面对问题要保持冷静,特别是在程序的编写这一块,要找出程序的错误一定要有一个冷静的头脑,否则很难发现错误甚至是越改越错。另外我还认识到与他人合作的重要性,虚心向别人学习,吸取别人编写程序的一些好的风格与特点再融入到自己的程序中,都是一些不错的方法。
六 参考文献
1.朝青 单片机技术与接口技术 航天航空大学,2002
2.光飞 楼苗然主编.51系列单片机.:航空航天大学
3.自美 电子线路设计·实验·测试.华中理工大学,2002
4.永甫 电子电路智能化设计.实例与应用.:电子工业出版
展开阅读全文