基于AT89C51的PWM信号发生器设计报告 下载本文

1.3 PWM

(1)简介

脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。

PWM控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一。 (2)基本原理

随着电子技术的发展,出现了多种PWM技术,其中包括:相电压控制PWM、脉宽PWM法、随机PWM、SPWM法、线电压控制PWM等,而在镍氢电池智能充电器中采用的脉宽PWM法,它是把每一脉冲宽度均相等的脉冲列作为PWM波形,通过改变脉冲列的周期可以调频,改变脉冲的宽度或占空比可以调压,采用适当控制方法即可使电压与频

率协调变化。可以通过调整PWM的周期、PWM的占空比而达到控制充电电流的目的。 尽管模拟控制看起来可能直观而简单,但它并不总是非常经济或可行的。其中一点就是,模拟电路容易随时间漂移,因而难以调节。能够解决这个问题的精密模拟电路可能非常庞大、笨重(如老式的家庭立体声设备)和昂贵。模拟电路还有可能严重发热,其功耗相对于工作元件两端电压与电流的乘积成正比。模拟电路还可能对噪声很敏感,任何扰动或噪声都肯定会改变电流值的大小。

通过以数字方式控制模拟电路,可以大幅度降低系统的成本和功耗。此外,许多微控制器和DSP已经在芯片上包含了PWM控制器,这使数字控制的实现变得更加容易了。

(3)脉冲宽度调制优点

PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。让信号保持为数字形式可将噪声影响降到最小。噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。

- 5 -

对噪声抵抗能力的增强是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。从模拟信号转向PWM可以极大地延长通信距离。在接收端,通过适当的RC或LC网络可以滤除调制高频方波并将信号还原为模拟形式。 总之,PWM既经济、节约空间、抗噪性能强,是一种值得广大工程师在许多设计应用中使用的有效技术。

1.4 AT89C51

AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压高性能CMOS 8位微处理器,俗称单片机。 (1)主要特性:

? 全静态工作:0Hz-24MHz ? 三级程序存储器锁定 ? 128×8位内部RAM ? 32可编程I/O线 ? 两个16位定时器/计数器 ? 5个中断源 ? 可编程串行通道 ? 低功耗的闲置和掉电模式 ? 片内振荡器和时钟电路 (2)管脚说明:

VCC:供电电压。 GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当

P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数 据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作 为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上 拉电阻。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1 口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高, 可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上

- 6 -

拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输

出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且 作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这 是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据 存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用 内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特 殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和 控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL

门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作 为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的 缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚 备选功能 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(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平 时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低

位字节。 在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端 以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可 用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数 据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址

- 7 -

上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外, 该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机

器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),

不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET; 当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚 也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 (3)振荡器特性:

XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置 为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件, XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外 部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。

- 8 -