您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > pwm波信号发生器的研制
PWM信号发生器的研制-1-前言脉冲宽度调制是现代控制技术常用的一种控制信息输出,可以有效地利用数字技术控制模拟信号的技术。PWM(PulseWidthModulation)又称脉冲宽度调制,属于脉冲调制的一种,即脉冲幅度调制(PAM)、脉冲相位调制(PPM)、脉冲宽度调制(PWM)和脉冲编码调制(PCM)。它们本来是应用于电子信息系统和通信领域的一种信号变换技术,但从六十年代中期以来后,随着电力电子技术被引入到电力变换领域,PWM技术广泛运用于各种工业电力传动领域乃至家电产品中。目前,随着微机技术日益广泛深入工业控制领域,单片机控制的PWM技术迅速发展,其突出特点是可以比较容易地选择最佳的脉冲调制频段,更重要的,由于与单片机的结合,整个系统可以集成为具有更完备的保护功能、故障诊断功能和显示功能的高可靠的微型化的系统。因此,被竞相开发,前景广阔。在智能化产品开发中,许多常用的单片机没有提供脉宽调制(PWM)电压信号输出功能,而在某些特定的场合需要得到PWM信号。PWM控制技术以其控制简单、灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。PWM控制技术一直是变频技术的核心技术之一,由于PWM可以同时实现变频变压反抑制谐波的特点,在交流传动及至其它能量变换系统中得到广泛应用。目前实现方法为采用全数字化方案,完成优化的实时在线的PWM信号输出。本文主要介绍了PWM信号发生器的概念、作用及定义,分析了系统的工作原理和软硬件的设计。主要是以AT89C51单片机为核心控制单元,通过对外围电路芯片的设计实现PWM输出波形的频率、电压幅值、占空比的连续调节,达到产生PWM信号目的。PWM信号发生器的研制-2-第一章系统组成与工作原理1.1系统设计内容与要求一、设计内容:PWM信号发生器的研制二、设计要求:(1)采用定时/计数器8253(2)PWM信号的工作频率为500Hz(1000Hz)(3)占空比可变且显示占空比1.2系统组成如图1.1所示为系统的设计结构框图。此系统由89C51单片机核心控制单元、HD7279控制的显示与键盘扫描单元以及8253计数单元组成,其中还用到了74LS138译码器作为单片机的片选输出来作为8253计数器的口地址控制单元,在完成89C51与8253连接的电路中还用到了74LS373地址锁存器和一些逻辑门电路组成。图1.1设计结构框图1.3工作原理PWM信号发生器是通过89C51单片机对显示器模块和定时/计数器模块的控制,采用软件编程的方法,通过改变给8253计数器的写入值产生一系列幅值相等而宽度不等的脉冲,,再通过一整形电路,产生规则的PWM脉冲波形,而改变8253的计数器初值是通过键盘操作实现的,同时数码管显示相应的占空比。显示器单片机定时/计数器整形PWMPWM信号发生器的研制-3-第二章系统硬件设计2.1方案比较与确定方案一:直接采用51单片机TO/TI定时,通过软件编程产生PWM脉冲。以89C51单片机为核心控制单元,采用计数法加软件延时法,以及与按键相配合。当有按键按下后,通过键盘扫描将所按键值作为PWM信号的的占空比输入,经软件程序处理后实现PWM信号的占空比可变,并在数码管上显示相应的占空比。方案二:选用可编程芯片8253的计数器0作为PWM信号发生器,8253的计数器0工作在可重复触发单稳态方式1下,它的输出口OUT0产生宽度可调的PWM信号脉冲,该输出脉冲宽度为:W=N/f;输出的占空比为:P=W1×(f/N);式中,W为输出脉冲宽度,单位是秒;W1为一个周期内高电平的脉冲宽度,P为占空比;f为计数器时钟信号的频率;N为单片机为其置入的计数值。PWM的频率由GATE0上所加的信号频率决定;在计数器0的GATE0端输入一定频率的方波,该频率由计数器1的OUT1输出产生,再由89C51的ALE锁存信号给CLK1和CLK0同步的时钟脉冲,最后改变计数器值N产生连续可调的PWM信号。如图2.1所示。图2.1系统原理框图分析:由于单片机本身内部具有计数及定时功能,方案一与方案二相比方案一直接使用单片机内部芯片功能产生PWM脉宽调制波形算法实现简单,成本低廉。但是受单片机端口数量及单片机工作频率(主要为晶振频率)的限制,单片机无法实现多路控制;单片机搭建的电路抗干扰性较差,易受感性负载的影响,电路的稳定性较低;单片机利用程序实现PWM脉宽调制波形,程序执行存在相对延迟现象,尽管单次延迟时间很小,但是延迟时间的累积会对较为复杂的控制产生难以估量的影响。考虑到必须保证系统的稳定性,所以本设计采用方案二实现。HD727989C518253PWM信号键盘数码管PWM信号发生器的研制-4-2.2单元电路设计2.2.1振荡电路单片机需要不断地提供时钟脉冲,这个时钟脉冲就是由振荡电路提供的,它是由一个石英晶振、两个反馈电容组成,振荡电路是计算机的心脏,它控制着计算机的工作节奏。晶振频率多在1.2MHz~12MHz之间选取,工业上常用的是6M和12M,而本次专业课设用的晶振频率是11.0592MHz,反馈电容的取值一般在5PF~30PF之间选择,这里我们选用是30PF的反馈电容,它的作用有两个:一是驱动振荡器工作,二是对振荡器的频率F起微调作用,反馈电容值越大,振荡器的频率就越小,二者成反比。如图3.2所示。2.2.2复位电路单片机需要复位以后才能正常工作,复位的目的就是使单片机处于一个基准点,在这个基准点,程序将会从C51的MAIN主行数的第一条语句开始执行。一般来说复位电路有两种,一种是手动复位,另一种是上电复位,本设计采用的是常用的的上电复位,复位过程很简单,在电源刚刚合上时,电流经过电阻对电解电容充电,这样在电阻上就形成了一个电压,对于单片机来说,这个电压就是复位电压。经过若干毫秒以后,电解电容器被充满电,这时电阻就没有电流流过,电阻两端也就没有电压,单片机的复位脚RET电压恢复为零,复位工作结束,单片机开始工作。在本次设计中选用的是10uF的电解电容,10K的电阻以及5V的外接电压。如图2.2所示。PWM信号发生器的研制-5-图2.2单片机振荡电路与复位电路图2.2.3定时/计数器8253模块电路本模块是此次设计的核心模块,是利用可编程计数器8253与89C51单片机的特殊连接所实现的。一片8253共有3个独立通道,各通道共有6种工作方式,其中方式1(可编程序单稳)的工作性能是:当控制字装入控制寄存器后,OUT变高,在GATE输入信号的上升沿以后的整个技术过程中,OUT变低,一旦技术结束则OUT变高。下一次GATE上升沿触发,OUT再一次变低,输出一定宽度的负脉冲。若在OUT为低时写入新的计数值,则在下一次触发之前将不影响单稳脉冲宽度。由8253可编程序单稳工作特性可知,每启动一次,定时时间由计数值而定。该特性适合本次设计PWM波形的工作要求。单片机向8253的通道0赋值给方式1的控制字及计数值T0,OUT0输出为高电平,但计数器0未启动不工作,这时通道处于等待状态,等待GATE0的上升沿到来。单片机向8253的通道1赋值给方式1的控制字及计数值T1,OUT1输出由低变高,因而在GATE0端得到一个上升触发脉冲启动通道0定时,在定时中OUT0变为低电平,这时8253开始进入双定时器互相触发启动的工作状态。在通道0第一次定时结束,OUT0输出变高,是GATE1端得到一个上升触发脉冲启动通道1定时,而通道0处于等待状态。PWM信号发生器的研制-6-当时钟频率为f0,调宽脉冲周期为T(T=t+t’)时,则有:T0=f*t,T1=f*t’(1)当t’用T与t取代时,可得:T1=f*(T-t)(2)由此看来,当需要得到宽度为t的调宽脉冲时,必须给通道0置计数值为T0,通道1置计数值为T1,当需要调整脉宽时,只需按式(1)和式(2)重新计算T0和T1,置入各对应通道,输出波形后自动得到调整,从而实现了占空比可变的脉宽调制的目的在这里单片机除了需要给8253定时/计数器8位数据以外,还需用到74LS373地址锁存器对单片机的地址进行锁存,由于74LS373内部是由8个D触发器构成的,在这里其中的两个触发器输出Q1和Q2是8253中的A0和A1的输入信号,使得8253得到正确的控制口地址和计数器口地址,这也是8253计数器正常工作所必须的。其次是单片机的P2.5作为8253的片选信号,以此来进一步确定8253的口地址,8253的读写信号分别由单片机的读写信号直接给予,然后是ALE地址所存信号给8253的CLK1和CLK0送同步时钟信号,最后通过OUT1的输出脉冲打开GATE0,使得OUT0经过一个反相器后得到我们最终所需的PWM脉冲信号。如图2.3所示。图2.3定时/计数器8253控制电路图PWM信号发生器的研制-7-2.2.4键盘及显示电路HD7279A只需要4根线(CS、CLK、DATA、KEY)与AT89C51相连,仅仅使用单片机的P1.0—P1.3口,大大节省了CPU的端口资源,大大简化系统电路,即可实现键盘接口功能。由于HD7279A内部含有去抖动电路,软件编程时不需要键盘的消抖动程序,而且HD7279A的控制指令也使得软件编程更简单。选用HD7279A芯片作为驱动接键盘矩阵。扫描键盘时,如果有键按下,直接通过读键盘数据指令即可在LCD上显示键入的键值,而不需要通过AT89C51口线来控制键盘输入值。所以选择HD7279作为驱动芯片的键盘电路。常用的数码管显示器由八个发光二极管组成,其中七个发光二极管a-g控制七个段的亮或暗,另一个控制一个小数点的亮和暗,这种笔画式的七段显示器控制简单,使用方便,而且字符较亮,价格适宜,所以选择数码管显示.如图2.4所示。PWM信号发生器的研制-8-图2.4键盘与显示控制电路图123456ABCD654321DCBATitleNumberRevisionSizeBDate:26-Jun-2009SheetofFile:C:\DocumentsandSettings\Administrator\桌面\改了的原理图\JK.DDBDrawnBy:VDD0VDD1NC2VSS3NC4CS5CLK6DATA7KEY8SG9SF10SE11SD12SC13SB14SA15DP16DIG017DIG118DIG219DIG320DIG421DIG522DIG623DIG724CLK025RC26RESET27U3HD727912L112L212L312L412L512L612L712L810K10K10K10KS1S2S3S4S8S7S6S5S12S10S14S9S13S15S16S11200K200K200K200K100K100K100K100K+5V+5V16PF1.5K+5VPWM信号发生器的研制-9-第三章系统软件设计3.1编程语言的选择MCS-51编程语言常用的有两种,一种是汇编语言,另一种是C语言。C语言是一种结构化语言,在大多数情况下其机器代码生成效率和汇编语言相当。汇编语言的机器代码生成效率很高,汇编语言的开发效率高,可以充分地利用片内的资源。具有直接和硬件打道、执行代码的效率高等特点,可以做到C语言所不能做到的一些事情,例如对时钟要求很严格时,使用汇编语言成了唯一的选择。汇编在延时和中断时有很大的作用,有时C是没有办法做到的。综合以上汇编语言的优点,本次设计选择汇编语言对51单片机进行软件编程。3.27279键盘功能设计表3-17279键盘功能设计32107654设置/确认89PWM信号发生器的研制-10-3.3存储单元及关键字介绍3.3.1存储单元介绍表3-2存储单元介绍DFFFH8253控制口地址DFFDH8253计数器1地址DFFCH8253计数器0地址50H,51H8253计数器0的计数初值存储单元48H,49H,4AH键入的占空比存储单元40H,41H,42H,43H,44H,45H,46H,47H显示缓冲区3.3.2关键字介绍表3-3关键字介绍MAIN主程序KEY读键值子程序STFS发送一字节子程序STJS接收一字节子
本文标题:pwm波信号发生器的研制
链接地址:https://www.777doc.com/doc-4235570 .html