基于单片机的频率计设计.docx

上传人:b****7 文档编号:9456799 上传时间:2023-02-04 格式:DOCX 页数:34 大小:439.53KB
下载 相关 举报
基于单片机的频率计设计.docx_第1页
第1页 / 共34页
基于单片机的频率计设计.docx_第2页
第2页 / 共34页
基于单片机的频率计设计.docx_第3页
第3页 / 共34页
基于单片机的频率计设计.docx_第4页
第4页 / 共34页
基于单片机的频率计设计.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

基于单片机的频率计设计.docx

《基于单片机的频率计设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的频率计设计.docx(34页珍藏版)》请在冰豆网上搜索。

基于单片机的频率计设计.docx

基于单片机的频率计设计

 

本科学生单片机课程设计报告

 

题目基于单片机的频率计设计

姓名刘志丰

学号2008180312

院(系)职业技术学院

专业、年级08应用电子

指导教师杨进宝

 

课程设计成绩评定表

项目

评分依据

满分

得分

设计作品

电路板焊接工艺

10

功能完整

20

性能指标

10

程序运行可靠

20

人机交互友好,操作方便

10

设计报告

内容完整

10

写作规范

10

设计报告篇幅符合要求

10

实评总分指导教师签名

目录

1摘要……………………………………………………

2设计要求………………………………………………

3硬件电路设计…………………………………………

3.1方案的提出与论证

3.2系统结构框图

3.3工作原理

3.4芯片介绍

4电路原理图……………………………………………………

5总结…………………………………………………………

参考文献………………………………………………………

附件一:

电路实物图…………………………………………

附件二:

程序清单……………………………………………

一、摘要

在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。

为了实现智能化的计数测频,实现一个宽领域、高精度的频率计,一种有效的方法是将单片机用于频率计的设计当中。

本课题介绍以51单片机作为核心器件,另外还包括信号输入、信号放大、信号选择、时钟提供、数据显示等功能模块的数字频率计的设计方法。

频率计的硬件电路是用Protel绘图软件绘制而成,软件部分的单片机控制程序,是用汇编语言编写而成。

由于本设计采用了模块化的设计方法,提高了测量频率的范围。

关键词:

测量频率计单片机汇编

DesignofadigitalfrequencymeterbasedonSCM

Abstract:

Amongelectronictechnology,frequencyisoneofthemostbasicparameters,andresultofmeasuringhaveaverycloserelationtoalotofelectricparameters,sothemeasurementoffrequencyseemsevenmoreimportant.Inordertorealizethecountingofintellectualityexaminesfrequently,realizeawide-range,high-accuracycymometer,aneffectivemethodistouseone-chipcomputerforthedesignofthecymometer.Thissubjectrecommendsregarding51Single-Chipcomputerasthekeydevice,includesignalinput,signalamplify,signalchoose,clockoffer,datapersonwhorevealfunctiondigitaldesignmethodofcymometerofmodulestillinaddition.ThehardwarecircuitofthecymometerisdrawingwithProtelmappingsoftware,theone-chipcomputercontrolprocedureofthesoftwarepart,wrotetheassemblerlanguage.Becauseoriginallydesignthedesignmethodtoadoptmodule,improvetherangeofmeasuringfrequency.

Keywords:

 Measurement,Cymometer,Single-Chipcomputer,Compilation

二、设计要求

1、设计任务:

用单片机(STC89C52)实现频率计

2、设计要求

1、用LED数码管或LCD显示频率;

2、测量频率范围:

0.1Hz—100KHz;

3、频率测量精度:

优于10-4;

4、频率显示位数:

5位;

5、能根据输入频率自动换挡。

3、设计报告要求

1、说明设计作品的功能、特点、应用范围.

2、方案对比,确定方案。

3、电路设计、电路工作原理、技术指标测试.

4、编程方法、程序框图及关键程序清单。

5、课程设计总结。

 

三、硬件电路设计

3.1方案的提出与论证

方案一:

系统测频、测周期部分采用中小规模数字集成电路,用机械功能转换开关换挡,完成测频率、测量周期及测脉宽等功能。

该方案的特点是中小规模集成电路应用技术成熟,概念清楚,能可靠的完成频率计的基本功能,但由于系统功能要求较高,所以电路过于复杂。

而且多量程转换开关使用不便。

方案二:

采用测频集成芯片,如5G7226B是采用CMOS大规模集成电路工艺制造的单片电子计数器芯片。

它只需外接几个元件就可以构成一台体积小、成本低的多功能通用计数器。

其直接测量频率范围为0~10MHz,测周期范围为0.5us~10s;有4个内部闸门时间(0.01s、0.1s、1s、10s)可供选择;位和段的信号线均能直接驱动LED数码管,并且有益处指示;仅要求单一的5V直流电源供电,使用非常方便。

方案三:

系统采用STC89C52单片机作为控制核心,门控信号由单片机产生。

由于使用了单片机,使得整个系统具有极为灵活的可编程性,能方便地对系统进行功能扩展与改进。

以上方案均需使用小信号放大、整形通道电路来提高系统的测量精度和灵敏度。

方案比较及其选用依据:

虽然方案一要比方案二简洁、新颖,可以满足系统设计的指标要求,但是不符合题意。

采用带有运算器的单片机使本系统可以通过对软件改进而扩展功能,提高测量精度,因此我们采用方案三作为具体实施方案。

3.2系统结构框图

系统软件的设计主要是和硬件电路相结合,正确地实现等精度测量。

整个系统软件的设计采用了自顶向下的模块化的结构方式,将各个功能分成独立模块,由系统的程序统一管理执行。

它主要完成各种功能,如测量、数据运算、显示等。

如图4所示为频率测量主程序流程图,在计数前对计数器清零。

然后,发出命令打开闸门进入闸门时间,计数器在闸门时间内计数。

延时子程序结束后,发出命令关闭闸门使计数器停止计数;单片机再依照程序读取计数器的值,并与单片机内部计数器所计的值合并在一起。

由公式

(1),即被测频率fx=f0×Nx/N0来进行运算,由于精度要求,Nx和N0都由24位二进制数来计数。

因此,要在单片机内部进行多字节无符号二进制数的乘法和除法运算,并将运算结果转换成BCD码,显示运算结果。

单片机流程图:

(具体程序见附录)

3.3工作原理

在使用计数方法实现频率测量时,这时外部的待测信号为定时/计数器的计数源,利用软件延时程序实现计数闸门。

频率计的工作过程为:

首先定时/计数器的计数寄存器清0,运行控制位TR置1,启动定时/计数器;然后运行软件延时程序,同时定时/计数器对外部的待测信号进行计数,延时结束时TR清0,停止计数;最后从计数寄存器读出测量数据,在完成数据处理后,由显示电路显示测量结果。

在使用定时方法实现频率测量时,这时外部的待测信号通过频率计的予处理电路变成宽度等于待测信号周期的方波,该方波同样加至定时/计数器的输入脚。

这时频率计的工作过程为:

首先定时/计数器的计数寄存器清0,然后检测方波高电平是否加至定时/计数器的输入脚;当判定高电平加至定时/计数器的输入脚,运行控制位TR置1,启动定时/计数器对单片机的机器周期的计数,同时检测方波高电平是否结束;当判定高电平结束时TR清0,停止计数,然后从计数寄存器读出测量数据,在完成数据处理后,由显示电路显示测量结果。

测量结果的显示格式采用科学计数法,即有效数字乘以10为底的幂。

这里设计的频率计用5位数码管显示测量结果:

前3位为测量结果的有效数字;第4位为指数的符号;第5位为指数的值。

采用这种显示格式既保证了测量结果的显示精度,又保证了测量结果的显示范围。

量程自动转换的过程由频率计测量量程的高端开始。

由于只显示3位有效数字,在测量量程的高端计数闸门不需要太宽,例如在规定频率范围,计数闸门宽度为10mS即可。

频率计每个工作循环开始时使用计数方法实现频率测量,并使计数闸门宽度为最窄,完成测量后判断测量结果是否具有3位有效数字,如果成立,将结果送去显示,本工作循环结束;否则将计数闸门宽度扩大10倍,继续进行测量判断,直到计数闸门宽度达到1s,这时对应的频率测量范围为100Hz-999Hz。

如果测量结果仍不具有3位有效数字,频率计则使用定时方法实现频率测量。

定时方法测量的是待测信号的周期,这种方法只设一种量程,测量结果通过浮点数运算模块将信号周期转换成对应的频率值,再将结果送去显示。

这样无论采用何种方式,只要完成一次测量即可,频率计自动开始下一个测量循环,因此该频率计具有连续测量的功能,同时实现量程的自动转换。

3.4有关芯片介绍

3.41STC89C52

STC89C52是美国ATMEL公司生产的,兼容51系列(硬件引脚兼容,软件也兼容),所以使用方面与51系列基本相同,支持在线下载。

STC89C52是用串口下载,只一条下载线就可以。

STC89C52它有如下特点:

加密性强、低功耗、超低价、高速、高可靠、强抗静电、强抗干扰等。

有关STC89C52的引脚说明如下:

STC89C52芯片共40引脚:

1-8脚:

通用I/O接口p1.0-p1.7

9脚:

rst复位键

10-11脚:

RXD串口输入TXD串口输出

12-19脚:

I/Op3接口(12,13脚:

INT0中断0,INT1中断1。

14,15脚:

计数脉冲T0T1。

16,17脚:

WR写控制RD读控制输出端)

18-19脚:

晶振谐振器20地线   

21-28脚:

p2接口高8位地址总线

29脚:

psen片外rom选通端。

单片机对片外rom操作时29脚(psen)输出低电平

30脚:

ALE/PROG地址锁存器

31脚:

EArom取指令控制器高电平片内取低电平片外取

32-39脚:

p0.0-p0.7(注意此接口的顺序与其他I/O接口不同与引脚号的排列顺序相反)

40脚:

电源+5V

3.42有关MAX232的介绍如下:

MAX232特征:

 1、优于双极

2、经营从单一的5伏供电(5V和12v-max231/max239) 

3、低功耗接收模式,在关机(max223/max242) 

4、满足所有eia/tia-232e和v.28规格

5、多个驱动器和接收器

6、三态驱动器和接收器输出开放式在线检测(max243)

MAX引脚图以及电路图:

STC单片机下载器连接图:

 

3.43LCD液晶屏

工业字符型液晶,能够同时显示16x02即32个字符。

(16列2行)

1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:

阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。

  因为1602识别的是ASCII码,试验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如'A’。

  以下是1602的16进制ASCII码表:

  读的时候,先读上面那列,再读左边那行,如:

感叹号!

的ASCII为0x21,字母B的ASCII为0x42(前面加0x表示十六进制)。

有关液晶屏的引脚说明如下:

1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线

  VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中:

  

引脚

符号

功能说明

1

VSS

一般接地

2

VDD

接电源(+5V)

3

V0

液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。

4

RS

RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。

5

R/W

R/W为读写信号线,高电平

(1)时进行读操作,低电平(0)时进行写操作。

6

E

E(或EN)端为使能(enable)端,下降沿使能。

7

DB0

底4位三态、双向数据总线0位(最低位)

8

DB1

底4位三态、双向数据总线1位

9

DB2

底4位三态、双向数据总线2位

10

DB3

底4位三态、双向数据总线3位

11

DB4

高4位三态、双向数据总线4位

12

DB5

高4位三态、双向数据总线5位

13

DB6

高4位三态、双向数据总线6位

14

DB7

高4位三态、双向数据总线7位(最高位)(也是busyflag)

15

BLA

背光电源正极

16

BLK

背光电源负极

  寄存器选择控制表

  

RS

R/W

操作说明

0

0

写入指令寄存器(清除屏等)

0

1

读busyflag(DB7),以及读取位址计数器(DB0~DB6)值

1

0

写入数据寄存器(显示各字型等)

1

1

从数据寄存器读取数据

  注:

关于E=H脉冲——开始时初始化E为0,然后置E为1,再清0.

  busyflag(DB7):

在此位为被清除为0时,LCD将无法再处理其他的指令要求。

 

四、电路原理图

五、总结

1、元器件的挑选方面:

优先选择项目要求的元件类型,在选择同一种元件时,考虑元件的价格性能比,还考虑了功耗小的元件。

2、电路的设计方面:

首先保证能够实现所要求的功能,尽可能少的使用大功耗,价格低的元器件。

设计实验中,首先要弄清楚该电路需要几部分,即做出原理框图,确保电路设计的正确性。

3、电路的安装与元器件的布线、焊接方面:

这是电路设计最为关键的一部份。

在本次设计当中,元件在电路板上的布局不太理想,需要注意布线,焊接之前首先应该规划好元器件的布局,有效的使用电路板,做到元件排列疏密一致、整齐美观、便于检查。

再有需要不断的积累布线的一些技巧。

4、电路调试方面:

在调试过程中,应先测试各单元电路,保证各部份电路能够正常工作。

采用逐步缩小范围的方式,慢慢确定出错位置,并解决问题。

5、心得:

本次课程设计是以单片机89C52芯片为核心的部件,实现了频率计的功能。

这一次在软件上是花费时间比较多的,通过上网找资料,尽可能的去了解频率计这方面的知识。

通过这一次的课程设计,使得我又得到了一次用专业知识、专业技能分析和解决问题的机会。

让我在单片机的基本原理、单片机应用系统开发过程,以及常用编程设计思路技巧的掌握方面进了一大步。

在此,我要感谢杨老师、林老师的精心指导和严格要求,因为他们的精心指导使得我在这一次的课程设计当中,获得了丰富的理论知识,极大的提高了实践能力。

 

参考文献

1、 梁文海单片机AT89C2051构成的智能型频率计

现代电子技术2002年

2、 曹巧媛单片机原理及应用[M]

北京:

电子工业出版社1997年

3、程远楚单片机智能频率信号装置[J]

自动化与仪器仪表2001年

4、吴慎山压电超声直线马达驱动电路的研究

河南师范大学学报(自然科学版)1994年

5、谢自美电子线路设计

华中科技大学出版社

 

元件列表

名称

规格

数量

LCD

1602

1

单片机

STC89C52

1

芯片

MAX232

1

24M晶振

1

10K排阻

1

电容、电阻

不同型号

若干

万能板

1

导线

若干

排针、排孔

若干

 

程序清单

 

RSBITP2.0

RWBITP2.1

ENBITP2.2

COMEQU30H

DATEQU31H

FREQ1EQU32H

FREQ2EQU33H

FREQ3EQU34H

FREQ4EQU35H

FREQ5EQU36H

FREQ6EQU37H

JISHUEQU38H

JISHU1EQU39H

JISHU2EQU3AH

JISHU3EQU3BH

TIMEBEQU3CH

TIMEHEQU3DH

TIMEMEQU3EH

TIMELEQU3FH

PANDUANEQU40H

BEICHUBEQU41H

BEICHUHEQU42H

BEICHUMEQU43H

BEICHULEQU44H

ZANCUNBEQU45H

ZANCUNHEQU46H

ZANCUNMEQU47H

ZANCUNLEQU48H

RESULT1EQU49H

RESULT2EQU4AH

RESULT3EQU4BH

RESULT4EQU4CH

RESULT5EQU4DH

RESULT6EQU4EH

XIAOSHUEQU4FH

CUNCHUEQU50H

FLAG1BIT20H

FLAG2BIT21H

FLAG3BIT22H

ORG0000H

LJMPSTART

ORG0003H

LJMPOUTINT0

ORG000BH

LJMPTIMINT0

ORG001BH

LJMPTIMINT1

ORG0100H

START:

MOVSP,#60H

LCALLLCDINIT

LCALLDISPLAI

LCALLVARINIT

SETBFLAG3

KEYLOOP:

JNBFLAG3,KEYDOWN

LCALLFIJUDGE

KEYDOWN:

LCALLDISPLAY

JNBFLAG1,GOBACK

LCALLCALCULA

GOBACK:

SJMPKEYLOOP

LCDINIT:

MOVCOM,#38H

LCALLSENDCOM

LCALLDELAY5

LCALLSENDCOM

LCALLDELAY5

LCALLSENDCOM

LCALLDELAY5

LCALLSENDCOM

LCALLDELAY5

MOVCOM,#08H

LCALLSENDCOM

LCALLDELAY5

MOVCOM,#01H

LCALLSENDCOM

LCALLDELAY5

MOVCOM,#06H

LCALLSENDCOM

LCALLDELAY5

MOVCOM,#0CH

LCALLSENDCOM

LCALLDELAY5

RET

VARINIT:

MOVXIAOSHU,#1

MOVZANCUNB,#0

MOVZANCUNH,#10H

MOVZANCUNM,#84H

MOVZANCUNL,#80H

MOVRESULT1,#0

MOVRESULT2,#0

MOVRESULT3,#0

MOVRESULT4,#0

MOVRESULT5,#0

MOVRESULT6,#0

MOVR0,#30H

MOVR1,#15

CLEAR:

MOV@R0,#0

INCR0

DJNZR1,CLEAR

RET

FIJUDGE:

CLRFLAG1

CLRFLAG3

MOVZANCUNB,#0

MOVZANCUNH,#1EH

MOVZANCUNM,#84H

MOVZANCUNL,#80H

MOVR0,#30H

MOVR1,#16

CLEAR1:

MOV@R0,#0

INCR0

DJNZR1,CLEAR1

MOVTH0,#3CH

MOVTL0,#0B0H

MOVTH1,#0H

MOVTL1,#0H

MOVTMOD,#11H

MOVTCON,#11H

MOVIE,#83H

MOVIP,#02H

RET

DISPLAI:

MOVDPTR,#TABLE

MOVR0,#16

MOVR1,#0

MOVR2,#80H

BACKDIS:

MOVCOM,R2

LCALLSENDCOM

LCALLDELAY5

INCR2

MOVA,R1

MOVCA,@A+DPTR

MOVDAT,A

LCALLSENDDAT

INCR1

LCALLDELAY5

DJNZR0,BACKDIS

MOVDPTR,#TABLE1

MOVR0,#16

MOVR1,#0

MOVR2,#0C0H

BACKDI2:

MOVCOM,R2

LCALLSENDCOM

LCALLDELAY5

INCR2

MOVA,R1

MOVCA,@A+DPTR

MOVDAT,A

LCALLSENDDAT

INCR1

LCALLDELAY5

DJNZR0,BACKDI2

RET

DISPLAY:

MOVA,XIAOSHU

ADDA,#0C9H

MOVCOM,A

LCALLSENDCOM

LCALLDELAY5

MOVDAT,#2EH

LCALLSENDDAT

LCALLDELAY5

MOVR0,#49H

MOVR1,#6

SHUCHUD:

MOVA,#49H

ADDA,XIAOSHU

MOVB,A

MOVA,R0

SUBBA,B

JNCGODISPL

MOVA,#80H

ADDA,R0

SJMPGODISPP

GODISPL:

MOVA,#81H

ADDA,R0

GODISPP:

MOVCOM,A

LCALLSENDCOM

LCALLDELAY5

MOVA,#30H

ADDA,@R0

MOVDAT,A

LCALLSENDDAT

LCALLDELAY5

INCR0

DJNZR1,SHUCHUD

RET

CALCULA:

MOVRESULT1,#0

MOVRESULT2,#0

MOVRESULT3,#0

MOVRESULT4,#0

MOVRESULT5,#0

MOVRESULT

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

当前位置:首页 > 自然科学 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1