装配图薄膜谐振式液位高度测量用频率计的设计与制作(论文+DWG图纸+外文翻译+文献综述+开题报告)
装配图薄膜谐振式液位高度测量用频率计的设计与制作(论文+DWG图纸+外文翻译+文献综述+开题报告),装配,薄膜,谐振,式液位,高度,测量,丈量,频率计,设计,制作,论文,dwg,图纸,外文,翻译,文献,综述,开题,报告,讲演,呈文
本科毕业设计(论文)任务书(指导教师填写)设计(论文)题目薄膜谐振式液位高度测量用频率计的设计与制作院系电子信息工程学院专业年级测控技术技术与仪器2003级学号03071145学生姓名余彦华注:请直接在所属项目括号内打“”题目来源教师科研课题纵向课题( )题目类型工程类型( )横向课题( )理论研究( )企业生产( )实验研究( )实验室建设( )计算机软件开发( )自拟课题( )结合社会、经济、文化实际( )其他( )论文( )设计(论文)选题目的及工作任务 目的:1.了解薄膜谐振式水位传感器的原理和应用 2.了解频率计测量频率与测量水位的基本原理 3.熟练掌握数字频率计的设计与调试方法及减小测量误差的方法任务:1.完成资料的收集,文献调研,确定设计方案; 2.完成频率计的硬件设计与制作 3.完成设计装置的制作与调试 目前资料收集情况(含指定参考资料)1何道清传感器与传感器技术北京:科学技术出版社,20042 何立民.单片机应用系统设计.北京:北京航空航天大学出版社,1990.3 李建忠.单片机原理及应用.西安:西安电子科技大学出版社,2006.4 李广娣.单片机基础. 北京:北京航空航天大学出版社,2000.5305 李军.贺庆之.检测技术与仪表.北京:轻工业出版社,1989.1881906 王孙武.电子测量仪器原理及应用.哈尔滨:哈尔滨工程大学出版社,2002.1291327 何立民.单片机原理及应用系统设计.北京:北京航空航天大学出版社,1995.8 曹玲芝、孙玉胜水位传感器专用频率计的设计郑州轻工业学院学报,1998年第13卷(第21期)9 扈刚、王延峰. 谐振式水位传感器. 传感器技术,2002年第21卷(第5期)10李朝青.单片机原理及接口技术.北京:北京航空航天学院出版社,1994.15716311肖洪兵、胡辉.跟我学用单片机. 北京:北京航空航天学院出版社,2002.93812孙玉胜.洗衣机谐振式水位传感器特性检测仪的研制.郑州轻工业学院学报,2000年设计(论文)的进程安排序号设计(论文)的各阶段内容起止日期1资料收集,做出设计方案,完成开题报告2007.4.22007.4.142资料收集、整理、分析;作出设计方案;完成开题报告;完成外文翻译2007.4.152007.4.303,设计放大实验电路2007.5.12007.5.134完成实验测试,分析测试结果,设计实验电路板2007.5.142007.6.35撰写毕业设计论文2007.6.42007.6.106准备毕业设计答辩2007.6.112007.6.177毕业设计答辩2007.6.182007.6.24设计(论文)的预期结果1.完成设计装置的制作与调试。2.能够达到预期的各项技术指标和功能。3.能够准确稳定的显示测量信号的频率。接受任务日期: 2007 年 4月 2日 要求完成日期: 2007年 6月 24日学生接受任务(签名): 指导教师(签名):教研室主任(签名): 院系负责人(签名):备注:此任务书一式两份,于毕业设计(论文)开始前一周下达:一份发给学生,一份指导教师保存,毕业设计(论文)结束时交教研室备案。摘 要本文介绍了一种以单片机(AT89C51)为核心与薄膜谐振式水位传感器配套使用的液位高度测量用频率计的设计与制作。还介绍了谐振式水位传感器的新型传感原理,传感器的结构,数字振荡电路的特点,阐述了水位与频率的对应关系。薄膜谐振式水位传感器内置三点式水位传感器振荡电路,该振荡电路的固有频率随水位的变化而变化,通过检测该振荡电路的固有频率来判定水位的高低。该频率计直接利用单片机内部的计数器对薄膜谐振式水位传感器的频率脉冲信号进行计数,然后利用单片机的定时功能实现对频率的检测,最后通过LED动态显示电路显示数值。在设计中应用了单片机的运算和控制功能,满足测量的精度要求,该频率测量仪器测量误差小于10Hz测频性能稳定可靠,可单独使用,也可方便嵌入系统中。该频率计具有结构简单、价格低、精度高、操作简单、并且降低产品的成本,有利于新产品的设计与研制、等特点。随着单片机应用技术的发展,越来越多的测量仪器都采用单片机作为系统进行设计,应用单片机进行系统设计时系统结构简单、控制方便、硬件设计需要外围器件较少,软件设计可采用汇编语言编程,汇编语言具有编程方便、运算效率高、占用内存少等优点。关键词: 液位检测;频率测量;传感器;单片机AbstractThis paper presents the design and fabrication of a Microprocessor (AT89C51)based film resonant with the water level sensor supporting the use of the liquid level measurement frequencymeter.The principle of new resonator water level sensor is mainly introduced.The internal structure of this Sensor and the characteristic of numeral oscillation circuit are analyze dindetails.There ationship between frequently and water level is expounded.Films resonant water level sensor built-in three-point level sensor oscillation circuit.The oscillator circuit changed with the natural frequency of the water level. By detecting the oscillation circuit natural frequency to determine the level of water. The frequencymeter use the Microprocessor internal counter to counting the film resonant frequency of the water level sensor pulse,then Microprocessor regular function to achieve frequency testing, final adoption of LED display circuit dynamic numerical show.Application of the design of the 89C51 operation and control functions,Meet the required precision measurement,The error of the frequency measurement instrument is less than 10Hz,Performance measurement frequency stability and reliability,Also it can be used alone, and easily embedded in the system. The frequency- meter also has a simple structure, low cost, high accuracy and simple operation,reduce the cost of the product and facilitate the design and development of new product and so on. With the development of the Microprocessor technology, a growing number of measuring instruments are used as a single chip computer system design. Microprocessor system design is simple, easy to control, hardware design requires fewer external components, Software Design use assembly language programming, because assembly language with high computational efficiency and low memory consume.Keywords: Water Level Measurement; Frequency Measurement; Sensors;Microprocessor目 录1 绪论.11.1选题的目的及意义11.2 频率测量仪器的现状及发展11.3 频率计的设计内容及要求22 薄膜谐振式水位传感器应用.32.1 薄膜谐振式水位传感器概述32.1.1 薄膜谐振式水位传感器的结构32.1.2水位传感器的工作原理32.2薄膜谐振式水位传感器的功能简介42.2.1水位检测42.2.2水位与频率关系的对应43 频率计总体方案设计.63.1方案论证与比较63.1.1 方案一63.1.2 方案二73.2 方案选择74 频率计硬件分析与设计.84.1频率计系统的组成与基本工作原理84.1.1 系统组成84.1.2 系统设计原理84.1.3 测频原理94.2 AT89C51单片机在本系统中的应用94.2.1 AT89C51简介94.2.2 AT89C51器件的基本结构114.2.3 AT89C51的定时器/计数器134.2.4 AT89C51外围电路设计144.3 地址锁存器74LS373介绍144.4 八路反相缓冲器74LS240应用154.5 显示电路164.5.1显示电路设计164.5.2单片机驱动数码管原理174.6 硬件总电路图175 软件设计.185.1主程序设计185.2 中断服务子程序设计195.3 显示子程序设计206 运行与调试.216.1硬件调试216.2 软件程序调试226.2.1 MedWin仿真软件简介226.2.2 汇编语言程序的仿真调试226.3系统联调237 结论与展望.257.1 结论257.2 展望25谢辞.26参考文献.27附录 1.28程序清单28附录 2.33硬件总电路图33I薄膜谐振式液位高度测量用频率计的设计与制作1绪论1.1选题的目的及意义频率测量仪器在生产和科研的各个部门都有使用,也是某些大型系统的重要组成部分;利用单片机的定时计数功能设计的信号频率测量仪,可单独使用,也可方便嵌入系统中。实现频率测量有专用的频率测量仪器,但不易用于特殊场合。本文介绍了一种以单片机为核心构成的与薄膜谐振式水位传感器配套使用的专用频率计。该频率计直接用单片机的计数器对薄膜谐振式水位传感器的频率脉冲计数,然后利用单片机的定时功能,从而实现频率的检测。在一些特殊场合只需要用到一般测量用频率计就可以,但市场上出售的大多都是多功能频率计,且价格较高,使用起来成本较高。为此,需要设计用于固定场合的专用频率计。本设计介绍一种与薄膜谐振式水位传感器配套使用的频率计。利用薄膜谐振式水位传感器来检测容器内液位高度是一般液位高度检测方法之一。目前,在全自动洗衣机中多使用薄膜谐振式水位传感器来检测桶内的水位,薄膜谐振式水位传感器内置三点式水位传感器振荡电路,该振荡电路的固有频率随水位的变化而变化,通过检测该振荡电路的频率来判定水位的高低。该频率计根据频率计的基本原理,本文设计方案的基本思想是一种基于单片机AT89C51制作的频率计的设计方法,用汇编语言对单片机编程,实现了闸门控制信号、计数电路、锁存电路、位选电路、段选电路、显示电路等。测频一直以来都是电子和通讯系统工作的重要手段之一,高精度的频率测量仪和频率发生器有着广泛的市场前景。传统的频率测量仪器都是采用的是在低频段采用测周法,再高频段采用测频法,其精度往往会随着被测频率的下降而下降。频率信号抗干扰性强,易于传输,可以达到较高确度的测量,所以在测控系统中,测频方法的研究越来越受到重视。多种非频率量的传感信号要转化为频率量进行测量。由于单片机内部含有稳定度较高的频率源、定时/计数器等硬件,能很方便的对外部信号或标准信号进行计数,并且可以进行计数的逻辑控制以及数据存储运算等,使得基于单片机的频率测量系统可以具有更小的体积、更实用的功能及更便宜的价格。1.2 频率测量仪器的现状及发展随着电子技术的不断发展,单片机应用技术正在逐渐向工业控制和测量仪器仪表系统设计领域渗透,在现代化的工业生产、科学研究等领域中,频率的测量是很普遍的。由于单片机内部含有稳定度较高的标准频率源、定时/计数器等硬件,能很方便地对外部信号或标准频率信号进行计数, 并且可以进行计数的逻辑控制以及数据存储运算等, 使得基于单片机的频率测量系统可以具有更小的体积、更实用的功能及更便宜的价格。频率的测量通常有两种方法:测频法和测周法。由于量化误差的影响,测频法在高频测量时准确度较高,测周法在低频测时准确度较高,但无论是精确测频法还是测周法,量化误差都将在中界频率附近产生较大的误差。频率计是一种基础测量仪器,到目前为止已有30多年的发展史。早期,设计者们追求的目标主要是扩展测量范围,再加上提高测量精度、稳定度等,这些也是人们衡量频率测量仪的技术水平,决定频率计价格高低的主要依据。目前这些基本技术日臻完善,成熟。应用现代技术可以轻松地将频率计的测频上限扩展到微波频段。 目前,频率测量仪器正向一个宽频域、高精度的频率计方向发展,在高频段采用直接测频法,而在低频段采用测周期法,结合高精度恒误差的原理,设计出测量精度与被测频率无关的频率计随着科学技术的发展,用户对频率计也提出了新的要求。对于低档产品要求使用操作方便,量程(足够)宽,可靠性高,价格低。而对于中高档产品, 则要求有高分辨率,高精度,高稳定度,高测量速率;除通常通用频率计所具有的功能外,还应具有数据处理功能等。由于微电子技术和计算机技术的发展,微波频率计都在不断地进步着,灵敏度不断提高,频率范围不断扩大,功能不断地增加。一些计数器可以测量脉冲参数,并提供类似于频率分析仪的屏幕显示;对这些具有不同功能不同规格的众多仪器,我们应该视测试需要正确地选择,以达到最经济和最佳的应用效果。1.3 频率计的设计内容及要求本频率计的设计是基于单片机AT89C51的和薄膜谐振式水位传感器配套使用的用于液位测量的频率测量仪,这就要求设计者在充分了解薄膜谐振式水位传感器特性的基础上进行系统的设计。设计内容主要包括单片机外围电路、锁存电路、位选电路、段选电路、显示电路等。频率测量是电子测量的重要领域。近几年来的科学技术发展要求频率标准具有更高的准确度和稳定性。频率测量的突出地位使得这方面的测量工作也显得格外重要。针对频率测量仪器领域内的发展现状,对频率计设计有如下要求:1. 要求该频率计的频率测量范围在1Hz 60KHz。2. 测量信号为脉冲信号,幅度为5V。3. 测量误差要求小于10Hz,测频性能稳定可靠。2 薄膜谐振式水位传感器应用水位传感器是将水位数据转换成电讯号再进行传送的关键设备,目前水位传感器的主要类型有浮子式、超声波式、压阻式、感应式、谐振式等。各种传感器有不同的使用条件和范围,传感器选择恰当与否直接影响到整个水位观测系统的可靠性及精度,特别是在一些自然条件和管理要求较为复杂的灌区应进行充分比较、论证、最终选取适用的传感器。目前,薄膜谐振式水位传感器大多应用在节水设备上用于水位检测与控制,还用于全自动洗衣机的水位控制部分。2.1 薄膜谐振式水位传感器概述2.1.1 薄膜谐振式水位传感器的结构谐振式水位传感器采用新型的传感原理,把水位的高低通过水位传感器直接变成水位与频率的对应关系。该传感器内置三点式水位传感器振荡电路,该振荡电路的固有频率随水位的变化而变化,通过检测该振荡电路的频率来判定水位的高低。水位传感器的结构 如图2-1所示:图2-1 水位传感器的结构原理图2.1.2水位传感器的工作原理图中水桶的水位H转换为导管口中的气压,通过引入嘴进入传感器气室,气室上面式封闭的,与水位H成正比的气压,被传到薄膜上,导板嵌装在隔膜上,当水位H上升时,气压增大,导板向上移动,当水位下降时,气压降低,在弹簧的作用下,导板向下移动,导板中心有导向轴,受外壳的支撑点限位,使导板上下平行移动,不致偏移。导板上有固定支架,装有磁性元件,在导管气压的作用下导板上下平行移动时,带动磁性元件使其与线圈之间的相对位置发生变化,因此线圈的电感量发生变化。该电感与电容组成三点式振荡电路,该振荡电路的固有频率随水位的变化而变化,通过检测该振荡电路的频率来判定水位的高低。2.2薄膜谐振式水位传感器的功能简介2.2.1水位检测谐振式水位传感器是利用电磁谐振电路LC 作为传感器的敏感元件, 将被测物体的变化转变为LC 参数的变化, 最终以频率参数输出。其工作原理是: 将水位的高低通过导管转换成一个测试内腔气体变化的压力, 驱动内腔上方的一块隔膜移动, 带动隔膜中心的磁芯在某线圈内移动, 从而线圈电感发生变化。由此引起谐振电路的固有频率随水位变化。水位测量电路如图2-2所示, 为便于与单片机接口, 水位传感器采用数字振荡电路, 电感与电容组成的三点式振荡电路经 耦合接入数字式谐振放大器, 随着水位变化, 谐振频率作相应变化, 经 整形后输出, 此时即可将数字量接到单片机。图2-2 水位传感器测量电路2.2.2水位与频率关系的对应由于桶内所形成的压力远小于大气压,因此,由此引起检测内腔的空气体积变化很小,既气腔内外的压差为 (2-1) 式中为水的密度, H 为水的高度。 压差作用于薄膜上, 驱动磁芯位移X , 磁芯同时受到弹簧的反作用力,压差形成的驱动力为: = p S (2-2)式中S 为薄膜的有效面积。弹簧的反作用力为: = K X (2-3)式中K 为弹性系数。当= 时位移停止,由H S = KX 得:X = S/KH = A H (2-4)由此可见,水位H与位移X 成线性关系,磁芯在线圈中位移X ,将引起电感量的变化, 已知磁芯与线圈如图2-3 所示。图2-3 磁心与线圈的位移电感L 由下式决定, (2-5)式中N 为线圈匝数; 为空气导磁率(=4H/ m); 为磁芯导磁率; R 为线圈平均半径;为磁芯有效半径; a 为线圈长度。该线圈电感与电容器 、 组成三点式振荡电路,取 = = C ,其振荡频率为 = (1/ 2) (2-6)把式2-4和式2-5 代入式2-6,令2C = W ,则( a/) N = m ,a = n , ( - 1) A = u ,则 (2-7)3 频率计总体方案设计频率计的的设计方案有很多,这里主要介绍了基于单片机的频率计的设计和利用中小规模的集成电路设计的频率计。3.1方案论证与比较3.1.1方案一此方案采用中小规模的数字电路构成频率计,用计数器构成主要的测量器件,用定时器构成主要的控制模块及时标。外围芯片过多,频带太窄,系统实现起来比较复杂,功能不强。频率的定义是单位时间(1s)内周期信号的变化次数。若在一定时间间隔T内测得周期信号的重复变化次数为N,则其频率为f=N/T (3.1) 据此,设计方案框图如图3-1所示。延迟反相器单稳触发器T触发器量程选择分频器时钟显示传感器信号计数器锁存器 图3-1 方案一设计框图其基本原理是,被测信号ux首先经整形电路变成计数器所要求的脉冲信号,频率与被测信号的频率fx相同。时钟电路产生时间基准信号,分频后控制计数与保持状态。当其高电平时,计数器计数;低电平时,计数器处于保持状态,数据送入锁存器进行锁存显示。然后对计数器清零,准备下一次计数。3.1.2 方案二利用单片机(AT89C51)构成主要的控制和测量模块,其内部的计数器对其计数,设定单片机定时器定时时间1s,通过软件使计数器和定时器的开启和关闭,到达定时时间的脉冲个数即为被测信号的频率。该方案的硬件电路如图3-2所示,该电路由单片机AT89C51,8位地址锁存器74LS373及显示电路等组成。复位电路晶振传感器信号锁存器单片机显 示 图3-2 方案二设计框图 其基本原理是,薄膜谐振式水位传感器的输出信号直接输入给单片机的 T1口,利用单片机内部的计数器对其计数,对脉冲个数进行计数。设定单片机定时器定时时间1s,通过软件使计数器和定时器的开启和关闭,到达定时时间的脉冲个数即为被测信号的频率,并用LED动态显示电路显示出测量频率。3.2 方案选择综合比较两种方案,由于方案一由于用中小规模集成电路来实现,测量精度不高,外围芯片过多,频带太窄,系统实现起来比较复杂,功能不强。方案二测量方法简单,采用单片机的算术运算和控制功能,保证了系统的测量精度,功能较强,具有智能性,LED数字显示电路能够实时的显示测量结果。因此,采用方案二来实现。4 频率计硬件分析与设计根据数字频率计的基本原理,本设计方案的基本思想是分为三个模块来实现其功能,即整个频率计系统分为单片机计数定时模块、锁存器模块和显示模块等几个单元,并且分别用汇编语言对其进行编程,实现了闸门控制信号、计数电路、锁存电路、显示电路等。4.1频率计系统的组成与基本工作原理4.1.1 系统组成所设计的频率计的测量范围为1Hz到65kHz,采用5位频率值显示。频率计硬件由AT89C51芯片、8位地址锁存器74LS373、八反相三态缓冲器74LS240、LED显示电路和系统软件所组成。系统硬件框图如图4-1所示。复位电路RSTAT89C51P3.5时钟产生电路水位传感器锁存器反相器共阳极LED74LS37374LS240图4-1系统硬件框图4.1.2 系统设计原理利用单片机(AT89C51)构成主要的控制和测量模块,将传感器输入到单片机的频率信号(脉冲信号)利用其内部的计数器对其计数,设定单片机定时器定时时间1s,通过软件使计数器和定时器的开启和关闭,到达定时时间的脉冲个数即为被测信号的频率,并用LED动态显示电路显示出测量频率。该系统以单片机的指令周期作为时标,具有足够的精度,电路实现简单,功能较强,具有智能性。单片机利用定时器T0通过其控制功能测出输入信号的周期。然后利用单片机的算术运算功能将周期转换成频率。频率值得出后,为方便计算要显示频率值的段码再将其转换成压缩的BCD码,通过查表将要显示频率值的每一位的压缩BCD码转换成8段码送到显示缓冲区。最后,送至LED显示模块显示出所测的频率。4.1.3 测频原理目前频率测量主要有3种实现方法。(1)直接测频法。直接测频法是把被测频率信号经脉冲形成电路后加到闸门的一个输入端,只有在闸门开通时间t内,被计数的脉冲才被送到十进制计数器进行计数,设计数器的值为N。由频率定义式可以计算得到被测信号频率f=N/t。该测量在低频段的相对测量误差较大。增大t可以提高测量精度,但在低频段效果不理想。(2)组合法。组合测频法是指在低频时采用直接测量周期法测信号周期,然后换算成频率。这种方法可以在一定程度上弥补上述方法的不足,但是难以确定最佳分测点,且电路实现复杂。(3)倍频法。直接测频法在高频段有很高的精度。可以把频率测量范围分成多个频段,使用倍频技术,根据频段设置倍频系数将经整形后的低频信号进行倍频后再进行测量,高频段则进行直接测量。脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为f=N/T,其中f被测信号的频率,N计数器单位时间所累计的脉冲个数;T单位时间。如在1s中记录1000个脉冲,则被测信号的频率为1000HZ。晶振产生的标准频率,经单片机电路分频后可获取各种时基信号(1ms、10ms、0.1s、1s)。水位传感器的频率信号直接加到单片机的主控门T1计数端。只有在闸门时间采样期内(时基信号的一个周期),输入信号才通过主控门。若时基信号的周期为T,进入计数器的脉冲个数为N,则被测信号的频率f=N/T,改变时基信号的周期T,即可得到不同的测频范围。当主控门关闭时,经延时整形电路的延时后,延时电路输出一个复位信号,使计数器和所有的触发器置0,为后续新的一次采样做好准备,即能锁住一次显示的时间,直到接受到新的一次采样为止。显示方式采用七段LED数码管显示读出,做到显示稳定、不跳变。4.2 AT89C51单片机在本系统中的应用4.2.1 AT89C51简介T89C51是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含4K的 可反复檫些的只读程序存储器和128字节的随机2数据存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大,可灵活应用于各种控制领域。1. 主要性能参数l 与MCS-51产品指令系统完全兼容; l 4K字节可重檫写Flash闪速存储器; l 1000次檫写周期; l 全静态操作:0HZ24MHZ ; l 三级加密程序存储器; l 128*8字节内部RAM; l 32个可编程I/O口线; l 2个16位定时/计数器; l 6个中断源; l 可编程串行UART通道; l 低功耗空闲和掉电模式。 2. 引脚说明 图4-2 AT89C51引脚图图4-2 是AT89C51 的引脚图,引脚说明如下:u VCC AT89C51 电源正极输入,接+5V 电压。u GND 电源接地端。u XTAL1 接外部晶振的一个引脚。在单片机内部,它是一反相放大器输入端,这个放大器构成了片内振荡器。它采用外部振荡器时,一些引脚应接地。u XTAL2 接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。u RST AT89C51 的复位信号输入引脚,高电位工作,当要对芯片又时,只要将此引脚电位提升到高电位,并持续两个机器周期以上的时间,AT89C51 便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。u ALE/PROG ALE 是英文ADDRESS LATCH ENABLE的缩写,表示允许地址锁存允许信号。当访问外部存储器时,ALE 信号负跳变来触发外部的8 位锁存器 (如74LS373),将端口P0 的地址总线(A0-A7)锁存进入锁存器中。在非访问外部存储器期间,ALE 引脚的输出频率是系统工作频率的 1/6,因此可以用来驱动其他外围芯片的时钟输入。当问外部存储器期间,将以1/12 振荡频率输出。u EA/VPP 该引脚为低电平时,则读取外部的程序代码 (存于外部EPROM 中)来执行程序。因此在8031 中,EA 引脚必须接低电位,因为其内部无程序存储器空间。如果是使用AT89C51或其它内部有程序空间的单片机时,此引脚接成高电平使程序运行时访问内部程序存储器,当程序指针PC 值超过片内程序存储器地址(如8051/8751/89C51 的PC 超过0FFFH)时,将自动转向外部程序存储器继续运行。此外, 89C51 内部FALSH 时,可以利用此引脚来输入提供编程电压。u PSEN 此为Program Store Enable的缩写。访问外部程序存储器选通信号,低电平有效。在访问外部程序存储器读取指令码时,每个机器周期产生二次PSEN 信号。在执行片内程序存储器指令时,不产生PSEN 信号,在访问外部数据时,亦不产生PSEN 信号。u P0 P0 口(P0.0P0.7)是一个8 位漏极开路双向输入输出端口,当访问外部数据时,它是地址总线(低8 位)和数据总线复用。外部不扩展而单片应用时,则作一般双向IO 口用。P0 口每一个引脚可以推动8 个LSTTL 负载。u P2 P2 口(P2.0P2.7)口是具有内部提升电路的双向I/0 端口(准双向并行I/O 口),当访问外部程序存储器时,它是高8 位地址。外部不扩展而单片应用时,则作一般双向IO 口用。每一个引脚可以推动4 个LSTL 负载。u P1 P1 口(P1.0P1.7)口是具有内部提升电路的双向I/0 端口(准双向并行I/O 口),其输出可以推动4 个LSTTL 负载。仅供用户作为输入输出用的端口。u P3 P3 口(P3.0P3.7)口是具有内部提升电路的双向I/0 端口(准双向并行I/O 口),它还提供特殊功能,包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容的读取或写入控制等功能。其特殊功能引脚分配如下:P3.0 RXD 串行通信输入;P3.1 TXD 串行通信输出;P3.2 INT0 外部中断0 输入,低电平有效;P3.3 INT1 外部中断1 输入,低电平有效;P3.4 T0 计数器0 外部事件计数输入端;P3.5 T1 计数器1 外部事件计数输入端;P3.6 WR 外部随机存储器的写选通,低电平有效;P3.7 RD 外部随机存储器的读选通,低电平有效。4.2.2 AT89C51器件的基本结构1. AT89C51 各中断源向量地址如表4-1 所示:表4-1 各中断源向量地址中断源向量地址外部中断0(INT0)(IE0)0003H定时/计数器0(TF0)000BH外部中断1(INT1)(IE1)0013H定时/计数器1(TF1)001BH串行通讯(RI+TI)0023H2. 主要特殊功能寄存器说明u IE 中断允许寄存器。其格式如表4-2所示:表4-2 中断允许寄存器格式位地址AF-ADACABAAA9A8符号EA-ET2ESET1EX1ET0EX0EA0 时,所有中断停用(禁止中断)。EA1 时,各中断的产生由个别的允许位决定。ET1(IE.3) :允许计时器1 中断(ET11 允许,ET10 禁止)。EX1(IE.2) :允许外部中断INT1 的中断(EX11 允许,EX10 禁止)。ET0(IE.1) :允许计时器0 中断(ET01 允许,ET00 禁止)。EX0(IE.0) :允许外部中断INT0 的中断(EX01 允许,EX00 禁止)。u TMOD 定时计数器工作方式控制寄存器,其格式如表4-3所示:表4-3 定时计数器工作方式控制寄存器格式符号GATEC/TM1M0GATEC/TM1M0类别定时计数器1定时计数器0GATE :当GATE1 时,INT0 或INT1 引脚且为高电平,同时TCON 中的TR0或TR1 控制位如为1 时,定时计数器0 或1 才会工作。 若GATE0,同时只要TCON 中的TR0 或TR1 控制位如为1 时,定时计数器0 或1 即可工作。CT :选择定时或计数器模式。当CT1 为计数器,由外部引脚T0 或T1 输计数脉冲。CT0 时为计时器,由内部系统时钟提供计时工作脉冲。M1 :方式选择位1。M0 :方式选择位0。M1、M2 的操作方式选择定义如表4-4所示:表4-4 定时计数器工作方式选择M1M0操作方式功能说明00方式013位定时/计数器01方式116位定时/计数器10方式2自动再装入8位定时/计数器11方式3定时/计数器1无效将定时计数器0分成两个8位计数器u TCON 定时计数器工作方式控制寄存器,其格式如表4-5所示:表4-5 定时计数器工作方式控制寄存器格式位地址8FH8EH8DH8CH8BH8AH89H88H符号TF1TR1TF0TR0IE1IT1IE0IT0TF1 :计时器 1 溢出标志,当计时溢出时,由硬件设定为1,在执行相对的中断服务程序后则自动清0。TR1 :计时器1 启动控制位,可以由软件来设定或清除。TR1 时启动计时器工作,TRl=0 时关闭。TF0 :计时器0 溢出标志,当计时溢出时,由硬件设定为1,在执行相对的中断服务程序后则自动清0。TR0 :计时器0 启动控制位,可以由软件来设定或清除。TR0=1 时,启动计时器工作,TR0=时关闭。IE1 :外部中断1 工作标志,当外部中断被检查出来时,硬件自动设定此位,在执行中断服务程序后,则清0。IT1 :外部中断1 工作形式选择,IT1=1 时,由下降缘产生外部中断,IT1=0 时,则为低电位产生中断。IE0 :外部中断0 工作标志,当外部中断被检查出来时,硬件自动设定此位,在执行中断服务程序后,则清0。IT0 :外部中断0 工作形式选择,IT1=1 时,由下降缘产生外部中断,IT1=0 时,则为低电位产生中断。3. 定时器初值计算定时器初值的计算公式:TcM(TT计数)其中Tc 为初值,M 为计数器模值,T 定时器定时时间,T为fosc/12。定时器各工作方式的定时时间如表4-5所示:表4-5 定时器各工作方式的定时时间工作方式M模值T计数最大定时时间方式0fosc/12fosc/12方式1 fosc/12方式2 fosc/12方式3 fosc/124.2.3 AT89C51的定时器/计数器u 定时功能 选择定时功能时,计数输入信号是内部的时钟脉冲,每个机器周期使寄存器的值加1,所以,计数频率是振荡频率的1/12。例如,采用12MHz的晶振,则计数脉冲频率为1MHz.,此时C/=0。u 计数功能 选择计数功能时,计数脉冲来自外部输入引脚,为P3.4,为P3.5。当输入信号由10的跳变时,计数寄存器(TH0、TL0或TH1、TL1)的值增1.此时C/=1。定时器/计数器方式1逻辑结构如图4-4所示:图4-4定时器/计数器方式1逻辑结构4.2.4 AT89C51外围电路设计晶振电路:晶振输入选择12MHZ的立式晶振,谐振电容C1、C2选择30PF,电路如图4-5所示:复位电路设计:复位电路采用上电自动复位,基本功能就是在系统上电时提供复位信号,高电平复位,直至系统稳定后,撤销复位信号。电路如图4-6所示:图4-5晶振电路 图4-6 复位电路4.3 地址锁存器74LS373介绍74LS373是一种8D锁存器,具有三态驱动输出,其逻辑电路及引脚图如图4-7所示,从图可见,该锁存器由8个D门组成,有8个输入端1D8D,8个输出端1Q8Q,2个控制端G和OE,使能端G有效时,将D端数据打入锁存器中D门,当输出允许端OE有效时,将锁存器中锁存的数据送到输出端Q。图4-8 所示74LS373真值表。图4-7 74LS373内部结构及其引脚图 使能G输出允许OE输入D输出Q H HLXLLLHLHXXLHQ0Z 图4-8 74LS373真值表当使能端G为高电平时,同时输出允许端OE为低电平,则输出Q=输入D;当使能端G为低电平,而输出允许端OE也为低电平时,则输出Q=QO(原状态,即使能端G由高电平变为低电平前,输出端Q的状态,这就是“锁存”的意义)。当输出允许端OE为高电平时,不论使能端G为何值,输出端Q总为高阻态。74LS373锁存器主要用于锁存地址信息、数据信息以及DMA页面地址信息等4 .4 八路反相缓冲器74LS240应用由于本设计显示电路采用的是5位共阳极数码管显示,段码是低电平有效,这里选用74LS240对段码进行取反。八路反相缓冲器,G1和G2接低低电平,反相有效。其内部结构和引脚如图4-9所示。图4-10是74LS240的真值表。 图4-9 74LS240内部结构和引脚图 图4-10 74LS240真值表4.5 显示电路4.5.1显示电路设计 该显示电路共显示5位数字,采用动态显示方式.将所有位段选线并联在一起由P2口控制,而共阳极的公共端分别由P1口的P1.0P1.4线控制,实现各位的分时选通.由于5位段选线都是由P2口控制的,为使每位显示不同的数字,故采用只使某一位显示数字的方法.在某瞬间,段选控制P2口输出相应数字段选码,而位选则控制P1口在该显示位送入选通电平(LED为共阳极),以保证该位显示相应数字,如此轮流,使每位分时显示该位相应的数字.段选码、位选码每送入一次后延时1ms,利用视觉暂留的原理,造成连续显示的效果。电路如图4-11所示: 图4-11 显示电路原理图4.5.2单片机驱动数码管原理单片机驱动LED数码管有很多方法,按显示方式分,有静态显示和动态(扫描)显示,按译码方式可分硬件译码和软件译码之分。静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不再管,直到下一次显示数据需要更新时再传送一次新数据,显示数据稳定,占用很少的CPU时间。动态显示需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多。这两种显示方式各有利弊;静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多;动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。 硬件译码就是显示的段码完全由硬件完成,CPU只要送出标准的BCD码即可,硬件接线有一定标准。软件译码是用软件来完成硬件的功能,编程实现。硬件简单,接线灵活,显示段码完全由软件来处理,是目前常用的显示驱动方式。4.6 硬件总电路图硬件总电路图见附录2,电路包括单片机的外围电路,计数锁存电路,位选电路以及五位LED显示部分。5 软件设计该频率计的软件设计主要包括主程序、中断服务程序、显示子程序、延时子程序等。主程序主要完成初始化、调用各功能子程序的功能,其流程图如图5-1所示.显示程序用于显示所测频率,其流程图如图5-3所示。中断服务程序用以完成脉冲数的累加(框图略)。5.1主程序设计主程序设计完成对单片机初始化,调用各功能子程序。包括置定时器初值,设定时器工作方式,其流程图如图5-1所示: 设置定时器工作方式置定时器初值开中断向显示缓冲区放数调显示子程序图5-1主程序流程图 MAIN: MOV SP,#60H ;设置堆栈 MOV TMOD,#51H ;T1计数状态、方式1,T0定时状态、方式1 MOV TL1,#00H ;T1计数初值设定 MOV TH1,#00H MOV TL0,#0B0H ;T0定时50ms初值设定 MOV TH0,#3CH ;fosc=12MHZ(最小定时时间为1s) MOV R3,#20 ;软件计数器 ORL TCON,#01010000B ;同时启动定时器T0和T1 SETB EA SETB ET1 LDIR: LCALL DIDPLAY ;调显示子程序,并等待中断 SJMP LDIR ;循环显示 T0INT: DJNZ R3,EXIT ;1s时间未到则中断返回,继续定时 ANL TCON,#10001111B ;1s定时到,同时关闭定时器1和计数器0 MOV R0,TL1 ;将计数值的低八位存入R0 MOV R1,TH1 ;将计数值的高八位存入R1 MOV TL1,#0B0H ;重装初值 MOV TH1,#3CH MOV R3,#20 ;重新设置软件计数器 ORL TCON,#01010000B ;同时启动定时器T0和T1 AJMP LOOP EXIT: MOV TH1,#0B0H ;1s未到,重设T1的50ms定时初值 MOV TL1,#3CH LOOP: RETI END5.2 中断服务子程序设计共有一个中断服务子程序为定时器T0中断服务子程序,功能为产生1S的定时时间,置定时时间到标志。程序见附录1。主程序中断子程序返回断点图5-2 中断过程示意图5.3 显示子程序设计本设计显示电路采用五位共阳极数码管显示,设计为动态显示电路,采用软件译码的方式,程序设计包括显示子程序、分离显示数字子程序、16位除法子程序、转换显示字段码子程序、动态显示部份。其流程图如图5-3所示:程序见附录1。取显示数据送百位段码指向显示缓冲区首址查表取字型码送万位位码延时2ms返回判断千位是否为0判断万位是否为0判断百位是否为0判断十位是否为0送万位段码送十位段码送个位段码送千位段码送百位位码送十位位码送个位位码送千位位码关闭YNNNNYYY 图5-3 显示子程序流程图6 运行与调试完成了频率计的硬件、软件设计和硬件组装后,便可进入系统调试阶段。调试的目的是要查出硬件设计与软件设计中存在的错误,以便修改设计,保证设计最终正常运行,调试包括硬件调试和软件调试及软硬件联调。6.1硬件调试 硬件调试包括复位电路调试、晶振电路调试、显示电路调试。调试过程记录如下:u 晶振电路调试单片机晶振电路采用内部时钟方式,谐振电容20PF,晶振用的是12.000M的立式晶振,用示波器观察单片机18、19脚没有产生12MHZ的正弦波,如图6-1所示。用万用表检测单片机引脚电平,单片机供电正常,但是晶振不能起振,将谐振电容更换为30PF后,晶振开始工作,引脚输出电平为2.4V。此时单片机ALE 引脚的输出频率是系统工作频率的 1/6,即为2MHZ,如图6-2所示,单片机开始工作。 图6-1 晶振工作波形 图6-2 ALE输出信号u 显示电路调试由于显示部分是按照动态显示、软件译码的方式设计的。因而很难划分硬件和软件,在调试中即使电路安装正确没有一定的指令去指挥它工作,也是无法发现硬件的故障。因此要使用一些简单的调试程序来确定硬件的组装是否正确、功能是否完整。显示部分调试为了使调试顺利进行,首先将89C51与LED显示分离,这样就可以用静态方法先测试LED显示,分别用规定的电平加至控制数码管段和位显示的引脚,看数码管显示是否与理论上一致。再检测电路工作是否正常。对89C51进行编程调试时,分为两个步骤:第一,对其进行初始化后,分别向P1、P2、P3三个口送入0FFH,这时可以利用万用表测试各口的位电压为38 V左右,若送入00H,这时各口的位电压应为003 V;第二,将89C51与LED结合起来,通过编制程序(采用五位LED分别显示“12345”程序)进行调试。数码管不显示,检查单片机的P0口,发现输出的数据和要显示的数据一致,可能是驱动电压的问题,检查单片机P0口输出电平只有1V左右,驱动能力太弱,解决办法加上拉电阻或将输出段码换到P2口,P2口的输出电平接近5V,我选择了后者,互换后显示正常。6.2 软件程序调试6.2.1 MedWin仿真软件简介 MedWin是由一家专门生产80C51系列单片机仿真器的公司为其80C51系列单片机仿真配备的仿真软件,它为80C51单片机提供了集成环境,较适合初学者使用。6.2.2 汇编语言程序的仿真调试汇编语言源程序经过汇编后只是解决了程序的语法问题,即程序从语法上已经是一个合法的程序,但是检验程序正确与否的唯一标准应是将其加载到硬件系统中并能按要求正常运行。问题是我们我们不可能编好一段程序就将其写入到单片机中并使之运行,待发现有问题再回到起点,重新编辑和汇编,弄不好要毁掉芯片,既麻烦又增加了开发成本。调试过程如下:将编辑好的程序命名为5LED.ASM,汇编程序并装入。程序中出现符号未定义,有多余字符、指令书写错误等语法方面的错误,编辑、修改产生代码并装入后,结果如图6-3所示:图6-3 汇编并装入程序仿真调试:“查看”“寄存器”以及“特殊功能寄存器”“调试”“单步”按钮。结果:“特殊功能寄存器”中P2的内容为09的七段码。各个寄存器的值与程序中设定的值一致。然后将正确的程序生成目标文件写入单片机进行调试。6.3系统联调正确的程序写入后就应该进行软、硬件联合调试。联机仿真必须借助于数字实验箱、信号发生器、示波器、万用表等工具。1.信号线测试 信号线是联络89C51和外部器件的纽带,如果信号线连结错误或时序不对,那么都会造成对外围电
收藏