单片机频率计数器课程设计
单片机课设频率计数器
等级:课程设计课程名称单片机原理及应用课题名称频率计数器专业电子信息工程班级1302学号0218姓名许聪指导老师寻大勇等2016年3月25日电气信息学院课程设计任务书课题名称频率计数器姓名许聪专业电子信息班级1302 学号18指导老师寻大勇课程设计时间2016年3月14日-2016年3月25日教研室意见意见:审核人:一、任务及要求设计任务:本课题以单片机为核心,设计和制作一个频率计数器,来完成对输入的信号进行频率计数,计数的频率结果能够显示出来。
要求能够对0-250KHz的信号频率进行准确计数,计数误差不超过±1HZ。
设计要求:(1)确定系统设计方案;(2)进行系统的硬件设计;(3)完成应用程序设计;(4) 应用系统的硬件和软件的调试。
二、进度安排第一周:周一:集中布置课程设计任务和相关事宜,查资料确定系统总体方案。
周二~周三:完成硬件设计和电路连接周四~周日:完成软件设计第二周:周一~周三:程序调试周四~周五:设计报告撰写。
周五进行答辩和设计结果检查。
三、参考资料1、王迎旭等.单片机原理及及应用. 2版.机械工业出版社,20122、胡汉才.单片机原理及其接口技术.3版.清华大学出版社,2010.3、戴灿金.51单片机及其C语言程序设计开发实例.清华大学出版社,2010目录第1章设计任务及要求 (1)设计任务 (1)设计要求 (1)第2章系统方案设计 (1)基本设计原理 (1)方案整体框图 (2)第3章系统硬件电路设计 (2)复位电路 (2)晶振电路 (3)LED数码管显示电路 (3)第4章系统软件设计 (4)主程序流程图 (4)初始化模块 (5)信号频率测量模块 (5)数码管显示模块 (5)程序中断模块 (6)数码管扫描模块 (7)第5章系统仿真及调试 (7)C程序编译 (8)Proteus仿真 (9)心得体会 (9)参考文献 (10)附录A 仿真总图 (12)附录B 程序清单 (13)第1章设计任务及要求设计任务:本课题以单片机为核心,设计和制作一个频率计数器,来完成对输入的信号进行频率计数,计数的频率结果能够显示出来。
基于AT89S52单片机的数字频率计课程设计
第一章前言频率测量是电子学测量中最为基本的测量之一。
由于频率信号抗干扰性强,易于传输,因此可以获得较高的测量精度。
随着数字电子技术的发展,频率测量成为一项越来越普遍的工作,测频原理和测频方法的研究正受到越来越多的关注。
1.1频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号、方波信号及其他各种单位时间内变化的物理量。
在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。
传统的频率计采用测频法测量频率,通常由组合电路和时序电路等大量的硬件电路组成,产品不但体积大,运行速度慢而且测量低频信号不准确。
本次采用单片机技术设计一种数字显示的频率计,测量准确度高,响应速度快,体积小等优点[1]。
1.2频率计发展与应用在我国,单片机已不是一个陌生的名词,它的出现是近代计算机技术的里程碑事件。
单片机作为最为典型的嵌入式系统,它的成功应用推动了嵌入式系统的发展。
单片机已成为电子系统的中最普遍的应用。
单片机作为微型计算机的一个重要分支,其应用范围很广,发展也很快,它已成为在现代电子技术、计算机应用、网络、通信、自动控制与计量测试、数据采集与信号处理等技术中日益普及的一项新兴技术,应用范围十分广泛。
其中以AT89S52为内核的单片机系列目前在世界上生产量最大,派生产品最多,基本可以满足大多数用户的需要[2]。
1.3频率计设计内容利用电源、单片机、分频电路及数码管显示等模块,设计一个简易的频率计能够粗略的测量出被测信号的频率。
参数要求如下:1.测量范围10HZ—2MHZ;2.用四位数码管显示测量值;第二章系统总体方案设计2.1测频的原理测频的原理归结成一句话,就是“在单位时间内对被测信号进行计数”。
被测信号,通过输入通道的放大器放大后,进入整形器加以整形变为矩形波,并送入主门的输入端[3]。
单片机数字频率计课程设计
单片机数字频率计课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解数字频率计的工作机制。
2. 使学生能够运用单片机编程实现数字频率计的功能,包括计时、计数和显示。
3. 让学生了解数字频率计在实际应用中的重要性,如信号处理、电子测量等领域。
技能目标:1. 培养学生运用单片机进行数字频率计设计和编程的能力。
2. 培养学生运用相关软件(如Keil、Proteus等)进行电路仿真和调试的能力。
3. 提高学生的动手实践能力,学会在实际操作中发现问题、解决问题。
情感态度价值观目标:1. 激发学生对电子技术和单片机编程的兴趣,培养其创新精神和实践能力。
2. 培养学生严谨的科学态度,注重实验数据的准确性和可靠性。
3. 增强学生的团队协作意识,学会在项目合作中相互支持、共同进步。
课程性质:本课程为实践性较强的课程,要求学生在掌握理论知识的基础上,进行实际操作和项目实践。
学生特点:学生具备一定的单片机基础知识,对编程和电路设计有一定了解,但实际操作能力有待提高。
教学要求:结合学生特点和课程性质,注重理论与实践相结合,以项目为导向,培养学生的动手实践能力和创新能力。
通过课程学习,使学生能够独立完成单片机数字频率计的设计和编程任务,达到课程目标所要求的具体学习成果。
二、教学内容1. 理论知识:- 单片机原理和结构:介绍单片机的内部组成、工作原理及性能特点。
- 数字频率计原理:讲解频率的概念、测量原理及其在电子测量中的应用。
- 编程语言:回顾C语言基础知识,重点掌握单片机编程相关语法。
2. 实践操作:- 电路设计:学习使用Proteus软件设计数字频率计电路,包括单片机、计数器、显示模块等。
- 程序编写:运用Keil软件编写数字频率计程序,实现计数、计时和显示功能。
- 仿真调试:在Proteus环境下进行电路仿真,调试程序,确保其正常运行。
3. 教学大纲:- 第一周:回顾单片机原理和结构,学习数字频率计原理。
单片机频率计数器课程设计讲解
课程设计报告课程名称:单片机课程设计题目:基于单片机的频率计数器设计学院:环境与化学工程系:过程装备与测控工程专业:班级:学号:学生姓名:起讫日期:指导教师:摘要数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字,显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号,方波信号以及其他各种单位时间内变化的物理量。
本课程设计主要设计一个简易的频率计,来实现信号在0-9999HZ范围内周期变化的方波频率的测定。
该文主要介绍了基于STC89C52 单片机频率计的设计方案和实现方法,该系统主要由硬件和软件两部分组成,其中重点给出了具体硬件电路图和软件流程图以及具体工作原理。
硬件部分通过洞洞板的布线设计帮助,可以确保焊接时尽量少的飞线和出错。
软件通过keil µvision编译及调试,其中在P1.7口编入了一个5500HZ的方波,用以仿真调试该频率计的软硬件功能是否能够实现输出频率的功能。
另外,本设计多增加了一个按键功能,通过一个按键来控制定时计数器的开始和关闭。
该频率计还带有3*3的矩阵键盘,可以作为扩展应用区,通过编程实现。
本设计中用的是LED共阴数码管,输出频率时采用的事动态显示的方法。
关键词:频率计;单片机;动态显示目录一、频率计数器的设计任务和要求 (1)1.1 频率计数器的设计任务 (1)1.2 设计要求及发挥部分 (1)二、方案的总体设计 (1)2.1 方案的设计 (1)2.2 方案的整体框图 (2)2.3 方案的说明 (2)三、硬件设计 (2)3.1 单片机的最小系统 (2)3.1.1 上电复位电路 (2)3.1.2 晶振电路 (3)3.2 LED数码管显示电路 (3)3.3 整体电路 (4)四、软件设计 (4)4.1 程序流程图 (5)4.2 初始化子函数 (5)4.3 延时子函数 (5)4.4 中断子函数 (5)五、系统的调试和说明 (6)5.1 C程序的说明 (6)5.2 C程序编译的结果 (6)5.3 实物图 (7)六、设计总结与心得体会 (8)6.1设计总结 (8)6.2 设计心得 (9)七、参考文献 (9)附录 (10)一、频率计数器的设计任务和要求1.1 频率计数器的设计任务本课程设计任务主要是基于单片机系统,通过软件、硬件的调试,完成一个具有计数功能的频率计数器。
简易频率计单片机课程设计
单片机课程设计———简易频率计班级:学号:姓名●摘要随着电子信息产业的不断进展,信号频率的测量在科技研究和实际应用中的作用日趋重要。
传统的频率计一般是用很多的逻辑电路和时序电路来实现的,这种电路一样运行较慢,而且测量频率的范围较小。
考虑到上述问题,本论文设计一基于单片机设计频率计。
第一,咱们把待测信号通过放大整形,然后把信号送入单片机的按时计数器里进行计数,获的频率值,最后把测得的频率数值送入显示电路里进行显示。
本文从频率计的原理动身,介绍了基于单片机的频率计的设计方案,选择了实现系统的各类电路元器件,并对硬件电路进行了仿真。
●关键字:单片机频率计测量一、设计任务设计制作一个简易频率计,该频率计能测量正弦波和方波信号的频率。
◆设计框图如下:图一. 简易频率计框图二、设计指标要求◆大体要求(1)能测量频率正弦波和方波10Hz—100kHz。
(2)数码显示共3位,其中1位小数,自动换挡(00—999Hz)有一个指示灯亮,表示单位是Hz,0.00—99.9kHz,另一个灯亮,表示单位是kHz。
(3)要有输入信号超范围的爱惜电路。
◆发挥要求(1)能测量方波的周期,并显示。
(2)能测量100mV的正弦波。
三、设计仪器PC一台、WAVE6000仿真实验箱一台、LM324芯片一个、三极管一个、10KΩ,2MΩ,5KΩ电阻各一个、稳压二极管一个、面包板一个和导线假设干四、设计原理图二.电路原理图◆方案选择及实现原理(1)单片机频率计数原理本方案要紧以单片机为核心,利用单片机的计数按时功能来实现频率的计数而且利用单片机的动态扫描把测出的数据送到数字显示电路显示。
由于频率计实现的能够说是对脉冲信号个数的技术,依照这一简单原理,咱们能够利用单片机片内的两个按时器/计数器T0T1实现对输入信号的频率计数。
具体设计思路如下:先利用按时器T1按时1s,但由于单片机的最大技术范围为65536。
因此,可先利用T1按时100ms,按时十个周期,那么达到按时1s的目的。
单片机频率计课程设计
单片机频率计课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理,掌握其内部结构和功能。
2. 学生能掌握频率计的设计原理,理解并运用相关电路知识。
3. 学生能了解并掌握编程语言在单片机应用中的基本使用方法。
技能目标:1. 学生能运用所学知识,设计并搭建一个简单的单片机频率计电路。
2. 学生能编写程序,实现对频率计的功能控制,进行基本的数据测量。
3. 学生能通过实验过程,培养动手操作能力、问题解决能力和团队协作能力。
情感态度价值观目标:1. 学生通过课程学习,培养对单片机及电子技术的兴趣,激发创新思维。
2. 学生能认识到单片机技术在现实生活中的应用价值,增强学以致用的意识。
3. 学生在课程实践过程中,培养严谨、细致的科学态度,提高对科学研究的尊重和热爱。
课程性质分析:本课程为实践性较强的电子技术课程,旨在通过单片机频率计的设计与实现,使学生在实践中掌握单片机技术的基本原理和应用。
学生特点分析:学生处于高年级阶段,已具备一定的电子技术基础知识,具有较强的学习能力和动手能力,对实际操作有较高的兴趣。
教学要求分析:根据课程性质和学生特点,要求课程目标具体、可衡量,注重理论与实践相结合,培养学生的实际操作能力和创新思维能力。
通过分解课程目标为具体学习成果,为后续教学设计和评估提供依据。
二、教学内容本课程教学内容围绕单片机频率计的设计与实现,结合以下章节进行组织:1. 单片机基础理论:介绍单片机的内部结构、工作原理和功能特点,重点讲解单片机的时钟系统、I/O口控制、中断系统等基础知识。
2. 频率计原理:讲解频率计的基本原理,包括信号发生器、计数器、时钟脉冲等组成部分,以及频率测量的基本方法。
3. 电路设计与搭建:指导学生运用所学知识,设计并搭建一个简单的单片机频率计电路,包括单片机选型、外围电路设计、元器件选型等。
4. 编程与调试:教授编程语言基础,如C语言、汇编语言等,指导学生编写单片机程序,实现对频率计的功能控制,并进行程序调试。
基于51单片机的频率计的设计
基于51单片机的频率计的设计频率计是一种测量信号频率的仪器或装置,其原理是通过对信号进行计数和定时来测量信号的周期,并进而计算出信号的频率。
在本篇文章中,我们将设计一个基于51单片机的频率计。
设计方案:1.硬件设计:(1)时钟电路:使用11.0592MHz晶振为主频时钟源。
(2)信号输入:选择一个IO口作为信号输入口,通过外部电平转换电路将信号转换为51单片机能够处理的电平。
(3)显示装置:使用一个数码管或液晶显示屏来输出测量结果。
2.软件设计:(1)初始化:设置51单片机的工作模式、引脚功能、定时器等。
初始化时,将IO口配置为输入模式,用于接收外部信号。
(2)定时器设置:利用定时器来进行时间的测量,可以选择适当的定时器和计数器来实现定时功能。
(3)外部中断设置:使用外部中断来触发定时器,当外部信号边沿发生变化时,触发定时器的启动或停止。
(4)中断处理:通过中断处理程序来对定时器进行启动、停止和计数等操作。
(5)频率计算:将计数结果经过一定的处理和运算,计算出信号的频率。
(6)结果显示:将计算得到的频率结果通过数码管或液晶显示屏输出。
3.工作流程:(1)初始化设置:对51单片机进行初始化设置,包括端口、定时器、中断等的配置。
(2)外部信号输入:通过外部电平转换电路将要测量的信号输入至51单片机的IO口。
(3)定时测量:当外部信号发生边沿变化时,触发外部中断,启动定时器进行定时测量。
(4)停止计时:当下一个信号边沿出现时,中断处理程序停止定时器,并将计数结果保存。
(5)频率计算:根据定时器的设置和计数结果,计算出信号的周期和频率。
(6)结果显示:将计算得到的频率结果通过数码管或液晶显示屏进行显示。
4.注意事项:(1)确保信号输入的稳定性:外部信号输入前需要经过滤波处理,保证稳定且无杂波的输入信号。
(2)测量精度的提高:如有必要,可以通过增加定时器的位数或扩大计数范围来提高测量精度。
(3)显示结果的优化:可以根据需要,通过增加缓冲区、优化数码管显示等方式来改善结果的可读性。
基于单片机的频率计的设计
基于单片机的频率计的设计一、频率计的基本原理频率是指单位时间内信号周期性变化的次数。
频率计的基本原理就是在一定的时间间隔内对输入信号的脉冲个数进行计数,从而得到信号的频率。
常用的测量方法有直接测频法和间接测频法。
直接测频法是在给定的闸门时间内测量输入信号的脉冲个数,计算公式为:频率=脉冲个数/闸门时间。
这种方法适用于测量高频信号,但测量精度会受到闸门时间和计数误差的影响。
间接测频法是先测量信号的周期,然后通过倒数计算出频率。
其适用于测量低频信号,但测量速度较慢。
在实际设计中,通常会根据测量信号的频率范围选择合适的测量方法,或者结合两种方法来提高测量精度和范围。
二、系统硬件设计1、单片机选型在基于单片机的频率计设计中,单片机是核心控制部件。
常用的单片机有 51 系列、STM32 系列等。
选择单片机时需要考虑其性能、资源、价格等因素。
例如,对于测量精度和速度要求不高的应用,可以选择51 单片机;而对于复杂的系统,可能需要选择性能更强的 STM32 单片机。
2、信号输入电路为了将输入信号接入单片机,需要设计合适的信号输入电路。
一般需要对输入信号进行放大、整形等处理,使其成为标准的脉冲信号。
常见的整形电路可以使用施密特触发器来实现。
3、显示电路频率计的测量结果需要通过显示电路进行显示。
常用的显示器件有液晶显示屏(LCD)和数码管。
LCD 显示效果好,但驱动较为复杂;数码管显示简单直观,驱动相对容易。
4、时钟电路单片机需要一个稳定的时钟信号来保证其正常工作。
时钟电路可以采用外部晶振或内部振荡器,根据系统的精度和稳定性要求进行选择。
5、复位电路为了确保单片机在系统启动时能够正常初始化,需要设计复位电路。
复位电路可以采用上电复位和手动复位两种方式。
三、系统软件设计1、主程序流程系统启动后,首先进行初始化操作,包括设置单片机的工作模式、初始化显示、设置定时器等。
然后进入测量循环,等待输入信号,在给定的闸门时间内进行计数,并计算频率,最后将结果显示出来。
单片机课程设计-频率计数器
《频率计数器》课程设计说明书专业班级:12级电信(3)班姓名:徐丰陈宇轩张旭鹏学号:080212124 080212116 0802105指导老师:唐飞物理与电气工程学院2014年6月8日目录1、课程设计的目的和任务 (3)1.1、单片机频率计数器课程设计的概述 (3)1.1.1、课程设计题目 (3)1.1.2、课程设计的难点 (3)1.1.3、课程设计内容提要 (3)1.1.4、课程设计的意义 (3)1.1.5、课程设计仪器 (4)1.2、课程设计的思路及描述 (4)1.3、课程设计的任务和要求 (4)1.3.1、设计指标 (4)1.3.2、设计要求 (4)2、系统硬件方案设计 (5)2.1、系统方框图 (6)2.2、电路原理图 (6)3、系统软件设计 (6)3.1、电路原理逻辑图 (6)3.2、程序流程图 (7)4、心得体会 (10)参考文献 (10)附录 (12)1.1、单片机频率计数器课程设计的概述1.1.1、课程设计题目频率计数器设计—用STC89C52RC设计一个频率计数器LED 数码管显示,设定时间一秒,一秒内波形重复的个数记为频率,定义了一个按键,功能:清零开始测频率。
1.1.2、课程设计的难点单片机频率计数器需要解决四个主要问题,一是有关单片机定时器的使用;二是如何实现LED数码管的动态显示;三是如何通过键盘控制;四是如何设置外部中断。
1.1.3、课程设计内容提要本课程利用单片机的定时器/计数器定时和计数的原理,结合集成电路芯片8051、LED数码管以及按键来设计频率计。
将软硬件有机地结合起来,使得系统能够正确地进行频率的测试,数码管能正确显示读数。
其中课程设计有一个按键:按键按下即对数码管清零测频率。
1.1.4、课程设计的意义1)通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。
2)掌握定时器、外部中断的设置和编程原理。
3)通过此次课程设计能够将单片机软硬件接合起来,对程序进行编辑,校验。
单片机课程设计_简易频率计数器..
单片机课程设计简易频率计数器1.实验目的1.要求学生具有制作调试单片机最小系统及外设的能力,能够掌握单片机内部资源的使用。
2.熟练掌握焊接技术的基础上,能熟练使用单片机软件开发环境Keil C51编程调试,并使用STC ISP调试工具采用串口下载方式联调制作的单片机最小系统。
二、实验要求自制一个单片机最小系统,包括串口下载、复位电路,采用外部计数器T0或T1作为外部频率输入,外部频率由信号源提供,计算出来的频率显示在四位一体的数码管上。
三、实验器材89C54RD芯片(与89c51芯片管脚和指令共用,只是内部存储单元有差异)一个,晶振一个,电容3个,电阻3个,12个10千欧姆电阻,4位一体共阴数码显示管一个,按钮1个,导线若干。
四、实验原理1.芯片介绍AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
1.主要特性:·与MCS-51 兼容·4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年·全静态工作:0Hz-24Hz ·三级程序存储器锁定·128*8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路2.管脚说明:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
单片机课程设计报告 频率计
单片机系统课程设计报告专业:学生姓名:学号:指导教师:完成日期: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以下的信号;二是在单片机外部使用计数器对脉冲信号进行计数,计数值再由单片机读取,这种方法适合于测量频率较高的场合。
完整版基于c语言单片机数字频率计课程设计
课程设计报告课程名称:单片机课程设计报告题目:数字频率计学生姓名:所在学院:专业班级:学生学号:指导教师:2013年12月25日课程设计任务书报告题目数字频率计完成时间2013/12/25专业学生姓名指导教师职称授课老师班级整体设计要求和技术要点设计一个数字频率计,要求以下:1.完成单脉冲测量,输入脉冲宽度范围是 100 s~0.1s 。
2.使用 AT89C51单片机的准时器 / 计数器的准时和计数功能,外面扩展 6 位LED 数码管,要求累计每秒进入单片机的外面脉冲个数,用LED 数码管显示出来。
3.要求(1)被测频率 fx <110Hz,采用测周法,显示频率××× . ×××;fx >110Hz,采用测频法,显示频率××××××。
(2)利用键盘分段测量和自动分段测量。
(3) 完成单脉冲测量,输入脉冲宽度范围是100 s~0.1s 。
(4)显示脉冲宽度要求以下。
Tx< 1000 s,显示脉冲宽度×××。
Tx> 1000 s,显示脉冲宽度××××。
工作内容及时间进度安排1.时间及任务17 周 -18 周周一到周五,上午 8:00-11:40,下午 2:00-5:40 。
(1)17周周一:学生选题,明确任务,指导教师对课题进行讲解,资料检索。
(2)17周周二:硬件设计(3)17周周三:硬件仿真(4)17周周四:软件设计(5)17周周五:软件设计(6)18周周一:软件设计(7)18周周二:综合调试(8)18周周三:书写课程设计报告(9)18周周四:书写课程设计报告(10)18周周五:争辩评分大纲以 ATMEL单片机为核心,利用单片机的外面中断、准时器的计数模式和准时器的功能对信号发生器产生的脉冲频率进行计数。
且可以依照频率的不同样,单片机控制选择测周法也许测频法对产生的脉冲波形进行计数,以进行更加精确的频率测量。
基于单片机的简单频率计课程设计报告
《单片机原理与接口技术》课程设计报告频率计目录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倍, 以提高测量精度。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告课程名称:单片机课程设计题目:基于单片机的频率计数器设计学院:环境与化学工程系:过程装备与测控工程专业:班级:学号:学生姓名:起讫日期:指导教师:摘要数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字,显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号,方波信号以及其他各种单位时间内变化的物理量。
本课程设计主要设计一个简易的频率计,来实现信号在0-9999HZ范围内周期变化的方波频率的测定。
该文主要介绍了基于STC89C52 单片机频率计的设计方案和实现方法,该系统主要由硬件和软件两部分组成,其中重点给出了具体硬件电路图和软件流程图以及具体工作原理。
硬件部分通过洞洞板的布线设计帮助,可以确保焊接时尽量少的飞线和出错。
软件通过keil µvision编译及调试,其中在P1.7口编入了一个5500HZ的方波,用以仿真调试该频率计的软硬件功能是否能够实现输出频率的功能。
另外,本设计多增加了一个按键功能,通过一个按键来控制定时计数器的开始和关闭。
该频率计还带有3*3的矩阵键盘,可以作为扩展应用区,通过编程实现。
本设计中用的是LED共阴数码管,输出频率时采用的事动态显示的方法。
关键词:频率计;单片机;动态显示目录一、频率计数器的设计任务和要求 (1)1.1 频率计数器的设计任务 (1)1.2 设计要求及发挥部分 (1)二、方案的总体设计 (1)2.1 方案的设计 (1)2.2 方案的整体框图 (2)2.3 方案的说明 (2)三、硬件设计 (2)3.1 单片机的最小系统 (2)3.1.1 上电复位电路 (2)3.1.2 晶振电路 (3)3.2 LED数码管显示电路 (3)3.3 整体电路 (4)四、软件设计 (4)4.1 程序流程图 (5)4.2 初始化子函数 (5)4.3 延时子函数 (5)4.4 中断子函数 (5)五、系统的调试和说明 (6)5.1 C程序的说明 (6)5.2 C程序编译的结果 (6)5.3 实物图 (7)六、设计总结与心得体会 (8)6.1设计总结 (8)6.2 设计心得 (9)七、参考文献 (9)附录 (10)一、频率计数器的设计任务和要求1.1 频率计数器的设计任务本课程设计任务主要是基于单片机系统,通过软件、硬件的调试,完成一个具有计数功能的频率计数器。
1.2 设计要求及发挥部分1.设计要求主要有:●设计的方案合理、正确;●完成系统硬件的设计及正确焊接;●完成系统软件的设计与调试;2.发挥部分:本课程设计的发挥部分较小,只再增加了一个按键来控制定时器,计数器的开始。
二、方案的总体设计2.1 方案的设计本课程设计的基于ATMEL公司STC89C52单片机的频率计数器,是利用该52单片机内部的定时计数器来完成待测信号频率的测量。
STC89C52单片机内部具有2个16位的定定时计数器T0与T1,可以通过编程来实现所需要的功能。
定时/计数器T0与T1的核心都是16位的加1计数器,TH0与TL0构成在构成定时器/计数器T0加1计数器的高8位和低8位;TH1与TL1构成在构成定/计数器T1加1计数器的高8位和低8位。
加1计数器的初值可以通过程序设定,这样就可以获得不同的计数器初值或定时时间。
加1计数器用作定时器时,每个机器周期加1,这样以机器周期为基准可以用来测量时间间隔。
定时/计数器用作计数器时,在相应的外部方波从1到0的跳变时计数器加1,这样在计数闸门的控制下可以测量待测信号的频率。
定时/计数器的工作由响应的运行控制位TR控制,当TR置1时,定时/计数器开始计数,当TR置零时停止计数。
在本设计方案中,我在程序中设定T0工作在计数状态,T1工作在计时状态下。
T0计数器对输入信号进行计数,由于信号的频率就是每秒钟信号的脉冲个数,于是我让T1工作在定时状态下,定时时间为1秒。
每定1秒钟到,就停止T0的计数,然后从T0的计数单元中读取计数的数值,即完成了信号的频率测量。
最后通过四位数码显示出频率值。
由于要尽可能的使用最少的元件,在满足设计要求的前提下,我将P1.7口与P3.4口(即T0)用导线连接,在设定程序时,利用T1定时的同时在P1.7口输出一个设定好的方波,以便直观的检测频率计数器的软件、硬件是否达到设计的基本功能。
2.2 方案的整体框图图1 系统总体框图2.3 方案的说明本课程设计采用内部给定的方波来实现频率计数的功能,缺陷在于只能测得一个方波的频率,但是这个方波的输入意在便于检测设计的软、硬件的功能是否实现,若功能可以实现,则可用于测量外部输入的0--10000HZ之间的任意频率值。
三、硬件设计3.1 单片机的最小系统3.1.1 上电复位电路复位是单片机的初始化操作。
单片机系统在上电启动运行时,都需要先复位。
其作用是使CPU 和系统中其他部件都处于一个确定的初始状态,并从这个状态开始工作。
而复位是一个很重要的操作方式,但单片机本身是不能自动经行复位的,必须配合相应的外部复位电路才能实现。
本设计的复位电路采用上电复位加按键手动复位,其电路如下图所示:图2 上电复位电路3.1.2 晶振电路单片机工作是在统一的时钟脉冲控制下一拍一拍地进行的,这个脉冲是单片机控制器中的时序电路发出的。
单片机的时序就是 CPU 在执行指令时所需控制信号的时间顺序。
为了保证各部件的同步工作,单内部电路应在唯一的时钟信号下严格按时序进行工作。
其电路原理图如下:图3 晶振电路3.2 LED数码管显示电路显示器是微机重要的输出设备。
显示器有显示监控结果、提供用户操作界面等功能。
在本次设计中采用了 LED 显示器,即数码管。
数码管的每一个数码段是一只发光二极管。
当发光二极管导通时,相应的一个点或者一个笔画发光,控制发光二极管发光组合,可以显示出所需字符。
我采用了共阴极结构。
在定义其显示字形的码段时,通过 I/O 口送出七段码其段码表如下:表1 共阴数码管段选码显示字形0 1 2 3 4 5 6 7 8 9共阴段选码3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 数码管的电路图如下:图4数码管接线电路3.3 整体电路图5 整体原理图四、软件设计本课程设计包含了主函数、初始化子函数、中断子函数、按键扫描子函数和延时子函数等多个函数。
4.1 程序流程图图6 主流程图4.2 初始化子函数初始化子函数主要是:1.对T0、T1定时/计数器进行初始化;2.对单片机各管脚及按键赋初值,以便主程序的执行。
4.3 延时子函数主要用于数码管动态显示的子程序中。
void delay(uchar z){uchar x,y;for(x=z;x>0;x--)for(y=113;y>0;y--);}4.4 中断子函数流程图如下:图7 中断程序流程图五、系统的调试和说明5.1 C程序的说明C 语言是一种通用的程序设计语言,其代码率高,数据类型及运算符丰富,位操作能力强,适用于各种应用的程序设计。
使用C 语言进行单片机应用系统开发,具有编程灵活、调试方便、目标代码编译效率高的特点。
C 语言也是目前使用最广的单片机应用系统编程语言。
由 C 语言编程的单片机应用程序,称为单片机 C 语言程序。
MCS-51 系列单片机开发系统的编译软件可以对51 单片机C 语言源程序进行编译,称为C51 编译器。
在C51 编译软件中可进行51 单片机C 语言程序的调试。
5.2 C程序编译的结果在keil µ vision上编译的结果:图8 程序调试图5.3 实物图图9 正面实物图图10 反面实物图六、设计总结与心得体会6.1设计总结为期一周的单片机课程设计已经接近尾声了,单片机课程设计的主要目的是让我们提高动手能力和综合运用能力。
经过这一周的设计,我更加深刻的体会到“万事开头难”这话的含义了。
这次单片机的课程设计,我选的课题是频率计数器。
这个看似很简单的课题,要实现起来却是困难重重。
首先是硬件的设计,通过在loch master上布线设计硬件的连接方式,这一步还是比较轻松,主要是布的线要尽可能的不交叉。
之后就开始对着图焊板子,开始把元器件焊上去还是比较简单好看的。
可是紧接着进入焊线阶段就难住我了,线拉不直,焊在板子上就很丑;另一方面,在焊的过程中就会发现有那么几根线是按照布线图来焊是实现不了的,于是,中途又会重新改布线图。
硬件部分我花了一天的时间,反反复复的修改,焊接,终于初步完成了。
板子焊好后就进入硬件调试阶段,硬件调试时,发现了线路的一些错误接法和元器件位置的错接等等,这样有花了半天时间调试修改,硬件就基本上算是完成了。
接着马上又进入了编写软件及调试过程,这是让我最头疼的一部分。
我自己边看视频边按着流程图慢慢的编写了一个,可是输入硬件后不出意外的,无法实现其功能。
于是就进入软件的调试阶段,这个过程持续了很长时间,最后是通过同学的帮助才能调试成功,实现它能实现的功能,当然还是有些微小误差的。
总的来说,这一个星期里学到了很多的东西,更觉得自己需要不断的提高自己。
6.2 设计心得通过一周的单片机课程设计,真的是感触颇多。
这一个星期以来我们每天早上9点就到教室一直待到晚上9点才回去,每天和大家在一起焊板子,一起讨论问题,一起互相帮助的画面还历历在目。
这其中有欢声笑语,也有苦有累。
在评优答辩的时候,看到了很多很多优秀的课程设计,让我一边敬佩,又一边自惭形秽。
每个优秀的人都有着不同常人的努力,而我还不够努力,所学的东西也很有限。
很多优秀的课程设计都是通过他们自己在课余时间自学而成的。
相比之下,我需要更加努力的去学习更多的知识,不断的填充自己。
七、参考文献【1】张友德,《单片微型机原理应用与实践》(第四版),复旦大学出版社,2000【2】李朝青.单片机原理及接口技术(第三版). 北京航空航天大学出版社.2005.【3】丁明亮、唐前辉. 51单片机应用设计与仿真--基于Keil C与Proteus.北京航空航天大学出版社,2009.【4】杨长兴、刘卫国.C++程序设计.中国铁道出版社.2010.附录一、源程序#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; sbit D1=P1^0;sbit D2=P1^1;sbit D3=P1^2;sbit D4=P1^3;sbit D5=P1^7;sbit A1=P2^4;sbit A2=P2^5;uint m,i,t;uint A0,B0,C0,D0;void display(uint A0,uint B0,uint C0,uint D0);void init();void delay(uchar z);void main(){init();A1=0;A2=1;while(1){if(A2==0){A2=0;TR0=1;TR1=1;if(i<1000){A0=m/1000;B0=m%1000/100;C0=m%100/10;D0=m%10;}display(A0,B0,C0,D0);if(i==1000){ while(1){display(A0,B0,C0,D0);}}}}}void init(){i=0;m=0;t=0;D5=1;TMOD=0x16;TH1=(65536-20)/256;TL1=(65536-20)%256;EA=1;ET1=1;ET0=1;TH0=0xff;TL0=0xff;TR0=0;TR1=0;}void delay(uchar z){uchar x,y;for(x=z;x>0;x--)for(y=113;y>0;y--);}void timer0() interrupt 1{TR0=0;TH0=0xff;TL0=0xff;m=m+1;}void timer1() interrupt 3{ TR1=0;TH1=(65536-20)/256;TL1=(65536-20)%256;i++;t++;if(t==15){D5=~D5;t=0;}TR1=1;}void display(uint A0,uint B0,uint C0,uint D0) { D4=1;D1=1;P0=table[A0];D1=0;delay(1);D1=1;D2=1;P0=table[B0];D2=0;delay(1);D2=1;D3=1;P0=table[C0];D3=0;delay(1);D3=1;D4=1;P0=table[D0];D4=0;delay(1);}二、硬件名称列表序号名称数量1 STC89C52单片机 12 排阻 13 LED数码管 14 按键105 220Ω电阻 16 1KΩ电阻 27 USB接口 18 30pf电容 29 10µf电容 110 12M晶振 1。