单片机等精度频率计设计.doc

上传人:laozhun 文档编号:4136633 上传时间:2023-04-07 格式:DOC 页数:23 大小:263.50KB
返回 下载 相关 举报
单片机等精度频率计设计.doc_第1页
第1页 / 共23页
单片机等精度频率计设计.doc_第2页
第2页 / 共23页
单片机等精度频率计设计.doc_第3页
第3页 / 共23页
单片机等精度频率计设计.doc_第4页
第4页 / 共23页
单片机等精度频率计设计.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《单片机等精度频率计设计.doc》由会员分享,可在线阅读,更多相关《单片机等精度频率计设计.doc(23页珍藏版)》请在三一办公上搜索。

1、项目名称:单片机等精度频率计设计参赛单位:淮安信息职业技术学院 设 计 人: 专 业:电子与信息工程 指导老师: 单片机等精度频率计设计(江苏淮安信息职业技术学院 )摘要:本设计利用D触发器控制两个计数器(count1和count2)的同时启动与停止,首先保证了count1和count2的计数时间是一致的。同时count1和count2与单片机的定时器T0和T1构成两个20位的计数器,分别对标准频率脉冲和被测频率脉冲进行同时计数。利用单片机串行口运行输出显示,从而克服了传统测频原理的频率计的测量精度随被测信号频率的下降而降低的局限性,提高了测量的精度。关键词: 频率 计数器 单片机 等精度一

2、引言 利用单片机、2个计数器以及D触发器对被测信号脉冲与标准信号脉冲,同时计数,实现频率测量功能。在保证产品质量和提高产品功能的同时降低制作成本, 对产品进行简化设计。1.现有技术背景传统测频原理的频率计的测量精度,通常随被测信号频率的下降而降低,在实际应用过程中有很大的局限性。2. 科学实用的应用价值等精度频率计能够大幅提高频率的测量精度,从而更有利于科研和生产中的频率测试。 我们制作的频率测量计, 合理利用单片机的各项性能, 对被测信号、标准信号进行脉冲计数。本产品能信号频率进行精确测量。 产品的产生, 将极大程度上突出价格便宜, 取材方便、就地, 电路简易的广泛适用特点, 值得推广!二

3、单片机用于频率测量设计1. 本系统的功能与性能 本系统的功能主要有信号脉冲计数, 数据处理, 输出显示控制。它能对(50KHz2MHz)范围的频率进行精确的测量, 同时八位LED显示器直接跟踪显示被测信号的频率值, 准确度高, 显示清晰, 稳定可靠, 使用方便。 (在具体的设计编程,调试过程中为了调试的方便,编程把频率范围设在50KHz2MHz) 。 本系统的原理框图如下图所示,计数器部分对标准频率与被测频率进行同步开启计数与关闭计数。单片机部分对计数数据进行运算处理,显示电路对单片机输出数据进行直观显示。 2. 确定系统基本结构及硬件设计基本组成:1) 单片机选用MCS-51系统89C51首

4、选89C51的理由是价格便宜, 有开发环境。2) D触发器利用D触发器控制两个计数器(count1和count2)的同时启动与停止,从而保证了count1和count2的计数时间是一致的。3原理图的设计 原理图的设计要求符合以下几点要求1) 原理图设计要符合项目的工作原理,连线正确。2) 单片机最小系统正常工作。3) D触发器能同时开启与关闭计数器。4) 计数器能准确的对两路信号(标准频率与被测频率)脉冲进行计数。5) 同时注意电路的排版整齐三 单元电路分析1. 信号输入电路部分两个外接计数器,Count1与Count2(74LS161),与单片机内部的定时器构成两个20位的计数器,分别用于对

5、标准频率脉冲和被测频率脉冲进行计数。D触发器用于控制计数器同时启动和停止。D触发器的Q端接到两个计数器的使能端上,Q=1时,两计数器同时启动,Q=0时两计数器同时停止计数,保证两个计数器计数时间是一致的。两个外接计数器既作为计数器,又能起到分频的作用,使加到T0和T1的频率不能太高。保证T0和T1准确计数,增加两个计数器的位数可以扩大测频的范围。2.单片机电路部分单片机89C51用于控制整个系统的运行,计算由两个计数器送过来的脉冲计数数据,由单片机的数据运算处理功能计算出被测信号频率,输出串行数据,传送到串行译码显示电路,显示被测信号的精确频率值。3.串行显示电路利用74LS164移位寄存功能

6、(分频)对单片机输出的串行数据逐级分频,从第一级到最后一级总共分8次,这样就把单片机输出的串行数据转换为并行数据,RXD输入数据信号,TXD输入移位时钟脉冲信号,74LS164的译码显示功能,对数据进行频段译码,分8段进行数码显示,直观明了。本电路设计简单,避免了并行输出线路复杂,不易布线的问题。四.程序流程单片机等精度频率计的软件软件流程并不复杂,按照测频原理一步步做如下即可。编写程序时,一定要先允许T0和T1计数,用指令设置TR0与TR1,然后再使D触发器输入端置1,允许外部计数器计数。在停止计数器时恰好相反,应先停止外部计数器,然后再停T0和T1计数。计算被测信号的频率是按公式:Fv=F

7、sNx/Ns 为了保证测试结果的准确,采用了多字乘除法。先是进行Fs与Nx相乘,编写4字节乘以4字节的程序,然后再除以Ns,这是8字节除以4字节的除法程序。以上计算程序经多次验证,在整数部分准确无误。五. 今后改进与提高等精度频率计的测频范围很宽,可以测0.1Hz到几十MHz的信号。但随着所测频率高低的不同,测试方法也不一样。在高频段采用测脉冲个数来进行测频。但在低频段是采用测信号正负脉冲的脉宽求得周期计算频率的方法,但都能保证测量的精度。目前由于时间的关系,我们只做高频段的测试。在此基础上应完善低频段的测试功能,使等精度测频功能完善起来。在条件允许的情况下,应采用EDA方法进一步提高测频范围

8、。源程序:ORG 0000HSFNUM EQU 20HFTCLK EQU 24HFSCLK EQU 28HFNUMB EQU 30HBCUS EQU 48HCHUS EQU 28HSANG EQU 40HBCUB EQU 08HCUSB EQU 04HCESB EQU 04HSTART: NOP MOV R3,#40H MOV A,#00H MOV R0,#00HLOOPJ: MOV R0,A INC R0 DJNZ R3,LOOPJ CALL DISPLYSTAR: MOV IE,#00H MOV P1,#0FFH CLR P2.4 CLR P2.0 MOV R3,#04H MOV R1,#

9、00H MOV DPTR,#SFCTA2 MOV R0,#SFNUMLOOPS: MOV A,R1 MOVC A,A+DPTR MOV R0,A INC R0 INC R1 DJNZ R3,LOOPS SJMP LOOPRLOOPY: SJMP STARLOOPR: SETB P2.0 MOV P1,#0FFH MOV TMOD,#55H MOV TH0,#00H MOV TL0,#00H MOV TH1,#00H MOV TL1,#00H SETB TR0 SETB TR1 SETB P2.4 MOV R2,#00HDELAY2: MOV R1,#0F4HDELAY3: NOP ;NOP ;

10、NOP ;NOP NOP NOP DJNZ R1,DELAY3 DJNZ R2,DELAY2 CLR P2.4 CLR TR0 CLR TR1 MOV R0,#FTCLK+03H MOV A,#00H MOV R0,A DEC R0 MOV A,TH1 MOV R0,A DEC R0 MOV A,TL1 MOV R0,A MOV R0,#FSCLK+03H MOV A,#00H MOV R0,A DEC R0 MOV A,TH0 MOV R0,A DEC R0 MOV A,TL0 MOV R0,ATT: MOV P1,#0FFH MOV A,P1 MOV P1,#0FFH SETB P2.2

11、MOV R4,A ANL A,#0F0H DEC R0 MOV R0,A MOV A,R4 SWAP A ANL A,#0F0H MOV FTCLK,A MOV A,#FTCLK+03H CALL RSHIF MOV A,#FSCLK+03H CALL RSHIF MOV R3,#04H MOV R0,#FTCLK+01H MOV A,R0 INC R0 ORL A,R0 JZ LOOPY MOV R0,#FSCLK+01H MOV A,R0 INC R0 ORL A,R0 JZ LOOPY MOV R1,#SANG+04H MOV R0,#FTCLKLOOPH: MOV A,R0 MOV R

12、1,A INC R0 INC R1 DJNZ R3,LOOPH CALL NIMULLOOPE: MOV R3,#BCUB MOV R0,#SANG MOV R1,#SANG+08HLOOPK: MOV A,R0 MOV R1,A INC R0 INC R1 DJNZ R3,LOOPK CALL P8DIV4 CALL NIBTB CALL BCDTB CALL DISPLYDELA: MOV R3,#08HDELAY: MOV R2,#00HDELAY4: MOV R1,#00HDELAY5: NOP NOP DJNZ R1,DELAY5 DJNZ R2,DELAY4 DJNZ R3,DEL

13、AY LJMP STARDISPLY: MOV R3,#08H ;DISPLY LED MOV R0,#FNUMB MOV DPTR,#LEDTBL MOV SCON,#00H ;MODE-0LOOPD: MOV A,R0 MOVC A,A+DPTR MOV SBUF,A CLR TI JNB TI,$ INC R0 DJNZ R3,LOOPD CLR TI RETRSHIF: MOV R2,#04H MOV R4,ARSHI1: MOV R3,#04H MOV A,R4 MOV R0,A CLR CRSHI0: MOV A,R0 RRC A MOV R0,A DEC R0 DJNZ R3,R

14、SHI0 DJNZ R2,RSHI1 RETNIMUL: MOV R0,#SFNUM MOV R1,#SANG+04H MOV R3,#CESB MOV A,R0 MOV R4,A MOV A,R3 MOV R7,A MOV A,R1 MOV R5,ASE20: CLR C SUBB A,R7 MOV R6,A MOV R1,A ACALL SUBD4 MOV A,R7 ADD A,R7 MOV R2,A MOV B,#04H MUL ABSE201: PUSH A MOV A,R6 MOV R1,A MOV A,R2 MOV R3,A ACALL SUBE4 JNC SE203 MOV A,

15、R7 MOV R3,A MOV A,R6 MOV R1,A MOV A,R4 MOV R0,A CLR CSE202: MOV A,R0 ADDC A,R1 MOV R1,A INC R0 INC R1 DJNZ R3,SE202 JNC SE203 MOV A,R5 MOV R1,A MOV A,R7 MOV R3,ASE204: MOV A,R1 ADDC A,00H MOV R1,A JNC SE203 INC R1 DJNZ R3,SE204SE203: POP A DEC A JNZ SE201 RETP8DIV4: MOV A,#SANG MOV R1,A MOV A,#BCUB

16、MOV R3,A ACALL SUBD4 MOV A,#BCUB MOV B,#08H MUL ABSA401: PUSH A CLR C MOV A,#SANG MOV R1,A MOV A,#BCUB*02H MOV R3,A ACALL SUBE4 MOV A,#BCUS+CUSB MOV R0,A MOV A,#CHUS MOV R1,A MOV A,#CUSB MOV R3,A CLR CSA402: MOV A,R0 SUBB A,R1 PUSH A INC R0 INC R1 DJNZ R3,SA402 MOV A,#CUSB MOV R3,A JC SA403 MOV A,#S

17、ANG MOV R0,A INC R0 MOV A,#BCUS+BCUB DEC A MOV R0,ASA404: POP A MOV R0,A DEC R0 DJNZ R3,SA404 SJMP SA405SA403: POP A DJNZ R3,SA403SA405: POP A DEC A JNZ SA401 MOV A,#BCUS+BCUB DEC A MOV R0,A MOV A,R0 RLC A JNC SA409SA407: MOV A,#SANG MOV R1,A MOV A,#BCUB MOV R3,ASA408: MOV A,R1 ADD A,#01H MOV R1,A J

18、NC SA409 INC R1 DJNZ R3,SA408SA409: RETSUBD4: CLR ASD40: MOV R1,A INC R1 DJNZ R3,SD40 RETSUBE4: CLR CSE40: MOV A,R1 RLC A MOV R1,A INC R1 DJNZ R3,SE40 RETNIBTB: MOV R0,#44H MOV R1,#48H MOV R7,#03HNIBTB1: MOV A,R0 MOV R5,A MOV A,R1 MOV R6,A MOV A,R7 INC A MOV R3,A CLR ANBD0: MOV R1,A INC R1 DJNZ R3,N

19、BD0 MOV A,R7 MOV B,#08H MUL AB MOV R3,ANBD4: MOV A,R5 MOV R0,A MOV A,R7 MOV R2,A CLR CNBD1: MOV A,R0 RLC A MOV R0,A INC R0 DJNZ R2,NBD1 MOV A,R6 MOV R1,A MOV A,R7 MOV R2,A INC R2NBD3: MOV A,R1 ADDC A,R1 DA A MOV R1,A INC R1 DJNZ R2,NBD3 DJNZ R3,NBD4 RETBCDTB: MOV R3,#04H MOV R0,#48H MOV R1,#FNUMB;R1=30HLOOPT: MOV A,R0 MOV R4,A ANL A,#0FH MOV R1,A INC R1 MOV A,R4 SWAP A ANL A,#0FH MOV R1,A INC R1 INC R0 DJNZ R3,LOOPT RETLEDTBL: DB 03H,9FH,25H,0DH,99H,49H DB 41H,01FH,01H,09HSFCTA1: DB 40H,42H,0FH,00HSFCTA3: DB 60H,0E3H,16H,00HSFCTA2: DB 80H,84H,1EH,00H END

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号