《单片机课程设计报告简易数字频率计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计报告简易数字频率计.doc(26页珍藏版)》请在三一办公上搜索。
1、目 录第一章 引言21.1 课题背景:212本课题研究意义3第二章 555电路42.1电路功能介绍42.2 555时基电路的主要参数62.3 555等效电路72.4 555时基电路的应用8第三章 单片机定时器93.1定时器的编程93.1.中断编程103.1. 2中断应用实例103.2定时计数器的原理113.3 TMOD定时器|计数器方式寄存器123.4 TCON定时器|计数器控制寄存器13第四章 硬件电路设计144.1多谐振荡器设计144.2单稳态触发器144.3 LED数码管显示144.4复位电路和晶振电路14第五章 软件设计155.1 信号的输出155.2定时计数器155.3 LED数码管
2、18第六章 结论19致 谢21参考文献:22摘 要在数字电路中,数字频率计属于时序电路,它主要由具有记忆功能的触发器构成。在计算机及各种数字仪表中,都得到了广泛的应用。在CMOS电路系列产品中,数字频率计是用量最大、品种很多的产品,是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。本课题主要选择以集成芯片作为核心器件,设计了一个简易数字频率计,以触发器和计数器为核心,由信号输入、隔直,触发、计数、数据处理和数据显示等功能模块组成。利用555多谐振荡器产生的输出作为输入(频率低于6KHZ),用单片
3、机计算出频率,并在LED上显示。用定时器0作为定时器,定时1S;用定时器1作为计数器,对输入的脉冲进行计数。利用ZLG7290键盘显示芯片在LED上显示5位的频率数值。放大整型电路:对被测信号进行预处理;闸门电路:由NE556构成一个秒信号,攫取单位时间内进入计数器的脉冲个数;时基信号:产生一个秒信号;计数器译码电路:计数译码集成在一块芯片上,计单位时间内脉冲个数,进制计数器计数结果译成BCD码;显示:把BCD码译码在数码管显示出来。设计中采用了模块化设计方法,采用适当的放大和整形,提高了测量频率的范围。关键词:555电路、定时器,计数器,触发器。第一章 引言1.1 课题背景:(1)单片机发展
4、前景中国使用单片机的历史只有短短的30年,在初始的短短五年时间里 发展极为迅速。1986 年在上海召开了全国首届单片机开 发与应用交流会,很多地区还成立了单片微型计算机应用协会,那是全国形成的第一次高潮。单片机,亦称单片微电脑 或单片微型计算机。它是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口 (I/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。正因为如此他才改变了我的生活。(2)定时器的发展历史1876年,英国外科医生索加取得一项定时装置的专利,用来控制煤气街灯的开关。它利用机械钟带动开关来控制煤气阀们。起初每周上一次发条,1918
5、年使用电钟计时后,就不用上发条了。 定时器确实是一项了不起的发明,使相当多需要人控制时间的工作变得简单了许多。人们甚至将定时器用在了军事方面,制成了定时炸弹,定时雷管。现在的不少家用电器都安装了定时器来控制开关或工作时间。 定时器是一个多任务定时提醒软件,它全面支持WINDOWS 9X/ME/NT/2K/XP按时执行程序、播放声音、关机、待机、拨号、断开连接、关闭显示器等等操作。具有多种设定任务的方法。支持SKIN,可以随意更换界面。12本课题研究意义随着微电子技术和计算机技术的飞速发展, 各种电子测量仪器在原理、功能、精度及自动化水平等方面都发生了巨大的变化, 特别是DSP技术诞生以后,电子
6、测量技术更是迈进了一个全新的时代。近年来,DSP逐渐成为各种电子器件的基础器件,逐渐成为21世纪最具发展潜力的朝阳行业,甚至被誉为信息化数字化时代革命旗手。在电子测量技术中,频率是最基本的参数之一,它与许多电参量和非电量的测量都有着十分密切的关系。 数字频率计广泛采用了高速集成电路和大规模集成电路,使得仪器的体积更小、耗电更少、精度和可靠性更高。而传统的频率计测量误差较大,范围也较窄,因此逐渐被新型的数字频率计所代替。基于DSP的等精度频率计以其测量准确、精度高、方便、价格便宜等优势将得到广泛的应用。 我们设计的简易数字频率计在未采用任何门控器件控制的情况下,在很宽的范围内实现了等精度频率测量
7、,0.5Hz10MHz的范围内测量方波的最大相对误差小于2e-6,测量正弦波的最大相对误差小于3.5e-5;结果通过RS232通讯显示在计算机上,可以很方便地监测数据。第二章 555电路2.1电路功能介绍 555时基电路是一种将模拟功能与逻辑功能巧妙地结合在同一硅片上的组合集成电路。该电路可以在最基本的典型应用方式的基础上,根据实际需要,经过参数配置和电路的重新组合,与外接少量的阻容元件就能构成不同的电路,因而555电路在波形的产生与变换、测量与控制、家用电器、电子玩具等许多领域中都得到了广泛应用。(一)555时基电路的电路结构和逻辑功能 1.电路结构及逻辑功能图1 555时基电路的电路结构
8、555时基电路的引脚图 图1为555时基电路的电路结构和8脚双列直插式的引脚图,由图可知555电路由电阻分压器、电压比较器、基本RS触发器、放电管和输出缓冲器5个部分组成。它的各个引脚功能如下:1脚:GND(或Vss)外接电源负端VSS或接地,一般情况下接地。 2脚:TR低触发端。3脚:OUT(或Vo)输出端。4脚:R是直接清零端。当R端接低电平,则时基电路不工作,此时不论TR、TH处于何电平,时基电路输出为“0”,该端不用时应接高电平。5脚:CO(或VC)为控制电压端。若此端外接电压,则可改变内部两个比较器的基准电压,当该端不用时,应将该端串入一只0.01F电容接地,以防引入干扰。6脚:TH
9、高触发端。 7脚:D放电端。该端与放电管集电极相连,用做定时器时电容的放电。电阻分压器由三个5k的等值电阻串联而成。电阻分压器为比较器C1、C2提供参考电压,比较器C1的参考电压为2/3Vcc,加在同相输入端,比较器C2的参考电压为1/3Vcc,加在反相输入端。比较器由两个结构相同的集成运放C1、C2组成。8脚:VCC(或VDD)外接电源VCC,双极型时基电路VCC的范围是4.516V,CMOS型时基电路VCC的范围为318V。一般用5V。在1脚接地,5脚未外接电压,两个比较器C1、C2基准电压分别为2/3Vcc,1/3Vcc的情况下,555时基电路的功能表如图2所示。图2 555时基电路的功
10、能表 2.2 555时基电路的主要参数 555时基电路的主要参数有电源电压、静态电流、定时精度、阈值电压、阈值电流、触发电压、触发电流、复位电压、复位电流、放电电流、驱动电流及最高工作频率。以下图3是555电路与7555电路主要参数的对比。图3 555电路与7555电路主要参数的对比2.3 555等效电路 555时基电路内部既有模拟电路,又有数字电路,读图和应用十分不便,为便于一目了然地理解555的功能,可以将555电路的数字与模拟功能合在一起考虑,进行化简。 图4(b)是图4(a)中555电路的内电路方框图简化成为带一个放电开关的特殊的RS触发器,其逻辑功能见图5所示。 图4 555电路简化
11、电路图5 基本RS触发器和化简后的特殊RS触发器 化简后的特殊RS触发器输出电压Vo与输入电压VTH及VTR的关系见图6所示。图6 输出电压V0与输入电压VN及VTN的关系 2.4 555时基电路的应用由555时基电路构成常见的最基本的典型应用电路有:单稳态触发电路、双稳态触发电路、无稳态电路,而用这3种方式中的1种或多种组合起来可以组成各种实用的电子电路,如定时器、分频器、电路检测电路、自动控制电路等。1.模拟声响发生器 图7是由两个多谐振荡器构成的模拟声响发生器。由于低频振荡器的输出端3接到高频振荡器的复位端4,故当振荡器的输出电压uo1为高电平时,振荡器就振荡;当uo1为低电平时,振荡器
12、停止振荡,从而使扬声器便发出间歇声响。图7 模拟发生器 2.可调速的电动玩具车电路 通过调节555振荡器的充电时间常数,来调节玩具电动车电动机的转速。555和R1、R2、R3、RP及C1等组成一个无稳态多谐振荡器。当C1通过R1、RP、R2充电至Uc2/3VDD(4V)时,555翻转复位,3脚转呈低电平,VT截止,电动机M失电,电动车依靠惯性滑行。此时,C1上的电荷通过R3、D1向芯片内的放电管泄放,即放电回路与充电回路由于D1的接入是分开的,且由于RP+R2的阻值远大于R3,放电主要是在R3上进行。多谐振荡器的振荡频率为 fC=1.44/(R1+RP+R2+R3)C1第三章 单片机定时器3.
13、1定时器的编程定时器编程主要是对定时器进行初始化以设置定时器工作模式,确定计数初值等,使用C语言编程和使用汇编编程方法非常类似。用定时器实现P1所接LED每60ms亮或灭一次,设系统晶振为12M。要使用单片机的定时器,首先要设置定时器的工作方式,然后给定时器赋初值,即进行定时器的初始化。这里选择定时器0,工作于定时方式,工作方式 1,即16位定时/计数的工作方式,不使用门控位。由此可以确定定时器的工作方式字TMOD应为00000001B,即0x01。定时初值应为 65536600005536,由于不能直接给T0赋值,必须将5536转化为十六进制即为0x15a0,这样可以写出初始化程序:TMOD
14、0x01;TH00x1TL00xa0;初始化定时器后,要定时器工作,必须将TR0置1,程序中用“TR01;”来实现。由定时时间到后,TF0被置为1,因此,只需要查询TF0是否等于1即可得知定时时间是否到达,程序中用“if(TF0)”来判断,如果 TF00,则条件不满足,大括号中的程序行不会被执行到,当定时时间到TF01后,条件满足,即执行大括号中的程序行,首先将TF0清零,然后重置定时初值,最后是执行规定动作取反P1.0的状态。3.1.中断编程C51编译器支持在C源程序中直接开发中断过程,使用该扩展属性的函数定义语法如下:返回值函数名interrupt n其中n对应中断源的编号,其值从0开始,
15、以80C51单片机为例,编号从04,分别对应外中断0、定时器0中断、外中断1、定时器1中断和串行口中断。3.1.中断应用实例用中断法实现定时器控制P1.0所接LED以60ms闪烁。这里仍选用定时器T0,工作于方式1,无门控。要开启中断,必须将EA(总中断允许)和ET0(定时器T0中断允许)置1,程序中用“EA1;”和“ET01;”来实现。在做完这些工作以后,就用 for(;);让主程序进入无限循环中,所有工作均由中断程序实现。由于定时器0的中断编号为1,所以中断程序中这样写:void timer0() interrupt 1 80C51单片机内部设有两个16位的可编程定时器/计数器。可编程的意
16、思是指其功能(如工作 方式、定时时间、量程、启动方式等)均可由指令来确定和改变。在定时器/计数器中除了有两个16位的计数器之外,还有两个特殊功能寄存器(控制寄存器和方式寄存器)。 图8 80C51单片机定时器、计数器结构原理图从图8定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T0由TH0和TL0构成;T1由TH1和TL1 构成。其访问地址依次为8AH-8DH。每个寄存器均可单独访问。这些寄存器是用于存放定时或计数初值的。此外,其内部还有一个8位的定时器方式寄存器 TMOD和一个8位的定时控制寄存器TCON。这些寄存器之间是通过内部总线和控制逻辑电
17、路连接起来的。TMOD主要是用于选定定时器的工作方式; TCON主要是用于控制定时器的启动停止,此外TCON还可以保存T0、T1的溢出和中断标志。当定时器工作在计数方式时,外部事件通过引脚T0 (P3.4)和T1(P3.5)输入。3.2定时计数器的原理当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。如果晶振为12MHz,则计数周期为: T=1/(12106)Hz1/12=1s这是最短的定时周期。若
18、要延长定时时间,则需要改变定时器的初值,并要适当选择定时器的长度(如8位、13位、16位等)。当定时器/计数器为计数工作方式时,通过引脚T0和T1对外部信号计数,外部脉冲的下降沿将触发计数。计数器在每个机器周期的S5P2期间采样引脚输入电 平。若一个机器周期采样值为1,下一个机器周期采样值为0,则计数器加1。此后的机器周期S3P1期间,新的计数值装入计数器。所以检测一个由1至0的跳 变需要两个机器周期,故外部事年的最高计数频率为振荡频率的1/24。例如,如果选用12MHz晶振,则最高计数频率为0.5MHz。虽然对外部输入信号 的占空比无特殊要求,但为了确保某给定电平在变化前至少被采样一次,外部
19、计数脉冲的高电平与低电平保持时间均需在一个机器周期以上。当CPU用软件给定时器设置了某种工作方式之后,定时器就会按设定的工作方式独立运行,不再占用CPU的操作时间,除非定时器计满溢出,才可能中断CPU 当前操作。CPU也可以重新设置定时器工作方式,以改变定时器的操作。由此可见,定时器是单片机中效率高而且工作灵活的部件。我们已知定时器/计数器是一种可编程部件,所以在定时器/计数器开始工作之前,CPU必须将一些命令(称为控制字)写入定时/计数器。将控制字写入定时/计数器的过程叫定时器/计数器初始化。在初始化过程中,要将工作方式控制字写入方式寄存器,工作状态字(或相关位)写入控制寄存器,赋定时/计
20、数初值。下面我们就提出的控制字的格式及各位的主要功能与大家详细的讲解。控制寄存器 定时器计数器T0和T1有2个控制寄存器-TMOD和TCON,它们分别用来设置各个定时器计数器的工作方式,选择定时或计数功能,控制启动运行,以及作为运行状态的标志等。其中,TCON寄存器中另有4位用于中断系统3.3 TMOD定时器|计数器方式寄存器定时器方式控制寄存器TMOD在特殊功能寄存器中,字节地址为89H,无位地址。TMOD的格式如下图所示。 由图可见,TMOD的高4位用于T1,低4使用于T0,4种符号的含义如下:GATE:门控制位。GATE和软件控制位TR、外部引脚信号INT的状态,共同控制定时器计数器的打
21、开或关闭。 CT:定时器计数器选择位。C/T1,为计数器方式;CT0,为定时器方式。M1M0:工作方式选择位,定时器计数器的4种工作方式由M1M0设定。M1M0工作方式功能描述00工作方式013位计数器01工作方式116位计数器10工作方式2自动再装入8位计数器11工作方式3定时器0: 分成两个8位计数器;定时器1:停止计数定时器/计数器方式控制寄存器TMOD不能进行位寻址,只能用字节传送指令设置定时器工作方式,低半字节定义为定时器0,高半字节定义为定时器1。复位时,TMOD所有位均为0。3.4 TCON定时器|计数器控制寄存器TCON在特殊功能寄存器中,字节地址为88H,位地址(由低位到高位
22、)为88H一8FH,由于有位地址,十分便于进行位操作。TCON的作用是控制定时器的启、停,标志定时器溢出和中断情况。TCON的格式如下图所示。其中,TFl,TRl,TF0和TR0位用于定时器计数器;IEl,ITl,IE0和IT0位用于中断系统。 各位定义如下: TF1:定时器1溢出标志位。当字时器1计满溢出时,由硬件使TF1置“1”,并且申请中断。进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件清“0”。 TR1:定时器1运行控制位。由软件清“0”关闭定时器1。当GATE=1,且INT1为高电平时,TR1置“1”启动定时器1;当GATE=0,TR1置“1”启动定时器1。TF0:定时器
23、0溢出标志。其功能及操作情况同TF1。TR0:定时器0运行控制位。其功能及操作情况同TR1。IE1:外部中断1请求标志。IT1:外部中断1触发方式选择位。IE0:外部中断0请求标志。IT0:外部中断0触发方式选择位。 TCON中低4位与中断有关。由于TCON是可以位寻址的,因而如果只清溢出或启动定时器工作,可以用位操作命令。 第四章 硬件电路设计系统的硬件设计分为三个部分:多谐振荡器,单稳态触发器,以及LED数码管的设计。下面分别进行介绍。图9 电源电路4.1多谐振荡器设计多谐振荡器由门电路和阻容元件构成,它没有稳定状态,只有两个暂稳态,通过电容的放电和充电,是两个暂稳态相互交替,从而产生激震
24、荡,输出周期性的矩形脉由于矩形脉冲含有丰富的谐波分量,因此,常将矩形脉冲产生电路称做多谐振荡器。4.1.1电路组成 图10 多谐振荡器的电路图用555定时器构成的多谐振荡器电路如图10所示:图中电容C、电阻R1和R2作为振荡器的定时元件,决定着输出矩形波正、负脉冲的宽度。定时器的触发输入端(2脚)和阀值输入端(6脚)与电容相连;集电极开路输出端(7脚)接R1、R2相连处,用以控制电容C的充、放电;外界控制输入端(5脚)通过0.01uF电容接地。412.工作原理: 图11 多谐振荡器的工作波形多谐振荡器的工作波形如图11所示:电路接通电源的瞬间,由于电容C来不及充电,Vc=0v,所以555定时器
25、状态为1,输出Vo为高电平。同时,集电极输出端(7脚)对地断开,电源Vcc对电容C充电,电路进入暂稳态I,此后,电路周而复始地产生周期性的输出脉冲。多谐振荡器两个暂稳态的维持时间取决于RC充、放电回路的参数。暂稳态的维持时间,即输出Vo的正向脉冲宽度T10.7(R1+R2)C;暂稳态的维持时间,即输出Vo的负向脉冲宽度T20.7R2C。因此,振荡周期T=T1+T2=0.7(R1+2R2)C,振荡频率f=1/T。正向脉冲宽度T1与振荡周期T之比称矩形波的占空比,由上述条件可得D=(R1+R2)/(R1+2R2),若使R2R1,则D1/2,即输出信号的正负向脉冲宽度相等的矩形波(方波)。4.2用5
26、55定时器构成的单稳态触发器触发器有两个基本特征:1、它有两个稳定状态,可分别用来表示二进制数码0和1;2、在输入信号作用下,触发器的两个稳定状态可相互转换,输入信号消失后,已转换的稳定状态可长期保持下来,这就使得触发器能够记忆二进制信息,常用作二进制存储单元。因此,它是一个具有记忆功能的基本逻辑电路,有着广泛的应用。421.电路组成 图12 单稳态触发器电路 图13 由555定时器构成的单稳态触发器如图13所示,其中R、C为单稳态触发器的定时元件,它们的连接点Vc与定时器的阀值输入端(6脚)及输出端Vo(7脚)相连。单稳态触发器输出脉冲宽度tpo=1.1RC。Ri、Ci构成输入回路的微分环节
27、,用以使输入信号Vi的负脉冲宽度tpi限制在允许的范围内,一般tpi5RiCi,通过微分环节,可使Vi的尖脉冲宽度小于单稳态触发器的输出脉冲宽度tpo。若输入信号的负脉冲宽度tpi本来就小于tpo,则微分环节可省略。定时器复位输入端(4脚)接高电平,控制输入端Vm通过0.01uF接地,定时器输出端Vo(3脚)作为单稳态触发器的单稳信号输出端。图14 复位电路422.工作原理当输入Vi保持高电平时,Ci相当于断开。输入Vi由于Ri的存在而为高电平Vcc。此时,若定时器原始状态为0,则集电极输出(7脚)导通接地,使电容C放电、Vc=0,即输入6脚的信号低于2/3Vcc,此时定时器维持0不变。若定时
28、器原始状态为1,则集电极输出(7脚)对地断开,Vcc经R向C充电,使Vc电位升高,待Vc值高于2/3Vcc时,定时器翻转为0态。单稳态触发器的工作过程分为下面三个阶段来分析,图12为其工作波形图: 图15 单稳态触发器工作波形图触发翻转阶段:输入负脉冲Vi到来时,下降沿经RiCi微分环节在Vi端产生下跳负向尖脉冲,其值低于负向阀值(1/3Vcc)。暂态维持阶段:由于集电极开路输出端(7脚)对地断开,Vcc通过R向C充电,Vc按指数规律上升并趋向于Vcc。返回恢复阶段:当C充电使Vc值高于正向阀值(2/3Vcc)时,由于Vi端负向尖脉冲已消失 ,Vi值高于负向阀值(1/3Vcc),定时器翻转为0
29、,输出低电平,集电极输出端(7脚)对地导通,暂态阶段结束。4.3 LED数码管显示常见的七段数字显示器有半导体数码显示器(LED)和液晶显示器(LCD)等。这里主要介绍半导体数码显示器。发光二极管数码显示器的内部接法有两种:一种是共阳接法,一种是共阴接法。七段译码器输出低电平时,需选用共阳接法的数码显示器;译码器输出高电平时,则需选用共阴接法的数码显示器。图16 LED数码管第五章 软件设计5.1 信号的输出利用555多谐震荡器产生的输出作为输入(频率低于6KHZ),用单片机算出频率,并在LED上显示。5.2定时计数器晶振产生一个振荡频率稳定的脉冲,通过分频整形、门控双稳后,产生所需宽度的基准
30、时间T的脉冲,又称闸门时间脉冲。注意:分频器一般采用计数器完成,计数器的模即为分频比。计数脉冲形成电路:将被测信号变换为可计数的窄脉冲,其输出受闸门脉冲的控制。计数显示电路:对被测信号进行计数,显示被测信号的频率。计数器一般采用多位10 进制计数器;控制逻辑电路控制计数的工作程序:准备、计数、显示、复位和准备下一次测量。其中十进制计数器要求具有计数使能端CNTEN、复位端CLR、进位输。利用555多谐振荡器产生的输出作为输入,用单片机算出频率,并在LED上显示。以下是所需程序:#include“reg52.h”#include“zlg7290.h” /Zlg7290库unsigned char
31、 scount; /I*IC库void timer0_int()interrupt 1 TR0=0; TH0=0; /关闭定时器 TH0=0x4c; /重装定时器值 TL0=0x19; TF0=0; /清除溢出标志 scount-; if(scount0) /到1s了吗? TR0=1; /没到,开定时器 else TR=0; /到了,停止T1的计数 Main() unsigned char a5; unsigned char I,resh,res1; unsigned long int freq; TMOD=0Xd1; TH0=0x4C; /定时50ms TL0=ox19; TH1=0; /计
32、数值清0 TL1=0; scount=20; /定时1s ET0=1; /开定时器0中断 EA=1; /开总中断 TR0=1; /启动定时器和计数值 TR1=1; For (i=0;i5;+i) ai=0;ZLG7290_Sendbuf(a,5); /在LED上显示5位0 While (1) if(!scount) /1s时间到 resh=TH1; /取出计数值 res1=TL1; TH1=0; /计数值清零 TL1=0; TH0=0x4C; /重装定时器0 TL0=0x19; scount=20; /定时1sTR0=1; /启动定时器和计数TR1=1;freq=resh*256+resl;
33、/计算机频率值a0=freq%10; /将各位分离显示a1=(freq/10)%10;a2=(freq/100)%10;a3=(freq/1000)%10;a4=freq/10000; ZLG7290_Sendbuf(a,5); /送ZLG7290显示5.3 LED数码管单片机中通常使用的是有7个发光二极管,即七段LED按日字排列成的数码管。七段LED的阳极连在一起称为共阳极接法,而阴极连在一起称为共阴极接法。每段的笔画分别称为A,B,C,D,E,F,G,另有一段构成小数点。在动态显示方式中,6个数码管的段选信号是分时轮流输出,要得到稳定的显示效果,必须不断重复执行显示程序。设8155的CS接
34、8051的P2.7,IO/M接8051的P2.0。显示程序如下:MOD: PUSH ACC ;保护现场 PUSH DPH PUSH DPL SETB RS0 CLR P2.7;选通8155 SETB P2.0 ;选8155的I/O口 MOV R1, #0F8H ;设定8155的控制口 MOV A, #4DH ;设定8155的A口,C口为输出 MOV X R1, A DIR: MOV R0, #DIS0 ;显示缓冲区首地址送R0 MOV R6, #20H ;选最左边的LED MOV R7, #00H ;设定显示时间的计数 MOV DPTR, #TAB ;字形段码表首地址送DPTR DIR1 :
35、MOV A, #00H ;关显示 MOV R1, #0FBH ;指向8155的A口 MOVX R1, A ;取要8155的C口 MOV A, R0 ;取要显示的数 MOVC A, A+DPTR ;取段码 MOV R1, #0F9H ;指向8155的A口 MOVX R1, A ;输出端码 MOV A, R6 ;取位码 MOV R1, #0FBH ;指向8155的A口 MOVX R1, A ;输出位选码HERE: DJNZ R7, HERE ;延时 INC R0 ;指向下一个显示单元 CLR C MOV A, R6 RRC A MOV R6, A ;位选码右移一位 JNZ DIR1 SETB P2
36、, 7 ;未显示完6个LED,继续循环 CLR RS0 ;恢复原态 POP DPL POP DPH POP ACC RET第六章 结论 555定时器是一种多用途的集成电路,只需外接少量阻容元件便可构成施密特触发器、单稳态触发器和多谐振荡器等。此外,它还可组成其它各种实用电路。由于555定时器实用方便、灵活,有较强的负载能力和较高的触发灵敏度。因此,它在自动送控制、仪器仪表、家用电器等许多领域都用着广泛的应用、数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,而且会产生比较大的延时,造成测量误差、可靠性差。传统的数字频率计一般是由分离元件搭接而成,随着单片机的大规模的应用,单片
37、机在频率测量方面也越来越多的被使用。在本课题中使用的AT89S51 这种低功耗,高性能CMOS 8位单片机系列的单片机的出现,具有更好的稳定性,更快和更准确的运算精度,推动了工业生产,影响着人们的工作和学习。而本次设计就是要通过以AT89S51单片机为控制核心,实现对信号频率进行准确计数的设计。单片机是将微型计算机的基本功能部件全部集成在一块半导体电路芯片上,具有功能强、体积小、价格低、稳定可靠、研制周期短等优点,具有广阔的应用前景。致 谢在这里我首先要感谢我的指导老师颜廷秦老师。本论文是在颜老师的指导和引领下完成的,整个论文的编写都与老师的耐心指导和细心解析分不开的。颜老师严谨治学、认真负责
38、、不怕困难的科研态度对我影响至深,这些影响将使我终身受益。我在此对颜老师表示最真挚的谢意!再次对所有在求学和生活过程中给了我们培养、教导、关心和帮助的老师、同学们表示衷心的感谢!最后,非常感谢评阅本设计报告的各位老师们!参考文献 1 马献果,频率测量方法的改进,仪器仪表学报,2004.8,25(4)增刊:120-1222 赵战克,单片机在移频信号频率检测中的应用,微计算机信息,2004,20(2):76-773 Toshiba Corporation, Semiconductor Technical Data (4N25)4 胡大可,MSP430系列超低功耗16位单片机原理与应用,北京航空航天大学出社,2000.65 魏小龙,MSP430系列单片机接口技术及系统设计实例,北京航空航天大学出社,2002.116 梁源,MSP430单片机TIMER_A在产品设计中的应用,2001嵌入式系统及单片机国际学术交流会论文集7 张晞,MSP430系列单片机实用C语言程序设计,人民邮电出版社,2005.98 刘立群,基于MSP430单片机的超低功耗数据采集器设计,自动化仪表,2005.4,26(4):30-319 刘玉宏,MSP430单片机C语言和汇编语言混合编程,微计算机信息,2003,19(10):56-57