简易频率计的设计.doc

上传人:laozhun 文档编号:4136932 上传时间:2023-04-07 格式:DOC 页数:35 大小:1.86MB
返回 下载 相关 举报
简易频率计的设计.doc_第1页
第1页 / 共35页
简易频率计的设计.doc_第2页
第2页 / 共35页
简易频率计的设计.doc_第3页
第3页 / 共35页
简易频率计的设计.doc_第4页
第4页 / 共35页
简易频率计的设计.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《简易频率计的设计.doc》由会员分享,可在线阅读,更多相关《简易频率计的设计.doc(35页珍藏版)》请在三一办公上搜索。

1、 分类号 UDC 单位代码 10644 密 级 公 开 学 号 2008050248 学士学位论文 简易频率计的设计 The design of simple frequency counter 论文作者: 聂德军指导教师: 伍世云系 别: 物理与工程技术系专 业: 电子科学与技术提交论文日期: 年 月 日 论文答辩日期: 年 月 日 学位授予单位:四川文理学院 中 国 达 州2012 年 月摘 要频率是电子技术领域中最基本的参数之一,在许多测量方案以及测量结果中都会涉及到频率测量的相关问题,频率精确测量的重要性显而易见。在本设计中就介绍了频率测量的原理以及一种简易频率计的制作方法。由于待测信

2、号未知,它有可能是正弦波,有可能是三角波,也有可能是方波。通过施密特触发器把待测信号转换为可以计数的脉冲信号,再由单片机计数输出到合适的电子显示元件以十进制显示出来。本文重点介绍了以AT89C52单片机为对系统各个部件的控制来实现整个电路的信号频率采集、测量、转换数据、以及显示最终结果的功能,结合外围电子电路得以频率和周期的测量,并用十进制数字来显示被测信号的频率和周期。本数字频率计的硬件部分是采用PROTEUS ISIS绘制的,PROTEUS和KEIL联合做系统仿真,软件部分的单片机控制程序的编写使用的是C语言本。本系统的最大优点就是它结构简单易懂,制作起来也并不算麻烦,其缺点就是容易受自身

3、电路元件以及周围环境的影响,从而导致测量结果与实际值的偏差。关键词:单片机AT89C52 电路原理 频率测量 周期测量 ABSTRACTFrequency is one of the basic parameters in the field of electronic technology, many measurement programs, as well as measurement results are related to the frequency measurement, and frequency of accurate measurement of obvious imp

4、ortance.In this design on a frequency measurement principle and method of making a simple frequency meter. The test signal is unknown, it may be a sine wave, there is a triangle wave, there may be a square wave. Converted to a test signal through the Schmitt trigger pulse signal can count, count by

5、the microcontroller output to the appropriate electronic display elements displayed in decimal.This paper focuses on AT89C52 microcontroller for control of the system in various parts of to achieve the entire circuit signal frequency acquisition, measurement and conversion data, and display the fina

6、l results feature, combined with the external electronic circuit can be frequency and period of measurement, and use decimal numbers to display of the measured signal frequency and period. The digital hardware part of the frequency meter using the PROTEUS the ISIS draw, the PROTEUS, and KEIL do syst

7、em simulation software part of the microprocessor control program written using C language in this. The biggest advantage of this system is its structure is simple, the production is not too troublesome, the drawback is vulnerable to its own circuit elements, as well as the surrounding environment,

8、resulting in the deviation of measurement results and the actual value.Keywords: SCM AT89C52 circuit schematic frequency measurement cycle measurement目 录摘 要IABSTRACTII第一章 绪论11.1 频率计应用概述11.2 数字频率计系统介绍21.2.1课题研究的目的和意义21.2.2国内外数字频率计的研究现状2第二章 数字频率计的设计42.1 设计的任务和要求42.2总体框架和测量方案42.2.1 测量方法论证62.2.2 计时方案选择9

9、第三章 硬件电路的设计及仿真103.1 整体电路介绍103.2 信号整形电路103.3 单片机最小系统设计123.4施密特触发器整形仿真与功能仿真133.5 显示方案173.5.1 LED方案173.5.2 LCD1602方案17第4章 软件设计194.1软件编程思想194.2主要程序段及软件流程图194.2.1频率周期测量流程图194.2.2总流程图20结论22参考文献23致谢24附:程序代码25第一章 绪论1.1 频率计应用概述频率计又称为频率计数器,是一种专门对被测信号频率进行测量的电子测量仪器。其最基本的工作原理为:当被测信号在特定时间段T内的周期个数为N时,则被测信号的频率f=N/T

10、。电子计数器是一种基础测量仪器,到目前为止已有30多年的发展史。早期,设计师们追求的目标主要是扩展测量范围,再加上提高测量精度、稳定度等,这些也是人们衡量电子计算器的技术水平,决定电子计数器价格高低的主要依据。目前这些基本技术日臻完善,成熟。应用现代技术可以轻松地将电子计数器的测频上限扩展到微波频段。 随着科学技术的发展,用户对电子计数器也提出了新的要求。对于低档产品要求使用操作方便,量程(足够)宽,可靠性高,价格低。而对于中高档产品, 则要求有高分辨率,高精度,高稳定度,高测量速率;除通常通用计数器所具有的功能外,还要有数据处理功能,统计分析功能,时域分析功能等等,或者包含电压测量等其他功能

11、。这些要求有的已经实现或者部分实现,但要真正完美的实现这些目标,对于生产厂家来说,还有许多工作要做,而不是表面看来似乎发展到头了。由于微电子技术和计算机技术的发展,频率计都在不断地进步着,灵敏度不断提高,频率范围不断扩大,功能不断地增加。在测试通讯、微波器件或产品时,通常都是较复杂的信号,如含有复杂频率成分、调制的或含有未知频率分量的、频率固定的或变化的、纯净的或叠加有干扰的等等。为了能正确地测量不同类型的信号,必须了解待测信号特性和各种频率测量仪器的性能。微波计数器一般使用类型频谱分析仪的分频或混频电路,另外还包含多个时间基准、合成器、中频放大器等。虽然所有的微波计数器都是用来完成计数任务的

12、,但制造厂家都有各自的一套复杂的计数器的设计、使得不同型号的 计数器性能和价格会有所差别,比如说一些计数器可以测量脉冲参数,并提供类似于频率分析仪的屏幕显示,对这些功能具有不同功能不同规格的众多仪器,我们应该视测试需要正确地选择,以达到最经济和最佳的应用效果。1.2 数字频率计系统介绍1.2.1课题研究的目的和意义数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字,显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号以及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精度高

13、,显示直观,在教学、科研、高精度仪器测量、工业控制等领域都有较广泛的应用。频率测量对生产过程监控有很重要的作用,可以发现系统运行中的异常情况,以便迅速做出处理。本次设计针对方波,正弦波进行频率计数,通过通过信号源处理电路的、单片机、数码管等器件实现频率计的功能。学会运用所学知识设计处理电路和保护电路,编写程序,运用软件设计电路图,并对整个电路进行完整的说明,让自己逐渐掌握设计的过程以及论文的编写。1.2.2国内外数字频率计的研究现状随着社会的飞速发展,电子元件的换代也越来越快,越来越精密。频率计数器作为测量设备,也被赋予更高的要求,智能化、高精度化、多功能化,是现代社会对频率计的要求。目前国外

14、市场上的频率计数器,都是基于脉冲计数的原理,其功能除了直接测量频率值外,还可测量信号周期、多周期、时间间隔、脉冲宽度、频率比、占空比、统计计数等,有的甚至可以测量频率参数以外的参数,如电压、相位、功率等。这种以频率测量为主体的多功能数字式测量仪器,也称电子计数器。这些国内产品虽然在采用大规模集成电路和专用集成电路、改进设计、强化多功能和小型化等方面取得很大进展,但其技术性能与国外同类先进产品相比,仍有差距。这既反映出国内产品更新换代的缓慢,也反映出国内生产厂家跟踪国际先进技术的不力。电国际上数字频率计的分类很多。按功能分类,电子计数器有通用和专用之分。通用型计数器:是一种具有多种测量功能、多种

15、用途的万能计数器。它可测量频率、周期、多周期平均值、时间间隔、累加计数、计时等;若配上相应插件,就可测相位、电压、电流、功率、电阻等电量;配上适当的传感器,还可进行长度、重量、压力、温度、速度等非电量的测量。专用计数器:指专门用来测量某种单一功能的计数器。如频率计数器、时间计数器、特种计数器、可逆计数器、予置计数器、差值计数器、倒数计数器等。数字频率计按频段分类:(1)低速计数器:最高计数频率10MHz;(2)中速计数器:最高计数频率10100MHz;(3)高速计数器:最高计数频率100MHz;(4)微波频率计数器:测频范围180GHz或更高。第二章 数字频率计的设计2.1 设计的任务和要求

16、一、任务:设计并制作一台数字显示的简易频率计。二、要求:1、频率测量:(1)测量范围 信号:方波、正弦波;幅度:0.5V5V;频率:1Hz1MHz(2)测量误差0.1%2、周期测量:(1)测量范围 信号:方波、正弦波;幅度:0.5V5V;频率:1Hz1MHz(2)测量误差0.1%3、显示: 十进制数字显示,显示刷新时间可调,对上述三种测量功能分别用不同颜色的发光二极管指示。4、具有自校功能,时标信号频率为1MHz。5、自行设计并制作满足本设计任务要求的稳压电源。2.2总体框架和测量方案 数字频率计主要由四个部分组成:信号整形部分、单片机控制部分、时基电路部分、数据锁存部分、和数据显示部分。整体

17、框图如图2-1所示。 稳压电源模块整流模块施密特触发器单片机模块AT89C52周期信号输入接口显示模块1602 LCD时钟电路复位电路显示模块1602 LCD复位电路时钟电路 图2-1 系统结构框图待测信号进入系统,信号整形部分会将其整形成脉冲,另一方面,时基电路提供标准的时基脉冲,在其上升沿达到1s时结束计数。而在这1秒内测得的整形后的脉冲频率就是待测信号的频率。之后单片机送数据锁存,并等待命令,若继续测量则返回测量,此时仍可将数据送显示,若无继续测量命令则,直接送数据显示。这个方案的设计关键是555定时器构成的施密特触发器是否能够提供标准的脉冲。因此,如果这点把握不好将直接影响最后的精度。

18、较为合理的解决办法是,做实物时可以选择其电容电阻的参数设定,用示波器先进行测量,直到取得较为满意的结果。如果进行外界接受正弦波,方波,三角波进行测量,必须经过放大(衰减器,放大器),整形(施密特触发器,跟随器)两个过程才能转化成标准测量信号,而放大整形过程是由于输入的信号幅度是不确定的,可能很大也可能很小,这样对于输入信号的测量引起不便,所以也要考虑缴入放大限幅,整形和阻抗变换。这样可以最大限度提高精确度。由于本设计中要求所测频率范围是1Hz-1MHz。因此,在待测频率较大时,由于单片机自身频率的限制,无法完成计数。原因是本次设计用到的AT89S52单片机采用的是24M晶振,而单片机识别1次计

19、数时需要花费两个机器周期,因此,最大计数速度为振荡频率的1/24。不难算出,在采用24M晶振的情况下,单片机的最大计数速度是24M1/24=MHz,即1MHz。所以被测信号越接近1MHz,所测得的数据误差就越大。当待测信号频率大于1MHz时,单片机是测不到其频率的1。单片机部分主要是完成计数并处理最后数据的功能,以及控制各部分的相关工作。单片机的选用为AT89S52单片机。2.2.1 测量方法论证由于测量范围比较大,影响测量结果,下面是常见的两种测量方法1、测频法测频法是指在一定的时间内直接对信号的边沿触发或电平触发进行计数(见图1),也可以称作计数法。被测信号是一串计数脉冲(实际中应通过放大

20、整形等到),将它加到闸门的一个输入端,闸门由门控信号来控制其关闭时间。将单位门控时间内计得的脉冲送至处理器处理,再经显示器显示。如图1中,定义被测信号的频率为Fx,闸门开启时间为Tw,在这段时间内所计量得到的脉冲个数为Nx,则被测信号频率可以表示为: (1)不难看出,采用计数的测频方法的测量误差,一方面决定于闸门时间T准不准确,即由晶振提供的标准频率的准确度;另一方面决定于计数器计得的数准不准。所以,计数测频方法的误差主要有两项,即标准频率误差和计数值误差。在测量高频时,计数值误差引起的测频误差相对较小,所以这种方法比较适合高频信号的测量。但测低频时,由于计数值误差产生的测频误差大得惊人,所以

21、不宜采用直接测频方法。此外,从公式(1)中可以看出,要得到频率Fx,必须知道Tw,和Nx,常用的方法是先已知道其中的一个量,然后对另外一个量进行测量。例如将51单片机中的一个定时器用于得到标准时间的闸门信号Tw,用外部中断或端口捕获的方法接入信号,对交变信号进行计数,从而得到Nx。举例来说,如果Tw为号,对交变信号进行计数,从而得到Nx。举例来说,如果Tw为1s。则得到的频率即为脉冲个数Nx。 图2-2 测频法示意图2、测周法在前文提到,在对低频信号进行测量时,如果还采用测频法,会导致由计数值引起的巨大误差。因此,在低频时通常使用测周法,即利用信号的一个周期作为时间闸门信号,在这个信号周期对单

22、片机内部的已知脉冲进行计数。如图2所示:其中基准信号的周期为,被测信号的周期为,则在被测信号的一个周期Tx内,记录基准信号的周期数为Ns,则被测信号的频率可以表示为: (2)从公式(2)中可以看出,要得到频率Fx,应知道和。例如将51单片机中的一个定时器用于内部计数,其每计一次的周期时间即为基准信号的周期Ts(这个由单片机的晶振和指令运行周期决定),用外部中断或端口捕获的方法接入信号后,在一个被测信号的周期开始和周期结束分别触发,在这个过程中得到的脉冲个数即为。 图2-3 测周法示意图电子计数器测频法主要是将被测频率信号加到计数器的计数输入端,然后让计数器在标准时间内进行计数,所得的计数值。与

23、被测信号的频率的关系如下: 而电子计数器测周法则是将标准频率信号送到计数器的计数输入端,而让被测频率信号控制计数器的计数时间,所得的计数值与的关系如下: 事实上,无论用哪种方法进行频率测量,其主要误差源都是由于计数器只能进行整数计数而引起的1误差:对于测频法,有:对于测周法,有: 可见,在同样的下,测频法的低频端,误差远大于高频端,而测周法在fx2的高频端,其误差远大于低频端。理论研究表明,如进行n次重复测量然后取平均,则1误差会减小n倍。如给定1误差0,则要求对测频法要,对测周法则要求因此,对一给定频率信号进行测量时,用测频法fs1越低越好,用测周法则越高越好。而本次的测量范围为1-1MHz

24、,相对属于低频范围,所以本次设计使用测频法进行频率测量。2.2.2 计时方案选择方案一:使用专用时钟芯片 使用微控制器控制专用时钟芯片实现计时控制,这种方案有着计时精度高、控制简单的优点,而且更易于实现日期 / 时间显示、定时等计时扩展功能。 方案二:采用 MCU 内部定时器AT89C51内部含有2个定时器,可以利用一个定时器计时与一个定时器计数方式采集频率信号。 由于方案二具有较好的灵活性、较少的电路器件和较高的性价比,而且通过精确的软件补偿使精度完全可以满足控制需要,所以我们选择该方案完成设计。第三章 硬件电路的设计及仿真3.1 整体电路介绍整体电路如下图3-1所示图3-1 整体电路图整体

25、电路包含了4个模块,分别是稳压电源模块(本模块本图未给出)、信号整形模块、单片机模块和数据显示模块。3.2 信号整形电路我们可以有很多种方法将正弦波转换成方波,例如我们学过的施密特触发器,传统的运放,以及过零比较器等等。施密特触发器有两个稳定状态,但与一般触发器不同的是,施密特触发器采用电位触发方式,其状态由输入信号电位维持。 利用施密特触发器状态转换过程中的正反馈作用,可以把边沿变化缓慢的周期性信号变换为边沿很陡的矩形脉冲信号。这输入的信号只要幅度达到某一值时,即可在施密特触发器的输出端得到同等频率的矩形脉冲信号。这些特性组成了我们使用施密特触发器的原因,而且施密特触发器的使用频率比较宽,足

26、够满足我们的本次设计。施密特触发器的电路连接图如图3-2所示 图3-2 施密特触发器3.3 单片机最小系统设计 图3-3 单片机系统本次设计使用的单片机为AT89S52单片机,系统主要由晶振电路,复位电路与单片机芯片组成。晶振电路由一个24M的晶振外加两个33pf的电容组成。由晶振两端引出的两个引脚和单片机的X1和X2相连。复位电路由一个按键,两个电阻,和一个电容组成,两个电阻的阻值分别为1K欧姆和1K欧姆,其中1K欧姆的电阻要求与地相连。复位电路与单片机上的RESET脚相连。3.4施密特触发器整形仿真与功能仿真仿真1:输入锯齿波 频率:25HZ 幅度:6.3V 周期:40000us图3-4

27、整形前后波形对比图3-5测得的频率图3-6测得的周期仿真2:输入正弦波 频率:500HZ 幅度:6.3V 周期:2000us图3-7整形前后波形对比图3-8测得的频率图3-9测得的周期仿真3:输入三角波 频率:1.30KHZ 幅度:6.3V 周期:768us图3-10 整形前后波形对比图3-11 测得的频率图3-12 测得的周期3.5 显示方案3.5.1 LED方案对于LED七段数码管(图3-13),有其自身的优势,如无汞、节能、节材、对环境无电磁干扰、无有害射线等。此外,LED七段数码管采用低压供电,无高压环节,为了绝缘的开销要小很多,比较经济,而且可靠性高。它附件简单,无启动器、镇流器或超

28、高压变压器。结构简单,具有固体光源 图3-13 七段数码管 的最大优点,不充气,无玻璃外壳,无气体密封问题,耐冲击。而且编程简单,使用寿命长。色彩纯厚,由半导体PN结自身产生色彩,纯正,浓厚,柔和不刺眼。无需维护,10万小时寿命,可以使用50年,大大减少使用期间的维护费用。但是它的字符显示能力有限,无法根据用户的要求显示更为复杂的文字。由于本设计要完成频率周期的相互切换,LED无法清晰明了的显示。3.5.2 LCD1602方案 图3-14 LCD1602对于液晶显示来说液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。工业字符型

29、液晶,能够同时显示16x02即32个字符。(16列2行)1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形 。但对于本次设计来说,1602相对接口较少,显示字符数量合适,能清楚直观的显示出所测量的内容。而且对1602进行块状程序设计,容易调试,便于拆解。1602相对拥有友好的人机界面及良好的显示功能。特别适用于单片机智能控制的可编程人性化显示。综合各方面的考虑,在本次设计中我采用的

30、是带中文字库的1602LCD液晶显示器。第4章 软件设计4.1软件编程思想首先,系统要初始化。利用AT89S51单片机的T0、T1的定时计数器功能,来完成对输入的信号进行频率计数,定时/计数器T0和T1的工作方式设置,由图可知,T0是工作在计数状态下,对输入的频率信号进行计数,但对工作在计数状态下的T0,最大计数值为fOSC/24,由于fOSC24MHz,因此:T0的最大计数频率为1MHz。对于频率的概念就是在一秒只数脉冲的个数,即为频率值。所以T1工作在定时状态下,每定时1秒中到,就停止T0的计数,而从T0的计数单元中读取计数的数值,然后进行数据处理。1602显示出来。(2)T1工作在定时状

31、态下,最大定时时间约为33ms,达不到1秒的定时,所以采用定时25ms,共定时400次,即可完成1秒的定时功能。计数的频率结果通过LCD1602显示出来。要求能够对1HZ1MHZ的信号频率进行准确计数,计数误差不超过1HZ。程序见附录。4.2主要程序段及软件流程图4.2.1频率周期测量流程图变量初始化,T0/T1初始化(设置T0为外部脉冲计数,T1为1s定时)否定时1s是否已到是计算频率/周期 结束 图4-1频率周期测量流程图4.2.2总流程图 开始,显示欢迎语否是否有按键按下是变量button+1并判断button%3值显示致谢语启动测周期启动测频率 等于1 等于2 等于3 数据处理/数据显

32、示 结束 图4-2 总流程图结论本次设计所做的数字频率计具有比较好的测量精度,较宽的频率范围,具有一定的实用价值。当然,这是在所有元器件都是理想状态下所得到的结论,在实际生活中是难以做到如此理想状态的。因此在我设计的过程中就不可避免的遇到了一些问题。比如说在信号转换的电路设计上,最初的设计中在KEIL上做的仿真是完全没有问题的,但是真正在连接PROTEUS的原理图的时候就出现了问题,根本无法将正弦波整形得到方波信号,只能重新设计了555定时器构成的施密特触发器。再者,通过两个定时器中断对外部信号进行计数内部定时,当外部频率比较高时造成中断频繁,这对结果的精确度和显示数据的输出造成一定是有影响的

33、。我想,如果能很好的解决上述的问题,那么该数字频率计的精确度和反应速度势必将有很大的提高。参考文献1何立民.单片机应用技术选编北京:北京航空航天大学出版社,1998:13-15.2郝建国,刘立新,党建华. 基于单片机的频率计设计J. 西安邮电学院学报,2003,8(3):1-7.3彭容修,刘泉,马建国.数字电子技术基础M湖北:武汉理工大学出版社,2007:234-251.4何立民.MCS-51系列单片机应用系统设计M北京:北京航空航天大学出版社,1995:41-43.5万福君.单片微机原理系统设计与应用M合肥:中国科学技术大学出版社,2004:17-19.6陈明荧.8051单片机课程设计实训教

34、材M北京:清华大学出版社,2003;22-26.7王惠莲,. 基于单片机多周期同步测量法的电子频率计设计J. 科技传播,2010:P22.8李全利.单片机原理及应用技术M北京:高等教育出版社,2004:6367.9张毅坤,陈善久,裘雪红.单片微型计算机原理及应用M西安:西安电子科技大学出版 社,1998:23-26.10艾红,王捷.数字频率计中C语言编程的研究J.仪器仪表学报,2002(Z1):7-8.11徐江丰,陈曦.相关计数法数字频率计的研究与实现J.电子技术(上海),2003(4):16-18.12冯雷星,杨伟,芦艳龙.基于单片机高性价比频率计的设计与实现J.2007:P23.13肖春芳

35、,韩绪鹏,. 基于单片机控制的数字频率计设计J. 电子设计工程,2012:P1.致谢四年寒窗,所收获的不仅仅是愈加丰厚的知识,更重要的是在阅读、实践中所培养的思维方式、表达能力和广阔视野。很庆幸这些年来我遇到了许多恩师益友,无论在学习上、生活上还是工作上都给予了我无私的帮助和热心的照顾,让我在诸多方面都有所成长。感恩之情难以用语言量度,谨以最朴实的话语致以最崇高的敬意。感谢我的导师伍仕云老师。本论文能够顺利完成,离不开晏老师的悉心指导和严格要求,伍老师在论文的选题、研究理论、框架结构、数据整理,直至撰写、修改和定稿等各个环节均严格把关,并投入了大量的时间和精力。伍老师治学严谨,为人幽默,在他身

36、上闪烁着独特人格魅力。在跟随伍老师学习的过程中,我不仅掌握了全新而实用的学术思想和研究方法,也从伍老师身上领略到了他对学术的严谨和认真。伍老师严以律己、宽以待人的崇高风范,平易近人的人格魅力,令人如沐春风,倍感温馨。感谢2008级电子科学与技术专业的同窗好友。在同大家的交往中我学到很多,也非常快乐,正因为有大家我在四川文理学院的生活才能如此丰富而充实。四年时光转瞬即逝,然而这段短暂时光的点点滴滴都将是我生命中的美好回忆。因而在今后新的征程中,无论面临多大的困难,我也将怀抱着感激、怀抱着情谊、怀抱着责任、怀抱着期望和梦想,坚定、自信地走下去。感谢我最亲爱的父母。你们数十年含辛茹苦、无私的关爱和奉

37、献,让我在漫长的求学道路上不感到孤单,让我在拼搏和奋斗的历程中不感到疲倦,你们是我永远的牵挂和眷念最后,我要向在百忙之中抽时间对本文进行审阅、评议和参加本人论文答辩的各位师长表示感谢!附:程序代码#include#include#include #includeunsigned char s;sbit d=P37;/测频or测周按键/unsigned char button=0;unsigned char flag0,flag1;/中断次数/unsigned long int m,s_count;/这三个引脚参考资料sbit RS=P20;/1602使能引脚sbit RW=P21;/1602读

38、写引脚sbit E=P22; /1602数据/命令选择引脚unsigned char xianshi=F=0000000HZ;unsigned char s; /*延时,延时时间大概为140US。void delay() Unsigned char k;int i,j; for(k=0;k3;k+)for(i=0; i=100; i+)for(j=0; j=20; j+);/*1602命令函数void enable(unsigned char del)P0 = del;RS = 0;RW = 0;E = 0;delay();E = 1;delay();/*1602写数据函数void write

39、(unsigned char del)P0 = del;RS = 1;RW = 0;E = 0;delay();E = 1;delay();/* 1602初始化,请参考1602的资料void L1602_init(void)enable(0x01);enable(0x38);enable(0x0c);enable(0x06);enable(0xd0);/* 输入1602数据的函数void L1602_string(unsigned char hang,unsigned char lie,unsigned char *p)Unsigned char a;if(hang = 1) a = 0x80

40、;if(hang = 2) a = 0xc0;a = a + lie ;enable(a);while(1)if(*p = 0) break;write(*p);p+; /*处理频率的函数void ch_data()xianshi0=F;xianshi1=;xianshi2=m/1000000+48; /百万位xianshi3=(m%1000000)/100000+48; /十万位xianshi4=(m%100000)/10000+48; /万位xianshi5=(m%10000)/1000+48; /千位xianshi6=(m%1000)/100+48; /百位xianshi7=(m%100

41、)/10+48; /十位xianshi8=m%10+48; /个位xianshi9=H;xianshi10=z;/*处理周期的函数void chT_data()xianshi0=T;xianshi1=;xianshi2=m/1000000+48; /百万位xianshi3=(m%1000000)/100000+48; /十万位xianshi4=(m%100000)/10000+48; /万位xianshi5=(m%10000)/1000+48; /千位xianshi6=(m%1000)/100+48; /百位xianshi7=(m%100)/10+48; /十位xianshi8=m%10+48; /个位xianshi9=u;xianshi10=s; /*T0计数中断函数开始void int_count0() interrupt 1flag0+;/*T1计时中断函数开始void int_

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号