单片机课程设计报告——智能数字频率计汇总

合集下载

基于单片机数字频率计课程设计报告

基于单片机数字频率计课程设计报告
ቤተ መጻሕፍቲ ባይዱ关键字:单片机 功能模块 扩展电路 频率计数器
ABSTRACT
SCM is a semiconductor wafer on the integration of the central processing unit(CPU), memory (RAM/ROM), and all kinds of I/O interface, to study the typicalfunction module based on single chip microcomputer is the comprehensive use ofthe basic theory of scientific knowledge, the important link of practice, has an important influence on the learning skills of students, is to learn to in practice the important significance of excessive, the design of the. The completed design of the circuit of some typical MCU through conception, design, debug, modify theprogram.
第二章 89S51单片机扩展储存器的设计........................................................................... ......3
2.1 系统扩展结构............................................................................................................. .....3

数字频率计课程设计报告

数字频率计课程设计报告

《数字频率计》技术报告一、问题的提出在传统的电子测量仪器中,示波器在进行频率测量时测量精度较低,误差较大。

频谱仪可以准确的测量频率并显示被测信号的频谱,但测量速度较慢,无法实时快速地跟踪捕捉到被测信号频率的变化。

而频率计则能够快速准确的捕捉到被测信号频率的变化。

在传统的生产制造企业中,频率计被广泛的应用在生产测试中。

频率计能够快速的捕捉到晶体振荡器输出频率的变化,用户通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。

在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准。

在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。

数字频率计是一种用数字显示的频率测量仪表,它不仅可以测量正弦信号、方波信号和尖脉冲信号的频率,而且还能对其他多种物理量的变化频率进行测量,诸如机械振动次数,物体转动速度,明暗变化的闪光次数,单位时间里经过传送带的产品数量等等,这些物理量的变化情况可以由有关传感器先转变成周期变化的信号,然后用数字频率计测量单位时间内变化次数,再用数码显示出来。

二、解决技术问题及指标要求1、技术指标被测信号:正弦波、方波或其他连续信号;采样时间:1秒(0.1秒、10秒);显示时间:1秒(2秒、3秒......);LED显示;灵敏度:100mV;测量误差:±1Hz。

数字频率计是一种专门对被测信号频率进行测量的电子测量仪器。

其最基本的工作原理为:当被测信号在特定时间段T内的周期个数为N时,则被测信号的频率f=N/T。

一般T=1s,所以应要求定时器尽量输出为1s的稳定脉冲。

2、设计要求可靠性:系统准确可靠。

稳定性:灵敏度不受环境影响。

经济性:成本低。

重复性:尽量减少电路的调试点。

低功耗:功率小,持续时间长。

三、方案可行性分析(方案结构框图)率,而且还可以测量它们的周期。

经过改装,可以测量脉冲宽度,做成数字式脉宽测量仪;可以测量电容做成数字式电容测量仪;在电路中增加传感器,还可以做成数字脉搏仪、计价器等。

单片机数字频率计课程设计

单片机数字频率计课程设计

单片机数字频率计课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解数字频率计的工作机制。

2. 使学生能够运用单片机编程实现数字频率计的功能,包括计时、计数和显示。

3. 让学生了解数字频率计在实际应用中的重要性,如信号处理、电子测量等领域。

技能目标:1. 培养学生运用单片机进行数字频率计设计和编程的能力。

2. 培养学生运用相关软件(如Keil、Proteus等)进行电路仿真和调试的能力。

3. 提高学生的动手实践能力,学会在实际操作中发现问题、解决问题。

情感态度价值观目标:1. 激发学生对电子技术和单片机编程的兴趣,培养其创新精神和实践能力。

2. 培养学生严谨的科学态度,注重实验数据的准确性和可靠性。

3. 增强学生的团队协作意识,学会在项目合作中相互支持、共同进步。

课程性质:本课程为实践性较强的课程,要求学生在掌握理论知识的基础上,进行实际操作和项目实践。

学生特点:学生具备一定的单片机基础知识,对编程和电路设计有一定了解,但实际操作能力有待提高。

教学要求:结合学生特点和课程性质,注重理论与实践相结合,以项目为导向,培养学生的动手实践能力和创新能力。

通过课程学习,使学生能够独立完成单片机数字频率计的设计和编程任务,达到课程目标所要求的具体学习成果。

二、教学内容1. 理论知识:- 单片机原理和结构:介绍单片机的内部组成、工作原理及性能特点。

- 数字频率计原理:讲解频率的概念、测量原理及其在电子测量中的应用。

- 编程语言:回顾C语言基础知识,重点掌握单片机编程相关语法。

2. 实践操作:- 电路设计:学习使用Proteus软件设计数字频率计电路,包括单片机、计数器、显示模块等。

- 程序编写:运用Keil软件编写数字频率计程序,实现计数、计时和显示功能。

- 仿真调试:在Proteus环境下进行电路仿真,调试程序,确保其正常运行。

3. 教学大纲:- 第一周:回顾单片机原理和结构,学习数字频率计原理。

基于51单片机的频率计设计报告

基于51单片机的频率计设计报告

基于51单片机的频率计设计报告
在该设计报告中,我将介绍基于51单片机的频率计的设计原理、硬件设计和软件设计。

设计原理:
频率计是一种用于测量信号频率的仪器。

基于51单片机的频率计的设计原理是利用单片机的定时计数器来测量输入信号的脉冲个数,然后将脉冲个数转换为频率。

硬件设计:
硬件设计主要包括输入信号的采集电路、计数电路和显示电路。

输入信号的采集电路使用一个比较简单的电路,包括一个电阻和一个电容,用于将输入信号转换为脉冲信号。

计数电路使用单片机的定时计数器来进行计数。

在这个设计中,我们使用TIMER0和TIMER1作为计数器,分别用于测量输入信号的高电平时间和低电平时间,然后将两个时间相加得到一个完整的周期,再根据周期反推频率。

显示电路使用一个LCD模块来显示测量得到的频率。

在这个设计中,我们使用IO口将计算得到的频率发送给LCD模块,通过LCD模块来显示频率。

软件设计:
软件设计主要包括信号采集、脉冲计数和频率计算。

信号采集主要通过定时器的中断来进行。

在采集到一个脉冲之后,中
断程序会使计数器加1
脉冲计数是通过对输入信号高电平时间和低电平时间计数来完成的。

在脉冲计数的过程中,我们需要启动TIMER0和TIMER1,并设置正确的工
作模式和计数值。

频率计算是通过将高电平时间和低电平时间相加得到一个完整的周期,然后再根据周期反推频率来完成的。

最后,将计算得到的频率发送给LCD
模块进行显示。

总结:。

数字频率计课程设计报告

数字频率计课程设计报告

数字频率计课程设计报告一、课程目标知识目标:1. 让学生理解数字频率计的基本原理,掌握频率、周期等基本概念;2. 使学生掌握数字频率计的使用方法,能够正确操作仪器进行频率测量;3. 引导学生运用已学的数学知识,对测量数据进行处理,得出正确结论。

技能目标:1. 培养学生动手操作仪器的技能,提高实验操作能力;2. 培养学生运用数学知识解决实际问题的能力,提高数据分析处理技能;3. 培养学生团队协作能力,提高实验过程中的沟通与交流技巧。

情感态度价值观目标:1. 培养学生对物理实验的兴趣,激发学习热情;2. 培养学生严谨的科学态度,养成实验过程中认真观察、准确记录的好习惯;3. 引导学生认识到物理知识在实际应用中的价值,提高学以致用的意识。

课程性质:本课程为物理实验课,结合数字频率计的原理与应用,培养学生的实践操作能力和数据分析能力。

学生特点:六年级学生具备一定的物理知识和数学基础,对实验操作充满好奇,具备初步的团队合作能力。

教学要求:结合学生特点,注重理论与实践相结合,以学生为主体,引导学生主动参与实验过程,培养其动手能力和解决问题的能力。

通过课程目标的分解,使学生在实验过程中达到预期的学习成果,为后续教学设计和评估提供依据。

二、教学内容1. 数字频率计基本原理:- 频率、周期的定义与关系;- 数字频率计的工作原理;- 数字频率计的测量方法。

2. 实验操作技能:- 数字频率计的操作步骤;- 实验过程中的注意事项;- 数据记录与处理方法。

3. 教学大纲:- 第一课时:介绍数字频率计的基本原理,让学生了解频率、周期的概念及其关系;- 第二课时:讲解数字频率计的工作原理,引导学生掌握其操作方法;- 第三课时:分组进行实验操作,让学生动手测量不同频率的信号;- 第四课时:对测量数据进行处理与分析,培养学生数据分析能力;- 第五课时:总结实验结果,讨论实验过程中遇到的问题及解决办法。

4. 教材章节:- 《物理》六年级下册:第六章《频率与波长》;- 《物理实验》六年级下册:实验八《数字频率计的使用》。

基于单片机的简单频率计课程设计报告

基于单片机的简单频率计课程设计报告

《单片机原理与接口技术》课程设计报告频率计目录1功能分析与设计目标 (1)2 频率计的硬件电路设计 (3)2.1 控制、计数电路 (3)2.2 译码显示电路 (5)3 频率计的软件设计与调试 (6)3.1 软件设计介绍 (6)3.2 程序框图 (8)3.3 功能实现具体过程 (8)3.4 测试数据处理,图表及现象描述 (10)4 讨论 (11)5 心得与建议 (12)6 附录(程序及注释) (13)1功能分析与设计目标背景:在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。

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

用单片机来做控制电路的数字频率计测量频率精度高,测量频率的范围得到很大的提高。

题目要求:用两种方法检测(Δm ,ΔT )要求显示单位时间的脉冲数或一个脉冲的周期。

设计分析:电子计数式的测频方法主要有以下几种:脉冲数定时测频法(M法),脉冲周期测频法(T法),脉冲数倍频测频法(AM法),脉冲数分频测频法(AT法),脉冲平均周期测频法(M/T法),多周期同步测频法。

下面是几种方案的具体方法介绍。

脉冲数定时测频法(M法):此法是记录在确定时间Tc内待测信号的脉冲个数Mx,则待测频率为:Fx=Mx/ Tc 脉冲周期测频法(T法):此法是在待测信号的一个周期Tx内,记录标准频率信号变化次数Mo。

这种方法测出的频率是:Fx=Mo/Tx脉冲数倍频测频法(AM法):此法是为克服M法在低频测量时精度不高的缺陷发展起来的。

通过A倍频,把待测信号频率放大A倍,以提高测量精度。

其待测频率为:Fx=Mx/ATo脉冲数分频测频法(AT法):此法是为了提高T法高频测量时的精度形成的。

由于T法测量时要求待测信号的周期不能太短,所以可通过A分频使待测信号的周期扩大A倍,所测频率为:Fx=AMo/Tx脉冲平均周期测频法(M/T法):此法是在闸门时间Tc内,同时用两个计数器分别记录待测信号的脉冲数Mx和标准信号的脉冲数Mo。

频率计——单片机课程设计

频率计——单片机课程设计

频率计摘要数字频率计是直接用十进制数字显示被测信号频率的一种测量装置。

设计中应用单片机的数学运算和控制功能,通过AT89C52内部存储程序进行软件计数,对输出进行控制。

在单片机应用系统中利用C语言编程具有一定的优点,本次课程设计介绍了C语言实现数字频率计的软件设计以及硬件电路。

全部软件编程不是采用常规的汇编语言,而是利用C语言强大的浮点运算能力,实现频率计的软件设计,因此提高了频率计的测量精度,具有一定的实用价值。

本次课程设计通过在Keil环境中用C语言编程,并在Protues中设计电路进行仿真测试,实现了频率计在信号1Hz~500kHz频率段的测试,误差较小,与输入信号源的频率相近。

最后通过LCD显示模块显示出信号频率。

同时还利用AD0808进行对源信号模数转换,得到信号的最大值。

关键词:频率测量单片机C语言频率计目录摘要 (1)关键词:频率测量单片机C语言频率计 (1)绪论(或前言) (3)1、课程设计的主要内容 (4)2、单片机的种类、用途、发展历史、基本工作原理、常规用法、组成最小系统的硬件设计方法 (5)2.1.1主流单片机简介 (5)2.1.2单片机的用途 (6)2.1.3 单片机的历史 (6)2.1.4单片机基本工作原理 (7)2.1.5单片机组成最小系统的硬件设计方法 (7)2.2接口电路的特点、分类及设计方法 (7)2.3课题的设计思路、实施方法 (8)2.4硬件设计:系统电路图、关键元器件的性能、参数及外形封装等 (9)2.5软件设计:包括程序流程框图、源代码(汇编或C语言),典型程序要求加注释 (11)2.5.1程序流程图: (11)2.5.2C程序源代码: (11)见附件 (11)2.6设计测试结果: (11)3、总结 (12)附件: (14)绪论(或前言)数字频率计在电子、通讯的领域中的实验、研究开发、生产用途非常广泛,它可以由逻辑电路组成,也可以用单片机控制。

由逻辑电路组成的频率计,结构复杂,组装、调试比较麻烦;传统的频率计通常采用组合电路和时序电路等大量的硬件电路构成,产品不但体积较大,运行速度慢,而且测量低频信号时不宜直接使用。

单片机课程设计-数字频率计

单片机课程设计-数字频率计

《单片机技术》课程设计说明书数字频率计院、部:电信学院学生姓名:贺音杰指导教师:肖冬瑞职称助教专业:电气工程及其自动化班级:1205 班学号:11301040243完成时间:2015年6月数字频率计具有体积小、携带方便;功能完善、测量精度高等优点,因此在以后的时间里,必将有着更加广阔的发展空间和应用价值。

研究数字频率计的设计和开发,有助于频率计功能的不断完善、性价比的提高和实用性的加强。

本课程设计是一个基于单片机技术的数字频率计。

本文从频率计的原理出发,介绍了基于单片机的数字频率计的设计方案,选择了实现系统得各种电路元器件。

利用单片机的计数器和定时器的功能对被测信号进行计数。

编写相应的程序使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示。

本设计以89C51单片机为核心,应用单片机的算术运算和控制功能并采用LED数码显示管将所测频率显示出来。

系统简单可靠、操作简易,能基本满足一般情况下的需要。

既保证了系统的测频精度,又使系统具有较好的实时性。

该设计经过反反复复仿真、调试发现问题所在,将其问题解决。

该设计功能具有测量信号频率、周期、脉宽、占空比。

测量速度快,准确度高。

关键字:数字频率计;单片机;计数器;定时器;LED数码显示管I1 频率计概述 (1)1.1数字频率计简介 (1)1.2数字频率计的基本原理 (1)1.3设计课题总体方案介绍及工作原理说明 (2)2硬件系统的设计 (4)2.1硬件系统各模块功能简要介绍 (4)2.2硬件电路主要部分的介绍 (5)2.2.1 AT89S52 芯片 (5)2.2.2数码管电路 (6)2.2.3独立键盘电路 (7)2.2.4复位电路 (7)2.2.5晶振电路 (8)2.2.6 电源电路 (9)2.2.7下载口电路 (9)3软件系统的设计 (10)3.1使用单片机资源的情况 (10)3.2软件系统各模块功能简要介绍 (10)3.3设计原理简介 (10)3.4软件系统程序流程框图 (11)4设计误差分析及总结 (14)4.1误差分析 (14)4.2频率计的使用说明 (14)4.3实物的运行分析 (14)4.4设计总结 (15)参考文献 (16)致谢 (17)附录A (18)附录B (21)1频率计概述1.1数字频率计简介数字频率计又称为数字频率计数器,是一种专门对被测信号频率进行测量的电子测量仪器,是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。

单片机频率计实验报告

单片机频率计实验报告

单片机频率计实验报告实验报告:单片机频率计摘要:本实验通过使用单片机设计和实现了一种简单的频率计,通过测量输入信号的周期来计算其频率。

实验结果表明,该方法可以准确地测量信号的频率,并且具有较高的稳定性和精确度。

1.引言在电子测量领域中,频率是一个重要的参数,它是指单位时间内信号变化周期的次数。

测量信号的频率可以帮助我们了解信号的特性和性能。

而单片机作为常见的嵌入式微处理器,提供了较高的计算和控制能力,可以应用于频率计的设计和实现中。

2.实验原理在本实验中,我们使用了一种简单的基于单片机的频率测量方法。

该方法基于计算输入信号的周期,并以此计算信号的频率。

具体实验原理如下:(1)信号输入:将需要测量频率的信号接入单片机的输入口。

(2)信号计数:通过单片机的定时器,测量输入信号的时间间隔。

(3)计算频率:将信号的周期时间转换为频率值。

3.实验设备与材料(1)单片机:使用STC89C52单片机。

(2)信号发生器:产生需要测量频率的信号。

(3)蜂鸣器:用于发出测量结果。

(4)杜邦线:用于连接单片机和其他器件。

4.实验步骤(1)搭建实验电路:将单片机与信号发生器、蜂鸣器等器件通过杜邦线连接。

(2)编写程序:使用汇编语言或C语言编写程序,设置定时器,测量输入信号的时间间隔。

(3)烧录程序:将编写好的程序烧录到单片机中。

(4)测量频率:通过信号发生器产生不同频率的信号,并使用单片机进行测量。

(5)显示结果:将测量得到的频率值通过蜂鸣器等方式显示出来。

5.实验结果经过多次测量和对比,我们得到了较为准确的信号频率测量结果。

实验结果表明,该频率计具有较高的稳定性和精确度,可以满足日常实验工作的要求。

6.实验总结通过本次实验,我们了解了基于单片机的频率计的设计和实现方法,并成功地搭建了一个简单的频率计电路。

实验结果表明,这种方法可以比较准确地测量信号的频率,并且具有较高的稳定性和精确度。

然而,在实际应用中可能还需要考虑一些其他因素,如输入信号的幅度和噪声等。

单片机课程设计_频率计

单片机课程设计_频率计

课程设计——频率计课题:使用STC89C52单片机测量方波频率姓名:何怡君叶玲郭靖学号:080212148 080212142 080212173 指导老师:唐飞一、方案论证1、课程设计内容与要求(1)内容:本次课程设计的主要概况是了解由单片机控制的频率测量的过程。

频率计测频率的基本原理就是周期性信号在单位时间(1s)内变化的次数,是利用定时器和计数器或外部中断的原理将一方波的频率结果显示在五位LED数码管上。

(2)要求:用单片机STC89C52RC的定时器实现1秒钟的定时,用该单片机的外部中断或计数器实现计算方波的周期的个数,即频率为1秒的方波的周期的个数,控制过程具有启动功能。

2、方案论证(1)方案一:利用STC89C52RC单片机的外部中断来计方波的每一个下降沿的次数,定时一秒后显示最后的结果,即最终所输入的方波的频率,在STC89C52RC的单片机小系统中,定时器完成定时1秒的功能,采用中断的方式;数码管完成显示部分的功能,小系统的数码管硬件电路为共阳极,所以程序中的字行码为共阳极的table表;外部中断完成下降沿的计数,键盘完成控制启动的功能,一旦定时完成,关闭定时器的中断和外部中断的中断源显示数据。

(2)方案二:利用STC89C52RC单片机的内部计数器直接计数,每来一个“0”和一个“1”计数器加一,直到定时一秒钟结束,只是数据要进行ASCII码转换,略有一点麻烦。

其他部分与方案一类似。

(3)方案比较:通过以上两个方案,我们认为方案一总体比方案二好,虽然方案二不需要使用中断,但结果的数据需进行处理,经过对比,我们选用了方案一。

二、电路设计1、硬件电路(1)单片机概述单片机因将其主要组成部分集成在一个芯片上而得名,具体说,就是把中央处理器CPU(Central processing unit)、随机存储器RAM(Random access memory)、只读存储器ROM(Read only memory)、中断系统、定时器/计数器以及I\O(Input/output)接口电路等主要微型机部件集成在一个芯片上。

单片机实训报告(频率计--)

单片机实训报告(频率计--)

江西科技师范大学《单片机实训》报告姓名:学号: 20102 班级:10电子科学与技术 1 班实训地点:理工楼指导教师:通信与电子学院编制2012年 6月 13日实训要求1.实训开始,按学号顺序分组,选一名同学为组长。

2.实训安全第一,严防意外伤害,按规定操作,不准带电插拔仪器设备。

3.实训室内禁止饮食,禁止吐痰,严禁吃口香糖。

4.禁止在实训室内喧哗、嬉戏、争斗,保持安静,轻声讨论。

5.不准恶意破坏仪器设备,设备若有损坏及时向指导老师报告。

6.不准无故旷课、迟到、早退;若有特殊情况,需事先请假,征求许可。

7.旷课2节,实训成绩不及格,2次迟到算旷课1节。

8.每次实训开始5分钟内检查仪器设备,填写“实训操作登记表”,代签无效。

9.实训时间内,请勿离开实训室10分钟以上,否则以旷课论,若确有急事,需征的指导老师同意后方可离开。

10.实训结束后,整理复原仪器设备、桌椅,清洁四周环境,待检查后,方可离开。

11.实训室中的工具、仪器、书籍、手册严禁带出。

12.实训过程小心操作,细心观察,勤于思考,注意记录。

单片机实训的基础知识一、控制器件的介绍8051单片机引脚图与引脚功能简介⒈电源:⑴VCC - 芯片电源,接+5V;⑵VSS - 接地端;⒉时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。

⒊控制线:控制线共有4根,⑴ALE/PROG:地址锁存允许/片内EPROM编程脉冲①ALE功能:用来锁存P0口送出的低8位地址②PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。

⑵PSEN:外ROM读选通信号。

⑶RST/VPD:复位/备用电源。

①RST(Reset)功能:复位信号输入端。

②VPD功能:在Vcc掉电情况下,接备用电源。

⑷EA/Vpp:内外ROM选择/片内EPROM编程电源。

①EA功能:内外ROM选择端。

②Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。

单片机课程设计报告 频率计

单片机课程设计报告 频率计

单片机系统课程设计报告专业:学生姓名:学号:指导教师:完成日期:2011年11月10日目录1 设计任务和性能指标 (1)1.1设计任务 (1)1.2性能指标 (1)2 设计方案 (1)2.1任务分析 (1)2.2方案设计 (1)3 系统硬件设计 (2)3.1单片机的最小系统 (2)3.2信号整形电路设计 (3)3.3分频电路设计 (3)3.4LCD液晶显示 (5)4 系统软件设计.......................................................................... 错误!未定义书签。

4.1主程序设计........................................................................错误!未定义书签。

5 调试及性能分析 (7)5.1调试分析 (7)5.1.1 软件调试 (7)5.1.2 硬件调试 (8)5.1.3 系统功能调试 (8)5.2性能分析 (9)6 心得体会 (9)参考文献 (9)附录1 系统原理图 (10)附录2 程序清单 (11)1 设计任务和性能指标1.1设计任务频率计是我们经常会用到的仪器之一,通常用来测量信号的频率或周期,与编码器配合也可用来测量旋转机械设备的转速。

用单片机的定时/计数器功能可以实现频率计的数字化、智能化,通过合理的硬件设计和软件编程使测量精度达到实用化要求。

1.2性能指标(1)测量频率范围10Hz~1MHz,量程可自己选择。

(2)精度:1%。

(3)被测信号可以是方波。

(4)显示方式为4位十进制数显示。

2 设计方案2.1任务分析频率的测量实际上就是在1秒时间内对信号进行计数,计数值就是信号频率。

用单片机设计频率计通常可采用两种方法:一是使用单片机自身的计数器对输入脉冲进行计数即得到频率值,或对输入脉冲进行周期测量,这种方法只能测量频率低于单片机时钟频率1/24以下的信号;二是在单片机外部使用计数器对脉冲信号进行计数,计数值再由单片机读取,这种方法适合于测量频率较高的场合。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机原理课程设计报告题目:智能数字频率计设计专业:信息工程班级:信息111学号:***姓名:***指导教师:***北京工商大学计算机与信息工程学院1、设计目的(1)了解和掌握一个完整的电子线路设计方法和概念;(2)通过电子线路设计、仿真、安装和调试,了解和掌握电子系统研发产品的一个基本流程。

(3)了解和掌握一些常见的单元电路设计方法和在电子系统中的应用:包括放大器、滤波器、比较器、计数和显示电路等。

(4)通过编写设计文档与报告,进一步提高学生撰写科技文档的能力。

2、设计要求(1)基本要求设计指标:1.频率测量:0~250KHz;2.周期测量:4mS~10S;3.闸门时间:0.1S,1S;4.测量分辨率:5位/0.1S,6位/1S;5.用图形液晶显示状态、单位等。

充分利用单片机软、硬件资源,在其控制和管理下,完成数据的采集、处理和显示等工作,实现频率、周期的等精度测量方案。

在方案设计中,要充分估计各种误差的影响,以获得较高的测量精度。

(2)扩展要求用语音装置来实现频率、周期报数。

(3)误差测试调试无误后,可用数字示波器与其进行比对,记录测量结果,进行误差分析。

(4)实际完成的要求及效果1.测量范围:0.1Hz~4MHz,周期、频率测量可调;2.闸门时间:0.05s~10s可调;3.测量分辨率:5位/0.01S,6位/0.1S;4.用图形液晶显示状态、单位(Hz/KHz/MHz)等。

3、硬件电路设计(1)总体设计思路本次设计的智能数字频率计可测量矩形波、锯齿波、三角波、方波等信号的频率。

系统共设计包括五大模块: 主芯片控制模块、整形模块、分频模块、档位选择模块、和显示模块。

设计的总的思想是以AT89S52单片机为核心,将被测信号送到以LM324N为核心的过零比较器,被测信号转化为方波信号,然后方波经过由74LS161构成的分频模块进行分频,再由74LS153构成的四选一选择电路控制档位,各部分的控制信号以及频率的测量主要由单片机计数及控制,最终将测得的信号频率经LCD1602显示。

各模块作用如下:1.主芯片控制模块: 单片机AT89S52 内部具有2个16位定时/计数器T0、T1,定时/计数器的工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。

利用单片机的计数器和定时器的功能对被测信号进行计数。

以AT89S52 单片机为控制核心,来完成对各种被测信号的精确计数、显示以及对分频比的控制。

利用其内部的定时/计数器完成待测信号周期/频率的测量。

2.整形模块:整形电路是将一些不是方波的待测信号转化成方波信号,便于测量。

本设计使用运放器LM324连接成过零比较器作为整形电路。

3.分频模块: 考虑单片机利用晶振计数,使用11.0592MHz 时钟时,最大计数速率将近500 kHz,因此需要外部分频。

分频电路用于扩展单片机频率测量范围,并实现单片机频率测量使用统一信号,可使单片机测频更易于实现,而且也降低了系统的测频误差。

本设计使用的分频芯片是74LS161实现4分频及16分频。

4.档位选择模块:控制74LS161不分频、4分频或者 16分频,控制芯片是74LS153。

5.显示模块:编写相应的程序可以使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示,本设计选用LCD1602。

(2)测频基本设计原理所谓“频率”,就是周期性信号在单位时间(1s)内变化的次数。

若在一定时间间隔T内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T(右图3-1所示)。

其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等。

利用单片机的定时/计数T0、T1的定时、计数于被测频率fx功能产生周期为1s的时间脉冲信号,则门控电路的输出信号持图3-1续时间亦准确地等于1s。

闸门电路由标准的秒脉冲信号进行控制,当秒脉冲信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。

秒脉冲信号结束时闸门关闭,计数器停止计数。

由于计数器计得的脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。

(2)系统框图本智能数字频率计系统框图如图3-2所示图3-2智能数字频率计系统框图(3)单片机部分P0口经上拉后做LCD数据接口P2.1~P2.3作为LCD控制端口P2.4~P2.5作为分频选择端口P3.5作为被测信号输入端口P3.2~P3.4作为开关控制端口(对应电路图中K1,K2,SET)图3-3 89D52单片机部分电路(4)分频部分74HC161与74ls161功能兼容,是常用的四位二进制可预置的同步加法计数器,他可以灵活的运用在各种数字电路,以及单片机系统中实现分频器等很多重要的功能。

其管脚图如图3-4所示:图3-4 74HC161 图3-5 74HC153管脚图74HC153是一个双4选1数据选择器,其管脚图如图3-5所示:74LS161对整形后的防波信号进行分频,Q1为四分频输出,Q3为16分频输出。

未经分频、经过四分频和经过16分频的三路信号作为74LS153的一个4选1数据选择器低三位输入,由单片机控制选择分频数,然后再送单片机内部计数器T1(如图3-6)。

图3-6 分频、选择分频档位电路图(5)LCD显示部分LCD显示,1602的八位数据I/O口与单片机的P0口相连,读写控制端接P2.0-P2.2口。

三个按键中,设置键接P3.2单片机按外部中断0接口,当按键按下后,置P3.2口低电平,单片机中断。

S1、S2为频率/周期、闸门时间加/减选择按键(如图3-7)。

图3-7 LCD显示部分电路图4、软件设计(1)主程序流程图设计本次程序设计采用的是C语言程序设计,其设计流程图4-1所示:图4-1主程序流程图(2)子程序流程图设计<1>显示程序:LCD显示程序设计流程如图4-2所示:图4-2显示程序流程图<2>频率测量程序框图:频率测量程序的整体架构如图4-3所示:图4-3频率测量框架图(3)中断服务流程图INT0中断流程图如图4-4所示:图4-4INT0中断流程图(4)程序代码#include <AT89x52.h>#include <stdio.h>#include <math.h>#include <intrins.h>float f; //频率float p; //周期float sj; //闸门时间char idata buff[20];char flag=0; //频率、周期选择标志位char xs=0; //设置闸门时间结束后是否显示结果的标志位unsigned char m=0,n=0,yichu=0,fenpin; //m定时中断次数n计数中断次数yichu判断是定时//器还是计数器溢出#define Key_Set P3#define K1 0xf7 //11110111 P33#define K2 0xef //11101111 P34#define NO_Set 0xff#define Freq 0#define Peri 1sbit B153=P2^4;sbit A153=P2^3;sbit P17=P3^4;sbit P16=P3^3;sbit P35=P3^5;sbit Set=P3^2;unsigned char LCD_Wait(void);void LCD_Write(bit style, unsigned char input);void LCD_SetDisplay(unsigned char DisplayMode);void LCD_SetInput(unsigned char InputMode);void LCD_Initial();void GotoXY(unsigned char x, unsigned char y);void Print(unsigned char *str);void C52_Initial();void Delay(unsigned int t);void display(float f);void cepin();void panduan();void timedisplay(float sj);void Time_Set1();void Time_Set2();void t0();void t1();/*****模块名称LCD1602显示程序******//***********************端口定义***********************************/sbit LcdRs= P2^0;sbit LcdRw= P2^1;sbit LcdEn= P2^2;sfr DBPort= 0x80; //P0=0x80,P1=0x90,P2=0xA0,P3=0xB0.数据端口/************************内部等待函数********************************/unsigned char LCD_Wait(void){LcdRs=0; //寄存器选择输入端1:数据0:指令LcdRw=1; _nop_(); //RW:为0:写状态;为1:读状态;LcdEn=1; _nop_(); //使能输入端,读状态,高电平有效;写状态,下降沿有效LcdEn=0;return DBPort;}/**********************向LCD写入命令或数据***************************/#define LCD_COMMAND 0 // Command#define LCD_DATA 1 // Data#define LCD_CLEAR_SCREEN 0x01 // 清屏#define LCD_HOMING 0x02 // 光标返回原点void LCD_Write(bit style, unsigned char input){ LcdEn=0;LcdRs=style;LcdRw=0; _nop_();DBPort=input; _nop_();//注意顺序LcdEn=1; _nop_();//注意顺序LcdEn=0; _nop_();LCD_Wait();}/********************设置显示模式*********************************/#define LCD_SHOW 0x04 //显示开#define LCD_HIDE 0x00 //显示关#define LCD_CURSOR 0x02 //显示光标#define LCD_NO_CURSOR 0x00 //无光标#define LCD_FLASH 0x01 //光标闪动#define LCD_NO_FLASH 0x00 //光标不闪动void LCD_SetDisplay(unsigned char DisplayMode){LCD_Write(LCD_COMMAND, 0x08|DisplayMode);}/*********************设置输入模式***********************************/#define LCD_AC_UP 0x02#define LCD_AC_DOWN 0x00 // default#define LCD_MOVE 0x01 // 画面可平移#define LCD_NO_MOVE 0x00 //defaultvoid LCD_SetInput(unsigned char InputMode){LCD_Write(LCD_COMMAND, 0x04|InputMode);}/******************初始化LCD**************************************/void LCD_Initial(){LcdEn=0;LCD_Write(LCD_COMMAND,0x38); //8位数据端口,2行显示,5*7点阵LCD_Write(LCD_COMMAND,0x38);LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR); //开启显示, 无光标LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN); //清屏LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE); //AC递增, 画面不动}/************************************************************************/void GotoXY(unsigned char x, unsigned char y){if(y==0)LCD_Write(LCD_COMMAND,0x80|x);if(y==1)LCD_Write(LCD_COMMAND,0x80|(x-0x40));}void Print(unsigned char *str){while(*str!='\0'){LCD_Write(LCD_DATA,*str);str++;}}/*************************************************************************** * 模块名称:频率测量程序* * 测量范围:0.1Hz~4MHz,闸门时间:0.05s~10s可调。

相关文档
最新文档