PWM信号产生器

PWM信号产生器
PWM信号产生器

PWM专用信号发生器

1、题义分析及解决方案

1.1、课程设计名称及内容:

用STAR ES598PCI单板开发机,设计一款PWM信号产生器,要求能产生频率和占空比可调的PWM信号,采用按键调节频率和占空比。

设计要求:

(1)频率可调范围为1KHZ-100KHZ;

(2)预置生成的频率为20KHZ,占空比为50%;

(3)频率调节采用两个按键,分别为加和减,步进值为10KHZ;

(4)占空比调节采用两个按键,分别为加和减,步进值为10%;

(5)生成的频率信号可以由示波器观察;

(6)同时显示当前频率值和占空比的值。

1.2、题意需求分析

根据本设计给定的内容和要求,可以得出以下结论:本设计中需要用到的主要有两种芯片,一种用来扫描处理按键,另一种则用来调节PWM信号的频率和占空比,并作为计时器使用,最后是用于显示的七段LED数码显示管和示波器。

其中最核心的是要实现频率和占空比的调节,占空比就是输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比,故改变占空比需要通过改变时钟脉冲中高电平的脉冲宽度来实现。频率则是周期的倒数,若要改变频率,则需改变脉冲的时钟周期。这里我们考虑到要用到可编程计数器8253的方式0和方式1,8253中方式0时一次中断计数,方式1是可编程触发器,我们用方式的OUT0的输出低电平来触发方式1的GATE1信号的高电平,此时我们将计算出的高低电平计数初值再次循环装入,这样我们便实现了改变输入的电压高电平,即实现了占空比的调节。由于8253的方式0只是实现一次计数,如果不重新装入初值就不会再次触发,所以要实现频率的调节只需要每次都循环装入初值就可以了。

根据题意分析可知,该实验需设置四个按键,分别用来实现加减频率和占空比,故需用到输入数据的工具和与其配套使用可以实现扫描处理按键功能的芯片,分别用来输入数据和处理按键。

最后需要的便是实现显示功能的LED数码显示管和示波器,其中LED数码显示管的前四位是用来显示频率的数值,后四位用来显示占空比的数值,示波器则用来显示脉冲波形和步进值的。例如当设定的按键功能为增加频率时,经过按键扫描和判断后,程序中设定的频率寄存器中数值加1,示波器上步进值显示为10KHZ,LED数码显示管上前四位数值加10,后四位不变。

1.3、解决问题的思路及方法

1.3.1、硬件部分:

a.根据需求分析可知,该实验最关键的部分是要实现频率和占空比的调节,若要实现频率和占空比的调节,则分别需要改变时钟脉冲的高电平宽度和时钟周期,而能实现以上功能的芯片,只有8253最为合适,并且8253在方式2下可作为计时器使用。故该部分功能的实现选择使用8253芯片。

b .其次需要进行实现扫描处理按键功能的芯片和数据输入工具的选择,这里有8255和8279两种芯片以及十六进制小键盘和二进制开关可以选择,在这次实验中我们选择8279芯片和十六进制小键盘,以下是对两种硬件的选择比较: 表1

8279A 芯片

8255A 芯片

8279芯片可以实现对键盘/显示器的自动扫描,以减轻CPU 负担,具有显示稳定,程序简单,不会出现误动作等 8255芯片是可编程的并行接口芯片,不需

要附加外部电路便可和大多数并行传输数据的外部设备相连,数据的各位同时传送,使用十分方便

表2

表二

c .最后选择用来显示的七段LED 数码显示管和示波器即可。 1.3.2、软件部分

a .对8253进行初始化。对8253的初始化编程包括写入控制字和写入计数初值两个步骤。在不需要外部信号GATE 上升沿触发的方式中,计数就开始了。由于8253计数器是16位时,CPU 要分两次读入。为了保证读到稳定准确的数据,通常采用两种方法。

b .对8279进行初始化。8279A 芯片内部有一个显示RAM 和一个FIFO RAM ,可以暂存从小键盘中读出的数据,同时可以将内存中的数据暂存到显示RAM 中,简化了程序复杂度。每次将各个位要显示的数据处理好后到换码表中找到对应值,初始化8279后将值送到数据口即实现显示的目的。

2、硬件设计

2.1、选择芯片8253A

2.1.1 芯片8253A 在本设计中的作用

在该次实验中8253芯片主要用来实现频率和占空比的调节,并作为计时器来使用。

2.1.2 8253A 的功能分析

十六进制小键盘 二进制开关

键盘(Keyboard )是常用的输入设备,它是由一组开关矩阵组成,结构相对复杂,与8279A 配套使用

二进制逻辑开关一位表示一个二进制数,对于本实验每一位数需要多次拨动八位开关,使实验复杂了许多

8253A是一种可编程的定时器/计数器芯片,它可用于计数、分频、定时器等的方面。

8253的主要性能为:内有三个独立的16位计数器,最大计数范围为0~65535;工作方式可编程控制,可编程6种不同的工作方式;所有输入和输出都与TTL兼容。计数脉冲频率为0MHZ-2.6MHZ,可以按二进制或BCD码计数,使用单一+5V电源

2.1.3 8253的内部结构

8253的内部结构如图一所示,由数据总线缓冲器、控制寄存器、读/写控制逻辑和计数器等部分组成。

图一

(1)、数据总线缓冲器:三态,双向的8位缓冲器,用于将8253与系统数据总线连接。CPU执行I/O指令时,缓冲器发送或者接收数据,用于写入8253控制字,装入计数初值或读出当前计数值。

(2)、读/写逻辑:决定三个计数器和控制字寄存器中哪一个能进行工作,并控制内部总线上数据传送的方向。

①CS片选信号:低电平有效(此时CPU才能对8253进行读写操作),由地址总线经I/O端口译码电路产生。

②RD读信号:低电平有效,表示CPU正在读取所选定的计数器通道中的内容。

③WR写信号:低电平有效,此时表示CPU正在将计数初值写入所选中的计数通道中或将控制字写入控制寄存器中。

④A1A0端口选择信号:8253内部有3个计数器通道和一个控制寄存器端口。A1A0=00,01,10表示分别选中计数器通道0,1,2,当A1A0=11时选中控制寄存器端口。

(3)、控制寄存器:接收从CPU来的控制字,并由控制字的D7、D6

位的编码决定该控制字写入哪个计数器的控制寄存器,控制寄存器只能写入,不能读出。

(4)、计数器0-2:当8253用作计数器时,加在CLK引脚上脉冲的间隔可以是不相等的;当它用作定时器时,则在CLK引脚应输入精确的时钟脉冲,8253所能实现的定时时间,取决于计数脉冲的频率和计数器的初值,即:定时时间=时钟脉冲周期Tc×预置的计数初值n。对8253来讲,外部输入到CLK引脚上的时钟脉冲频率不能大于2MHZ,否则需分频后才能送到CLK端。

2.1.4 8253内部引脚功能

8253是一片具有3个独立通道的16位计数器/定时器芯片,使用单一+5V电源,24引脚双列直插式封装,如图二所示。

图二

2.1.4.1、与CPU的接口信号

(1)D0~D7——三态双向数据线。与CPU数据总线相连,用于传递CPU 与8253之间的数据信息、控制信息和状态信息;

(2)CS——片选信号(Chip Select),输入,低电平有效;

(3)WR——写信号,输入,低电平有效,用于控制CPU对8253的写操作,可与A1,A0信号配合以决定是写入控制字还是计数初值;

(4)RD——读信号,输入,低电平有效。用于控制CPU对8253的读操作,可与A1,A0信号配合读取某个计数器的当前计数值;

(5)A0,A1——地址输入线。用于8253内部寻址的4个端口,即3个计数器和一个控制字寄存器。一般与CPU低位的地址线相连。

2.1.4.2、与外部设备的接口信号

(1)CLK0(CLK1,CLK2)——时钟脉冲输入端,用于输入定时脉冲或计数脉冲信号。CLK可以是系统时钟脉冲,也可以是由其他脉冲源提供。8253规定加在CLK引脚的输入时钟周期不得小于380ns;

(2)GATE0(GATE1,GATE2)——门控输入端,用于外部控制计数器的启动或停止计数的操作。当GATE为高电平时,允许计数器工作,当GATE 为低电平时,禁止计数器工作;

(3)OUT0(OUT1,OUT2)——计数输出端。在不同工作方式中,当计

数器计数到0时,OUT引脚上必输出相应的信号。

2.1.5 8253的工作方式

方式0——计数结束中断方式(Interrupt on Terminal Count)

方式1 ——可编程的单稳态触发器(Programmable One Short)

方式2-----比率发生器、分频器(Rate Generator)方式2用门控信达到同步计数的目的。

方式3----方波发生器(Square Wave Generator)方式3的工作过程同方式2,只是输出的脉宽不同。

方式4 ——软件触发选通方式(Software Triggered Strobe) 用方式4工作时,GATE门控信号只是用来允许或不允许定时操作的,定时的执行过程由装入的初值决定。

方式5 ——硬件触发选通方式(Hardware Triggered Strobe)方式5为硬件触发选通方式,完全由GATE端引入的触发信号控制定时和计数。

2.1.6 8253芯片可编程外围信号状态表

表3

2.1.7 所选用8253的工作方式

本实验要求产生频率初值,并且根据步进值来调节频率和占空比,这样我们想到了8253的工作方式0,每次都装入初值。而要调节占空比的时候要考虑到高电平的输入,这样在周期固定的情况下就必须使用方式1,可编程触发器,即可编程单稳态触发器,此时GATE具有控制装入的功能。下面我就介绍一下这两种工作方式的原理以及时序图。

(1)首先是方式0----计数结束产生中断

在这种工作方式下,当GATE为1时,写入控制字和计数值后,需要一个CLK脉冲周期计数初值才能被送到计数器减一部件。OUT是在写入控制字后变成低电平,直到计数器减到0才变成高电平。OUT端输出信号可以作为中断请求信号。计数器在外部时钟作用下,每个时钟周期减一。当GATE为0时,每次写入数值可以获得一个负脉冲,计数停止。

图1.5.1 正常计数

图1.5.2GATE 信号的作用

图1.5.3方式2时计数过程中改变计数值

(2)、方式1---可编程触发器 在这种工作方式下,写入控制字和计数初值后,计数开始是以GATE 的上升沿触发。之后,OUT 输出低电平,次低电平一直维持到计数器减到0。这样就可以从OUT 输出一个负脉冲,该负脉冲由GATE 上升沿之后的下一个CLK 脉冲的下降沿开始,负脉冲的宽带为计数值乘时钟脉冲时间长度。若想再次获得同样宽度的负脉冲,只要GATE 上升沿再触发一次即可。可见,这种方式下,装入计数值后可以多次触发。

图1.5.4 正常计数

C. 方式0 计数过程中改变计数值

图1.5.5 GA TE信号的作用

图1.5.6改变初值

2.1.8 8253的控制字与初始化编程

10-----选择通道11-----无效

D5、D4:00-----计数器锁存01-----只读写计数器低字节

10-----只读写计数器高字节

11-----先读写计数器低字节,再读写计数器高字节

D3、D2、D1:000------方式0 001------方式1

*10------方式2 *11------方式3

100------方式4 101------方式5

D0:1-----BCD码计数0------二进制计数

2.1.9 8253A的技术参数

表4

8253A主要参数分析:输入低电压的范围是-0.5 V~0.8 V,输出低电压的范围0.45

V~2.4 V,输入高电压的范围是2.2 V~Vcc+0.5 V。而测试条件均为Vin=Vcc-0V,V out=Vcc-0.45V。

2.2、选择8279芯片

2.2.1芯片8279A在本次设计中的作用

在本设计中8279A芯片主要用来控制键盘输入和LED显示。

2.2.28279A的功能分析

8279可以实现对LED灯的控制显示。

2.2.3 8279A主要特性

8279A芯片是一种通用的可编程序的键盘/显示接口器件,单个芯片就能完成键盘输入和LED显示控制两种功能。可与任何8位机接口。8279A芯片包括键盘输入和显示输出两个部分。若采用8279作为键盘/显示器接口,则可以实现对键盘、显示器自动扫描,8279主要是管理键盘输入和显示器输出的。8279可编程键盘显示器接口芯片具有动态显示驱动电路简单、不占用CPU 的时间、可自动进行键盘扫描、与计算机接口方便、编程容易、系统灵活等特点.当今已成为设计计算机应用系统,特别是实时性较高的测控系统的首选器件之一。

2.2.4 8279A的内部结构

DB0~DB7

~OUTB3

~OUTA3

SL0~SL3

RL0~RL7

SHIFT

CNTL/STB

BD

图一8279A的内部结构

上图中:

IRQ:中断请求输出线

DB0-DB7:双向数据总路线(传送命令、数据、状态)、:读写控制输入端

RESET:复位输入端

CLK:时钟输入端

:片选

C和/D(A0):片内寄存器选址

OUTA0-A1、OUTB0-B3:8位显示输出端

:熄灭显示输出端

SL0-SL3:公用扫描输出线

RL0-RL7:键盘回馈输入线

SHIFT:抵挡键输入线

CNTL/STB:控制/选通输入线

8279的键盘接口部分内部有一个8×8位先进先出的堆栈(FIFO),用来存放键盘输入代码,显示器接口部分内部有一个16×8位显示RAM,用来显示段数据,能为16位LED显示器(或其它显示器)提供多路扫描接口。

2.2.5 8279A的引脚信号和功能

8279可编程键盘显示器接口芯片具有动态显示驱动电路,不占用CPU 的时间、可自动进行键盘扫描、与计算机接口方便、编程容易、系统灵活等特点。 8279 是可编程的键盘/显示接口芯片。它既具有按键处理功能,又具有自动显示功能,在单片机系统中应用很广泛。8279内部有键盘 FIFO (先进先出堆栈)/传感器,双重功能的 8×8=64B RAM,键盘控制部分可控制 8×8=64 个按键或 8×8 阵列方式的传感器。该芯片能自动消抖并具有双键锁定保护功能。显示 RAM容量为16×8,即显示器最大配置可达 16 位 LED数码显示。

2.2.6 8279的命令字及其格式

8279有三种工作方式:键盘工作方式、显示工作方式和传感器工作方式。

键盘工作方式:双键互锁和N键轮回。双键互锁是指当有两个以上按键同时按下时,只能识别最后一个被释放的按键,并把其键值送入内部FIFO RAM中。N 键轮回是指当有多个按键同时按下时,所有按键的键值均可按扫描顺序依次存入FIFO RAM中。

显示工作方式:是指CPU输入至8279内部FIFO RAM的数据的输出格式,有8个字符左端入口显示、16个字符左端入口显示、8个字符右端入口显示、16个字符右端入口显示四种方式。

传感器方式:是指扫描传感器阵列时,一旦发现传感器的状态发生变化就置位INT向CPU申请中断。

选择不同的工作方式均是通过CPU对8279送入命令来进行控制。8279共有8种命令,命令寄存器为8位,其中D7~D5为命令特征位,D4~D0为命令的控制位。CPU对8279写入的命令数据为命令字,读出的数据为状态字。

8279共有八条命令,其功能及命令字格式分述如下。

(1)键盘/显示方式设置命令字

其中:D7、D6、D5=000为方式设置命令特征位。DD(D4、D3):用来设定显示方式,如表五所示。

D 4

D

3

显示方式

0 0 8个字符显示,左端入

0 1 16个字符显示,左端入

1 0 8个字符显示,右端入

1 0 16个字符显示,右入口

所谓左入口,即显示位置从最左一位(最高位)开始,以后逐次输入的显示字符逐个向右顺序排列;所谓右入口,则是显示位置从最右一位(最低位)开始,以后逐次输入显示字符时,已有的显示字符依次向左移动。

KKK(D2、D1、D0):用来设定七种键盘/显示扫描方式,如表六所示。

D 2

D

1

D

键盘/显示扫描方式

0 0 0 编码扫描键盘,双键锁定

0 0 1 译码扫描键盘,双键锁定

0 1 0 编码扫描键盘,N键轮回

0 1 1 译码扫描键盘,N键轮回

1 0 0 编码扫描传感器矩阵

1 0 1 译码扫描传感器矩阵

1 1 0 选通输入,编码显示扫描

1 1 1 选通输入,译码显示扫描

(2)时钟编程命令

用来设定外部输入CLK时钟脉冲的分频系数N。N取值范围为2~31。如CLK输入时钟频率为2MHZ,PPPPP应被置为10100(N=20),才可获得8279内部要求的100KHZ的时钟频率。

(3)读FIFO/传感器RAM命令

感器方式时使用。在CPU读传感器RAM之前,必须用这条命令来设定所读传感器RAM中的地址。AAA(D2、D1、D0)为传感器RAM中的八个字节地址。AI(D4)为自动增量特征位。当AI=1时,每次读出传感器RAM后地址自动加1使地址指向下一个存储单元。这样,下一个数据便从下一个地址读出,而不必重新设置读FIFO/传感器RAM命令。

在键盘工作方式中,由于读出操作严格按照先入先出顺序,因此,不需使用这条命令。

(4)读显示RAM命令

将要读出的显示RAM地址。AAAA(D3、D2、D1、D0)用来寻址显示RAM中的存储单元。由于位显示RAM中有16个字节单元,故需要4位寻址。AI(D4)为自动增量特征位。AI=1时,每次读出后地址自动加1,指向下一地址。

(5)写显示RAM命令

这个命令字来设定将要写入的显示RAM地址。AAAA(D3、D2、D1、D0)为将要写入的显示RAM中的存储单元地址。AI(D4)为自动增量特征位。AI=1时,每次写入后地址自动加1,指向下一次写入地址。

(6)显示禁止写入/消隐命令

D2)为A、B组显示RAM写入屏蔽位。当A组的屏蔽位D3=1时,A组的显示RAM 禁止写入。因此,从CPU写入显示器RAM数据时,不会影响A的显示。这种情况通常在采用双4位显示器时使用。因为两个四位显示器是相互独立的。为了给其中一个四位显示器输入数据而又不影响另一个四位显示器,因此必须对另一组的输入实行屏蔽。BL/A、BL/ B(D1、D0)为消隐设置位。用于对两组显示输出消隐。若BL=1,对应组的显示输出被消隐。当BL=0,则恢复显示。(7)清除命令

D 4 D

3

D

2

清除方式

10×将全部显示RAM清为00H

110将全部显示RAM置为20H,A组输出0010,B组输出

0000

111将全部显示RAM置为FFH

0××D0=0不清除,D0=1按上述方法清除CF(D1)用来置空FIFO存储器,当CF=1时,执行清除命令后,FIFO RAM 被置空,使INT输出线复位。同时,传感器RAM的读出地址也被置为0。CA (D0)为总清的特征位。它兼有CD和CF的联合效能。在CF =1时,对显示的清除方式由D3、D2的编码决定。显示RAM清除时间约需160us。在此期间状态字的最高位Du=1,表示显示无效。CPU不能向显示RAM写入数据。

(8)结束中断/错误方式设置命令

①作为结束中断命令。在传感器工作方式中使用。每当传感器状态出现变化时,扫描检测电路就将其状态写入传感器RAM,并启动中断逻辑,使INT变高,向CPU 请求中断,并且禁止写入传感器RAM。此时,若传感器RAM 读出地址的自动递增特性没有置位(AI=0),则中断请求INT在CPU第一次从传感器RAM读

出数据时就被清除。若自动递增特征已置位(AI=1),则CPU对传感器RAM 的读出并不能清除INT,而必须通过给8279写入结束中断/错误方式设置命令才能使INT变低。因此,在传感器工作方式中,此命令用来结束传感器RAM的中断请求。

②作为特定错误方式设置命令。在8279已被设定为键盘扫描N键轮回方式以后,如果CPU给8279又写入结束中断/错误方式设置命令(E=1),则8279将以一种特定的错误方式工作。这种方式的特点是:在8279的消抖周期内,如果发现多个按键同时按下,则FIFO状态字中的错误特征位S/E将置1,并产生中断请求信号和禁止写入FIFO RAM。

上述八种用于确定8279操作方式的命令字皆由D7D6D5特征位确定,输入8279后能自动寻址相应的命令寄存器。因此,写入命令字时唯一的要求是使数据选择信号A0 =1。

2.2.7 8279的状态字及其格式

8279的FIFO状态字,主要用于键盘和选通工作方式,以指示FIFO RAM中

由于清除显示或全清命令尚未完成时,Du=1,此时不能对显示RAM写入。S/E(D6)为传感器信号结束/错误特征位。该特征位在读出FIFO 状态字时被读出。而在执行CF =1的清除命令时被复位。当8279工作在传感器工作方式时,若S/E=1,表示传感器的最后一个传感器信号已进入传感器RAM;而当8279工作在特殊错误方式时,若S/E=1则表示出现了多键同时按下错误。

O、U(D5、D4)为超出、不足错误特征位。对FIFO RAM 的操作可能出现两种错误:超出或不足。当FIFO RAM 已经充满时,其它的键盘数据还企图写入FIFO RAM ,则出现超出错误,超出错误特征位O(D5)置1;当FIFO RAM 已经置空时,CPU还企图读出,则出现不足错误,不足错误特征位U(D4)置1。F(D3)表示FIFO RAM中是否已满标志,若F=1表示已满。NNN(D2、D1、D0)表示FIFO RAM中的字符数据个数。

2.2.8数据输入/输出格式

对8279输入/输出数据不仅要先确定数据地址口,而且数据存放也要按一定格式,其格式在键盘和传感器方式有所不同。

(1)键盘扫描方式数据输入格式

键盘的行号、列号及控制键格式如下:

RL0~RL7

状态确定)

SL0~SL2

状态确定)

图2-2 键盘的行号、列号及控制键格式

控制键CNTL、SHIFT为单独的开关键。CNTL与其它键连用作特殊命令键,SHIFT可作上、下挡控制键。

(2)传感器方式数据输入格式

2.3.1 8255芯片在本设计中的作用

可编程并行接口芯片8255在本设计中主要是为了检测C口的输入输出,然后来判断是否是高低电平的触发。

2.3.2 8255引脚图

8255是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B 口和C口。三个端口都可以作为输入端口或输出端口。A口有三种工作方式:即方式0、方式1和方式2,而B口只能工作在方式0或方式1下,而C口通常作为联络信号使用。8255的工作只有当片选CS有效时才能进行,而控制逻辑端口实现对其他端口的控制。

2.3.3 8255A的引脚信号

与外设相连的

PA7~PA0:A口数据信号线。

PB7~PB0:B口数据信号线。

PC7~PC0:C口数据信号线。

与CPU相连的

RESET:复位信号。当此信号来时,所有寄存器都被清除。同时三个数据端口被自动置为输入端口。

D7~D0:它们是8255A的数据线和系统总线相连。

CS:片选信号。在系统中,一般根据全部接口芯片来分配若于低位地址(比如A5、A4、A3)组成各种芯片选择码,当这几位地址组成某一个低电平,于8255A 被选中。只有当有效时,读信号写才对8255进行读写。

RD:读信号。当此信号有效时,CPU可从8255A中读取数据。

WR:写信号。当此信号有效时,CPU可向8255A中写入数据。

A1、A0:端口选择信号。8255A内部有3个数据端口和1个控制端口,共4个端口。规定当A1、A0:为00时,选中A端口;为01时,选中B端口;为10时,选中C端口;为11时,选中控制口。

2.3.4 8255的基本操作如下表3所示。

表3 8255的基本操作

2.3.5芯片8255A的技术参数,如下表4所示:

参数说明:

输入最低电压:min=-0.5V,max=0.8 V

输入最高电压:2.0 V

输出最低电压:0.45 V

输出最高电压:2.4 V

表4 8255A的技术参数

2.3.6 8255A工作方式控制字

A口、B口为输出模式,工作于方式0。CPU中的数据经由数据线路到达8255A,再由A口、B口分别段选、位选后输出到LED。详细控制字见表5。

表5 8255A的工作方式控制字

方式0的工作特点

这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由程序选定作为输入或输出。其功能为:

①两个8位通道:通道A、B。两个四位通道:通道C高4位和低四位;

②任何一个通道可以作输入/输出;

③输出是锁存的;

④输入是不锁存的;

⑤在方式0时各个通道的输入/输出可有16种不同的组合。

2.4 74LS138译码器

2.4.1 74LS138译码器在本设计中的作用

扫描计数器采用编码工作方式

2.4.2 74LS138译码器的功能分析

74LS138是3/8译码器,即对3个输入信号进行译码。得到8个输出状态。G1,G2A,G2B,为数据允许输出端,G2A,G2B低电平有效。G1高电平有效。A,B,C为译码信号输出端,Y0~Y7为译码输出端,低电平有效。

图2-3 74LS138 图2-4 功能表

2.4.3 74LS138译码器的技术参数

极限值

电源电压-----------------------------------------------------7V

输入电压 74LS138---------------------------------------------7V

工作环境温度 74LS138------------------------------------0~70℃

贮存温度------------------------------------------ -65~150℃

2.5.74LS240译码器

2.5.1 74LS240译码器在本设计中的作用

本设计实验中主要是为增加LED的驱动电流

2.5.2 74LS240译码器的功能分析

74LS240 TTL 八反相三态缓冲器/线驱动器

1A,2A 输入端

, 三态允许端(低电平有效)

1Y~8Y 输出端

图2-5 74LS240逻辑图

表2-5 74LS240功能表

输入输出

A Y

L L H L H X H L Z

2.5.3 74LS240译码器的技术参数(极限值)

电源电压 …………………………………………. 7V 输入电压 …………………………………………. 5.5V 输出高阻态时高电平电压 …………………………. 5.5V 74LS240 …………………………………. 0~70℃

存储温度 …………………………………………. -65~150℃

2.6.七段LED 显示器

2.6.1 LED 在本设计中的作用

LED 发光二级管(Light-Emitting Diode ),在本设计中采用7段数字发光二级管,做为终端显示,显示频率和占空比的变化值。 2.6.2 LED 功能分析

物理构造:LED 发光二级管,采用砷化镓、镓铝砷、和磷化镓等材料制成,其内部结构为一个PN 结,具有单向导电性。

图2-6 LED 结构图

数字成像:将七个发光管进行组合,排列成数字图形8,再根据需要控制七个管的亮与灭,即可显示出定义数字。

表 2-6 LED 的编码

字型

A B C D a b c d e f g bp OX 0 0 0 0 0 1 1 1 1 1 1 0 0 3f 1 0 0 0 1 0 1 1 0 0 0 0 0 06 2 0 0 1 0 1 1 0 1 1 0 1 0 5b 3 0 0 1 1 1 1 1 1 0 0 1 0 4f 4 0 1 0 0 0 1 1 0 0 1 1 0 66 5 0 1 0 1 1 0 1 1 0 1 1 0 6d 6 0 1 1 0 0 0 1 1 1 1 1 0 7d 7 0 1 1 1 1 1 1 0 0 0 0 0 07 8 1 0 0 0 1 1 1 1 1 1 1 0 7f 9 1 0 0 1 1 1 1 0 0 1 1 0 6f A 1 0 1 0 1 1 1 0 1 1 1 0 77 B

1 0 1 1

0 0 1 1 1 1 1 0

7c

C 1 1 0 0 1 0 0 1 1 1 0 0 39

D 1 1 0 1 0 1 1 1 1 0 1 0 5e

E 1 1 1 0 1 0 0 1 1 1 1 0 79

F 1 1 1 1 1 0 0 0 1 1 1 0 71

2.6.3 LED技术参数

2.7小键盘

2.7.1 小键盘在本设计中的作用

本设计中,小键盘用于输入二进制数字。

2.7.2 小键盘的功能分析

通常使用的键盘是矩阵结构的。对于4×4=16个键的键盘,采用矩阵方式只要用8条引线和2个8位端口便完成键盘的连接。如图,这个矩阵分为4行4列,如果键5按下,则第1行和第1列线接通而形成通路。如果第1行线接低电平,则键5的闭合,会使第1列线也输出低电平。矩阵式键盘工作时,就是按行线和列线的电平来识别闭合键的。

第0行

第1行

第2行

第3行

图2-5 4×4键盘矩阵图

行扫描法识别按键的原理如下:先使第0行接低电平,其余行为高电平,然后看第0行是否有键闭合。这是通过检查列线电位来实现的,即在第0行接低电平时,看是否有哪条列线变成低电平。如果有某列线变为低电平,则表示第0行和此列线相交位置上的键被按下;

如果没有任何一条列线为低电平,则说明第0行没有任何键被按下。此后,再将第1行接低电平,检测是否有变为低电平的列线。如此重复地扫描,直到最后一行。在扫描过程中,当发现某一行有键闭合时,也就是列线输入中有一位为0时,便退出扫描,通过组合行线和列线即可识别此刻按下的是哪一键。

2.8 硬件总逻辑图及其说明

8279键盘配置最大为8×8,若要配置64个按键,其它列扫描线可分别连至至上,形成8行8列的按键扫描电路。

图中显示部分段选码由8279的OUTA3~OUTA0、OUTB3~OUTB0通过驱动器74LS240提供,位选码由SL2~SL0 经3-8译码器通过驱动器74LS240提供。

连线说明:

G5:A---------E5:A

G5:B---------E5:B

G5:C----------E5:C

G5:D----------E5

E5:A0---------ES-PCI:A0

E5:CS---------A3:CS6

E5:CLK--------A3:CS6

E5:CLK--------B2:2M

C5:A0---------ES-PCI:A0

C5:A1---------ES-PCI:A1

C5:OUTE0------C5:GATE1

C5:GATE0------C1:VCC

C5:OUT1------B4:PC0

C5:OUT0------B4:PC1

C5:OUT1------示波器红头

C5:CLK1------B2:2M

C5:CLK0------B2:2M

C5:CS--------A3:CS5

B4:CS--------A3:CS1

C1:GND-------示波器黑头

B4:A0--------ES-PCI:A0

B4:A1--------ES-PCI:A1

3、控制程序设计

3.1.控制程序设计思路

3.1.2 主程序部分

本程序主要实现的功能包括频率以及占空比的初值设置。正确输入完按任意键开始计时。A、B、C、D键为功能键,用于频率和占空比的增加或减少。

程序开始条件是初始化8279芯片和8253芯片,以及8255芯片,还有我们在程序中设计四个键A,B,C,D,在程序中有体现,下面主要说明A键的控制作用的程序,B,C,D 键统A键:

KEY_A PROC NEAR

CMP AL,0AH ;A键定义为频率增加10KHZ

jnz R2

R2:jmp end_0

Y0:

CMP fled,10

jnz Y1

CALL diyici

jmp lll

Y1: CMP fled,20

jnz Y2

CALL dierci

jmp lll

Y2: CMP fled,30 jnz Y3

CALL disanci

jmp lll

Y3: CMP fled,40 jnz Y4

call disici

jmp lll

Y4: cmp fled,50 jnz Y5

call diwuci

jmp lll

Y5: cmp fled,60 jnz Y6

call diliuci

jmp lll

PWM信号发生器的设计程序(veriloghdl)

PWM信号发生器的设计程序 module pwmgen(clk,rst,ce,addr,write,wrdata,read,bytesel,rddata,pwm); input clk,rst,ce; input [1:0]addr; input write,read; input[31:0]wrdata; output[31:0]rddata; input[31:0]bytesel; output pwm; reg[31:0]clk_div_reg,duty_cycle_reg; reg control_reg; reg clk_div_reg_sel,duty_cycle_reg_sel,control_reg_sel; reg[31:0]pwm_cnt,rddata; reg pwm; wire pwm_ena; always@(addr) begin clk_div_reg_sel<=0;duty_cycle_reg_sel<=0;control_reg_sel<=0; case(addr) 2'b00:clk_div_reg_sel<=1; 2'b01:duty_cycle_reg_sel<=1; 2'b10:control_reg_sel<=1; default: begin clk_div_reg_sel<=0; duty_cycle_reg_sel<=0; control_reg_sel<=0; end endcase end always@(posedge clk or negedge rst) begin if(rst==1'b0) clk_div_reg=0; else begin if(write & ce & clk_div_reg_sel) begin if(bytesel[0]) clk_div_reg[7:0]=wrdata[7:0]; if(bytesel[1]) clk_div_reg[15:8]=wrdata[15:8];

PWM信号发生电路

1.PWM信号概述 脉冲宽度调制(PWM)信号广泛使用在电力变流技术中,以其作为控制信号可完成DC-DC变换(开关电源)、DC-AC变换(逆变电源)、AC-AC变换(斩控调压)与AC-DC变换(功率因数校正)。 产生PWM信号的方法有多种,现分别论述如下: 1)普通电子元件构成PWM发生器电路 基本原理就是由三角波或锯齿波发生器产生高频调制波,经比较器产生PWM信号。三角波或锯齿波与可调直流电压比较,产生可调占空比PWM信号;与正弦基波比较,产生占空比按正弦规律变化的SPWM信号。 此方法优点就是成本低、各环节波形与电压值可观测、易于扩展应用电路等。缺点就是电路集成度低,不利于产品化。 2)单片机自动生成PWM信号 基本原理就是由单片机内部集成PWM发生器模块在程序控制下产生PWM 信号。 优点就是电路简单、便于程序控制。缺点就是不利于学生观测PWM产生过程,闭环控制复杂与使用时受单片机性能制约。 3)可编程逻辑器件编程产生PWM信号 基本原理就是以复杂可编程逻辑器件(CPLD)或现场可编程门阵列器件(FPGA)为硬件基础,设计专用程序产生PWM信号。 优点就是电路简单、PWM频率与占空比定量准确。缺点就是闭环控制复杂,产生SPWM信号难度大。 4)专用芯片产生PWM信号 就是生产厂家设计、生产的特定功能芯片。 优点就是使用方便、安全,便于应用到产品设计中。缺点就是不利于学生观测PWM产生过程与灵活调节各项参数。 2.电子元件构成PWM发生器电路

图1电子元件构成PWM发生器电路 3.集成芯片SG3525构成PWM发生器电路 一、PWM信号发生电路说明 实验电路中,驱动开关管的PWM信号由专用PWM控制集成芯片SG3525产生(美国Silicon General公司生产),PWM信号发生器电路如图2所示。 图2 PWM信号发生器电路图 SG3525采用恒频脉宽调制控制方案,内部包含有精密基准源、锯齿波振荡器、误差放大器、比较器、分频器与保护电路等。调节Ur的大小,在OUTA、OUTB

PWM信号发生器的设计报告

前言 脉冲宽度调制(Pulse Width Modulation.PWM)控制技术以其控制简单、灵活和动态响应好的优点而成为电力电子技术和模拟信号数字传输通信领域最广泛应用的控制方式,因此研究基于PWM技术的脉冲宽度及周期可调的信号发生器具有十分重要的现实意义。 本文主要讨论了脉冲占空比可调信号的产生方法,采用三种不同的方案使用VHDL语言编程实现了信号的产生。其中方案一的原理是分频,即用计数器计算时钟脉冲的上升沿个数,再通过输出电平反复翻转得到计数个数(脉冲宽度)可控的PWM 信号;方案二的原理是锯齿波比较法,首先编程产生阶梯状的锯齿波,再通过锯齿波与输入占空比值(数值可控的直线)比较产生脉冲宽度随输入占空比数值变化的PWM 信号;方案三是用有限状态机产生有用信号,首先定义两个状态,再通过计数器值与输入占空比值比较控制状态的切换,产生PWM信号。本文详细介绍方案二和方案三两种方法。 通过使用QuartusII9.0软件采用VHDL语言编程并用功能仿真证实了上文提到的三种PWM信号产生方案都是可行的,都能产生切实可用的PWM信号,三种方案中均可以通过修改输入端口占空比来控制产生信号的脉宽,且可以通过在程序中修改计数器的计数上限和分频模块的分频比改变信号的周期及频率,实现了多参数可调,使整体设计具有灵活的现场可更改性和较好的可移植性。且实现功能的程序简单易懂,设计过程中思路阐述清晰,流程介绍明了,且程序易于修改,可读性好。

第一章设计要求 1.1 研究课题 PWM信号发生器的研制 1.2设计要求 用CPLD可编程模块产生下列信号(特殊芯片:EPM570T100C5) (1)采用VHDL编写相关程序,PWM信号的工作频率为500Hz(1000Hz); (2)时钟信号通过分频器后,由输入开关量控制占空比可调。

pwm波信号发生器

电子技术综合训练 设计报告 题目:PWM信号发生器的设计 姓名: 学号: 班级: 同组成员: 指导教师: 日期: 摘要 本次课程设是基于TTL系列芯片的简易PWM信号发生器,PWM信号发生器应用所学的数字电路和模拟电路的知识进行设计。在设计过程中,所有电路仿真均基于Multisim10仿真软件。本课程设计介绍了PWM信号发生器的设计方案及其基本原理,并着重介绍了PWM信号发生器各单元电路的设计思路,原理及仿真,整体电路的的工作原理,控制器件的工作情况。设计共有三大组成部分:一是原理电路的设计,本部分详细讲解了电路的理论实现,是关键部分;二是性能测试,这部分用于

测试设计是否符合任务要求。三是是对本次课程设计的总结。 关键字: 目录 1 设计任务和要求…………………………………………………………? 1.1设计任务……………………………………………………………? 1.2设计要求…………………………………………………………….? 2 系统设计…………………………………………………………………? 2.1系统要求…………………………………………………………….? 2.2方案设计……………………………………………………………? 2.3系统工作原理……………………………………………………….? 3 单元电路设计……………………………………………………………? 3.1 单元电路A(单元电路的名称) ……………………………………? 3.1.1电路结构及工作原理……………………………………………? 3.1.2电路仿真…………………………………………………………?

3.1.3元器件的选择及参数确定……………………………………………? 3.2单元电路B(单元电路的名称) ……………………………………? 3.2.1电路结构及工作原理…………………………………………? 3.2.2电路仿真…………………………………………………………? 3.2.3元器件的选择及参数确定…………………………………………….? …… 4 系统仿真……………………………………………………………………?. 5 电路安装、调试与测试……………………………………………………? 5.1电路安装………………………………………………………………? 5.2电路调试………………………………………………………………? 5.3系统功能及性能测试…………………………………………………? 5.3.1测试方法设计………………………………………………………? 5.3.2测试结果及分析……………………………………………………? 6 结论…………………………………………………………………………?

基于CPLD的PWM发生器设计

第32卷 第6期 2010-6 【151】 基于CPLD的PWM发生器设计 A PWM generator designed with CPLD 耿伟松,于海东 GENG Wei-song, YU Hai-dong (扬州大学 能源与动力工程学院,扬州 225009) 摘 要:H形桥式变换器在多种动力系统中有着广泛的应用。在电机控制中,H桥中开关的控制一般采 用PWM控制技术。采用VHDL硬件描述语言设计了基于CPLD的PWM发生器,并使用Max+PlusⅡ进行仿真验证,仿真结果验证了设计的正确性。设计中采用了一种巧妙的方法来实现,其原理简单。基于CPLD的PWM发生器将会简化控制系统的硬件和软件设计,获得更高的开关频率,其应用这将大大简化直流电机控制系统的设计并且改善系统的控制性能。 关键词:H桥;PWM发生器;CPLD;VHDL;Max+ Plus Ⅱ 中图分类号:TM383.6 文献标识码:B 文章编号:1009-0134(2010)06-0151-03Doi: 10.3969/j.issn.1009-0134.2010.06.50 0 引 言 自从全控型电力电子器件问世以后,就出现了采用脉冲宽度调制的高频开关控制方式,形成了直流P W M 调速系统[1]。脉宽调制变换器的作用是:用脉冲宽度调制的方法,把恒定的直流电源电压调制成频率一定、宽度可变的脉冲电压序列,从而改变平均输出电压的大小,以调节电机转速。 PWM变换器电路有多种形式,可分为可逆和不可逆两大类。其中可逆PWM变换器主电路有多种形式,最常用的是桥式(H形)电路。桥式变换器在许多动力系统中得到了广泛的应用(如直流驱动,直流-交流逆变器,开关电源等等)。 1 PWM 发生器的设计 桥式变换器应用在直流电机调速系统中的主要电路结构如图1所示,开关控制基本上采用 PWM技术。 图1 桥式变换器原理图 PWM信号发生器一般是通过模拟电路或者是 基于微处理器的软件控制技术来实现,但随着高速开关器件的涌现,对于复杂的调制技术,即使采用最先进的DSP(数字信号处理器)也很难实现。 随着超大规模集成电路的集成度和工艺水平的不断提高,专用集成电路ASIC的设计成本在不断降低。CPLD/FPGA是实现ASIC的主流器件,它们具有极大的灵活性和通用性,工作速度快,开发效率高,成本低,可靠性好。近年来,CPLD在电机控制系统中的应用收到了系统设计人员越来越多的重视。用CPLD来设计PWM发生器将会简化控制系统的硬件和软件设计,获得更高的开关频率,减少微处理器的计算工作量。 VHDL具有与具体硬件电路无关和与设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化、结构化设计方面表现了强大的生命力和应用潜力[2],因此本文选用VHDL语言进行编程,用一片CPLD设计了PWM发生器。 由于桥式PWM变换器的工作状态是确定的,所以采用状态机方式来编程[3]也是情有可原,虽然只有六个状态,但其程序实现起来是很复杂的。用数字比较器代替模拟比较器、用线性计数器代替锯齿波发生器来产生PWM信号[4,5]的设计方法也很繁琐。在分析了桥式PWM变换器工作原理的基础上,本文采用了一种巧妙的方法来设计,其原理简单,程序容易实现。 收稿日期:2010-03-24 作者简介:耿伟松(1990-),男,江苏连云港人,本科在读,研究方向为电气工程及自动化。

浅谈利用单片机设计PWM脉冲信号发生器

浅谈利用单片机设计PWM脉冲信号发生器 发表时间:2014-01-09T11:41:33.297Z 来源:《中国科技教育·理论版》2013年第11期供稿作者:王雪娇胡恒铮 [导读] 除此之外,模拟电路中许多的元器件会发热,也就相对提高了电路的功耗,并且对噪声也敏感,任何干扰或噪声都会改变电流值的大小。 王雪娇胡恒铮无锡技师学院 214153 摘要脉冲宽度调制(PWM)在电子技术领域中应用十分广泛,但是利用模拟电路实现脉宽调制功能十分复杂、不经济。随着微处理器的发展,运用数字输出方式去控制实现PWM的功能就变得简单快捷,本文就如何利用89S52单片机软件编程设计出周期一定而占空比可调的脉冲波,也就是实现PWM功能进行设计,它可以代替模拟电路的PWM脉冲信号发生器。 关键词单片机 PWM 数字控制 PWM是脉冲宽度调制(Pulse Width Modulation)的英文缩写,它是开关型稳压电源中按稳压的控制方式分类中的一种,而脉宽宽度调制式(PWM)开关型稳压电路是在控制电路输出频率不变的情况下,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。 简单的说,PWM是一种对模拟信号电平进行数字编码的方法。理论上讲就是电压或电流源以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的,通的时候就是电源被加到负载上,断的时候就是供电被断开的时候,所以PWM信号仍然是数字的。要想达到这样一种脉宽调制效果,模拟电压和电流时可以直接控制。例如音响的音量控制,在简单的模拟电路中,它的控制是由连接了一个可变电阻的旋钮来实现的,其过程是拧动旋钮,电阻值变小或变大,流过该电阻的电流也随之增加来减小,从而改变驱动扬声器的电流值,那么声音也就相应变大或变小。从这个例子来看,模拟控制是直观而简单的,但是并不是所有的模拟电路都是可行并且经济的,其中很重要的一点就是模拟电路容易随时间漂移,它的调节过程就很困难,为了解决问题就要增加很多的电路,使得电路变得复杂并且昂贵。除此之外,模拟电路中许多的元器件会发热,也就相对提高了电路的功耗,并且对噪声也敏感,任何干扰或噪声都会改变电流值的大小。 综上所述,通过数字方式来控制模拟电路可以大幅度降低系统的成本和功耗,而单片机I/O口的数字输出可以很简单地发出一个脉冲波,在配以外部元器件就可以调节脉冲波的占空比,完成PWM的功能。本文主要介绍利用89S52系列的单片机,控制某个I/O口中一个管脚的数字输出,生成相应周期的脉冲波,并利用按键控制其占空比的调节,包括了占空比自小到大和自大到校的顺序及倒序可调,其调节范围广,操作简便,各元器件间的干扰较小,对模拟电路的控制十分有效。 1.PWM波的生成 PWM波既为数字输出,就是其幅值只有高电平(ON)和低电平(OFF)之分,所以只要使单片机中作为PWM波输出端的那个管脚输出“1”和“0”,并且搭配不同的时间段,就可以形成不同周期的PWM波。举例说明:若要生成周期为10ms的脉冲,就可以利用单片机编程指令控制其输出端输出“1”,并且保持一段时间tp,然后再输出“0”,同样使其保持一段时间tr,两种数字输出保持的时间必须要满足,现就已生成10ms周期的脉冲波,而PWM波与该脉冲波的区别就是还要能够调节占空比。占空比是指正半周脉宽占整个周期的比例,即高电平保持时间于周期的比值,该比值为百分数(),因此在周期一定的情况下,调节占空比就是调节高电平保持的时间。 2.应用编程 本文介绍的PWM波是利用单片机定时中断去确定脉冲波的周期,并且通过两个按键自增和自减某个变量送至中断中,通过此变量去分配高低电平各自占用的时间,形成不同的占空比,即假设一个周期满额比例值为10,则高电平保持时间的比例为该变量值,那么低电平保持时间的比例就是10减去该变量值。 如图1所示为单片机的外部接线图,其中省略了单片机最小系统,此图即可利用89SC52单片机设计出满足周期为10ms、初始占空比为50%、占空比调节范围为0~100%的PWM脉冲信号发生器。占空比调节范围是指高电平保持时间为0~10ms,那么低电平保持时间就是10ms~0。P0.7脚为PWM波输出口,作为PWM脉冲信号发生器可连接其它电路,本文仅连接示波器去观察波形的占空比变化情况,P2.0脚为自增按钮控制端,每按一次高电平保持时间增加1ms,P2.1脚为自减按钮控制端,每按一次高电平保持时间减少1ms。图2所示为初始

实验三:PWM信号发生器

实验三:PWM信号发生器 1.实验目的 (1)学习Quartus II 8.0 软件的基本使用方法。 (2)学习GW48-CK EDA实验开发系统的基本使用方法。 (3)学习VHDL程序中数据对象,数据类型,顺序语句和并行语句的综合使用。 2.实验内容 设计并调试好一个脉宽数控调制信号发生器,此信号发生器是由两个完全相同的可自加载加法计数器LCNT8组成的,它的信号的高低电平脉宽可分别由两组8位预置数进行控制。 3.实验条件 (1)开发软件:Quartus II 8.0。 (2)实验设备:GW48-CK EDA实验开发系统。 (3)拟用芯片:EPM7128S-PL84。 4.实验要求 (1)画出系统原理框图,说明系统中各主要组成部分的功能。 (2)编写各个VHDL源程序。 (3)根据系统功能,选好测试用例,画出测试输入信号波形或编好测试文件。 (4)根据选用的EDA实验开发装置编好用于硬件验证的管脚锁定表格或文件。 (5)记录系统仿真、逻辑综合及硬件验证结果。 (6)记录实验过程中出现的问题及解决办法。 5.实验过程 (1)PWM即脉冲宽度调制,就是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。PWM从处理器到被控制系统信号都是数字式的,无需进行数/模转换。 让信号保持为数字形式可将噪声影响降到最小,因此广泛应用在测量、通信和功率控制与变换的许多领域中。 下图是一种PWM信号发生器的逻辑图,此信号发生器是由两个完全相同的可自加载加法计数器LCNT8组成的,它的输出信号的高、低电平脉宽可分别由两组8位预置数进行控制。

如果将初始值可预置的加法计数器的溢出信号作为本计数器的初始预置值加载信号LD,则可构成计数器初始值自加载方式的加法计数器,从而构成数控分频器。图中D 触发器的一个重要功能就是均匀输出信号的占空比,提高驱动能力,这对驱动,诸如扬声器或电动机十分重要。 (2)VHDL源程序 ①8位可自加载加法计数器的源程序LCNT8.VHD --LCNT8.VHD LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY LCNT8 IS PORT(CLK,LD:IN STD_LOGIC; D:IN INTEGER RANGE 0 TO 255; CAO:OUT STD_LOGIC); END ENTITY LCNT8; ARCHITECTURE ART OF LCNT8 IS SIGNAL COUNT:INTEGER RANGE 0 TO 255; BEGIN PROCESS(CLK)IS BEGIN IF CLK'EVENT AND CLK='1'THEN IF LD='1'THEN COUNT<=D; ELSE COUNT<=COUNT+1; END IF; END IF; END PROCESS; PROCESS(COUNT)IS BEGIN IF COUNT=255 THEN CAO<='1'; ELSE CAO<='0'; END IF; END PROCESS; END ARCHITECTURE ART; ②PWM信号发生器的源程序PWM.VHD

基于AT89S51单片机的PWM专用信号发生器设计

基于AT89S51单片机的PWM专用信号发生器设计 2007年08月02日星期四 13:20 基于AT89S51单片机的PWM专用信号发生器设计 摘要:介绍一种脉冲涡流无损检测系统所使用的多波形专用PWM信号发生器的设计。该信号发生器以单片机为核心控制单元,通过对外围芯片的控制来实现对输出波形的频率、电压幅值、占空比的连续调节,并能对运行信号参数进行实时显示。经实验验证,该信号发生器便于观察和调节,完全满足脉冲涡流检测系统所需激励信号的要求。 关键词:无损检测;脉冲涡流; PWM;单片机 1 引言 涡流无损检测作为无损检测应用最广泛的方法之一,具有传感器结构简单、灵敏度高、测量范围大、不受油污等介质影响、抗干扰能力强等优点,已被广泛应用于冶金、机械、化工、航空等多个工业部门。然而由于受趋肤效应的影响,常被限制在对导体表面及亚表面层的检测上,这使其检测应用范围受到了很大的限制。但是,若检测线圈在脉冲激励作用下,因脉冲信号中含有丰富、连续的频率成分,所以检测线圈中所得到的信息不仅包含了被检测试件的表面、亚表面信息,还包含其深度信息,能够对材质以及缺陷进行定量评价。而脉冲信号的波形、频率、幅值、占空比等参数的改变对检测结果有着不同的影响。因此为了获得不同的脉冲激励下的检测结果。特制作了这一专用高精度大功率脉冲信号发生器。 2 硬件设计 为满足试验要求,该信号发生器的设计目的是能产生多个波形,且频率,电压,占空比均可以调节的高精度,大功率脉冲信号。该信号发生器的硬件部分:通过单片机控制数模转换芯片输出不同的波形,再经过两级放大以及高频模拟开关进行波形整形得到较为完美的波形后,再用一组达林顿管进行电流放大得到较大功率的脉冲信号。系统硬件框图如图1示。

PWM信号发生电路

1.P W M信号概述 脉冲宽度调制(PWM)信号广泛使用在电力变流技术中,以其作为控制信号可完成DC-DC变换(开关电源)、DC-AC变换(逆变电源)、AC-AC变换(斩控调压)和AC-DC变换(功率因数校正)。 产生PWM信号的方法有多种,现分别论述如下: 1)普通电子元件构成PWM发生器电路 信 PWM产生过程和灵活调节各项参数。 2.电子元件构成PWM发生器电路

图2 PWM信号发生器电路图 SG3525采用恒频脉宽调制控制方案,内部包含有精密基准源、锯齿波振荡器、误差放大器、比较器、分频器和保护电路等。调节Ur的大小,在OUTA、

OUTB两端可输出两个幅度相等、频率相等、相位相差一个周期、占空比可调的矩形波(即PWM信号)。它适用于各开关电源、斩波器的控制。占空比控制端Ur与输出端OUTA、OUTB两端波形图如图3所示。 图3 Ur与OUTA、OUTB波形图 SG3525是电流控制型PWM控制器,所谓电流控制型脉宽调制器是按照所接反馈电流来调节脉宽的。在脉宽比较器的输入端直接用流过输出电感线圈的信号与误差放大器输出信号进行比较,从而调节占空比使输出的电感峰值电流跟随误差电压变化而变化。由于结构上有电压环和电流环双环系统,因此,无论开关电源的电压调整率、负载调整率和瞬态响应特性都有提高,是目前比较理想的新型控制器。 SG3525芯片内部功能框图如图4所示。 图4 SG3525芯片内部功能框图 各引脚功能如下所述: 1.Inv.input(引脚1):误差放大器反向输入端。在闭环系统中,该引脚接反馈信号。在开环系统中,该端与补偿信号输入端(引脚9)相连,可构成跟随器。

基于AT89C51的PWM信号发生器设计报告

基于AT89C51的PWM信号发生器设计 摘要 单片机集成度高,功能强,可靠性高,体积小,功耗低,使用方便,价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎无处不在,无所不为。单片机的应用领域已经从面向工业控制,通讯,交通,智能仪表等迅速发展到家用消费产品,办公自动化,汽车电子,PC机外围以及网络通讯等广大领域。 单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,成为普林斯机构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前单片机以采用程序存储器截然分开的结构多。本课题讨论的占空比与周期可调的信号发生器的核心是目前应用极为广泛的51系列单片机。 基于单片机的信号发生器的设计,该课题的设计目的是充分运用大学期间所学的专业知识,考察现在正在使用的信号发生器的基本功能,完成一个基本的实际系统的设计全过程。关键是这个实际系统设计的过程,在整个过程中我可以充分发挥自动化的专业知识。特别是这个信号发生器的设计中涉及到一个典型的控制过程。通过单片机控制一个有特殊功能的信号发生芯片,可以产生一系列有规律的周期和占空比可调的波形。这样一个信号发生器装置在控制领域有相当广泛的应用范围。因为产生一系列的可调波形可以作为其他一些设备的数值输入,还可以应用与设备检测,仪器调试等场合。高频稳定的波形信号也可以用于无线电波的调频,解调。这些都是现代生活中必不可少的一些应用。 关键词:PWM 信号发生器

目录 1.简介............................................................... - 3 - 1.1 proteus ...................................................... - 3 - 1.2 Keil ......................................................... - 4 - 1.3 PWM .......................................................... - 5 - 1.4 AT89C51 ..................................................... - 6 - 2.设计原理和方法..................................................... - 9 - 2.1单片机的基本组成.............................................. - 9 - 2.2方案的设计与选择.............................................. - 9 - 2.3定时器、的工作原理........................................... - 10 - 2.3.1工作方式寄存器TMOD..................................... - 11 - 2.3.2定时/计数器控制寄存器TCON.............................. - 12 - 2.4定时/计数器的工作方式........................................ - 12 - 2.5设计方法..................................................... - 13 - 3.系统硬件电路设计图................................................ - 14 - 4.程序框图.......................................................... - 16 - 4.1主程序框图:................................................. - 16 - 4.2系统初始化:................................................. - 16 - 4.3定时器中断程序框图:......................................... - 16 - 4.4键盘扫描程序框图:........................................... - 17 - 5.性能分析.......................................................... - 18 - 5.1定时器中断分析............................................... - 18 - 5.2系统性能分析................................................. - 18 - 6.源程序............................................................ - 18 - 7. 仿真效果图....................................................... - 22 - 总结.............................................................. - 24 - 致谢.............................................................. - 24 - 参考文献............................................................ - 25 -

PWM信号发生电路

1.PWM信号概述 脉冲宽度调制(PWM)信号广泛使用在电力变流技术中,以其作为控制信号可完成DC-DC变换(开关电源)、DC-AC变换(逆变电源)、AC-AC变换(斩控调压)和AC-DC变换(功率因数校正)。 产生PWM信号的方法有多种,现分别论述如下: 1)普通电子元件构成PWM发生器电路 基本原理是由三角波或锯齿波发生器产生高频调制波,经比较器产生PWM 信号。三角波或锯齿波与可调直流电压比较,产生可调占空比PWM信号;与正弦基波比较,产生占空比按正弦规律变化的SPWM信号。 此方法优点是成本低、各环节波形和电压值可观测、易于扩展应用电路等。缺点是电路集成度低,不利于产品化。 2)单片机自动生成PWM信号 基本原理是由单片机内部集成PWM发生器模块在程序控制下产生PWM信号。 优点是电路简单、便于程序控制。缺点是不利于学生观测PWM产生过程,闭环控制复杂和使用时受单片机性能制约。 3)可编程逻辑器件编程产生PWM信号 基本原理是以复杂可编程逻辑器件(CPLD)或现场可编程门阵列器件(FPGA)为硬件基础,设计专用程序产生PWM信号。 优点是电路简单、PWM频率和占空比定量准确。缺点是闭环控制复杂,产生SPWM信号难度大。

4)专用芯片产生PWM信号 是生产厂家设计、生产的特定功能芯片。 优点是使用方便、安全,便于应用到产品设计中。缺点是不利于学生观测PWM产生过程和灵活调节各项参数。 2.电子元件构成PWM发生器电路 图1电子元件构成PWM发生器电路 3.集成芯片SG3525构成PWM发生器电路 一、PWM信号发生电路说明 实验电路中,驱动开关管的PWM信号由专用PWM控制集成芯片SG3525产生(美国Silicon General公司生产),PWM信号发生器电路如图2所示。

湖南工业大学EDA实验报告之PWM信号发生器的设计

实验三:PWM信号发生器的设计 1.实验目的 (1)熟悉Quartus Ⅱ/ISE Suite/ispLEVER软件的基本使用方法。 (2)熟悉GW48-CK或其他EDA实验开发系统的基本使用方法。 (3)学习VHDL程序中数据对象、数据类型、顺序语句和并行语句的综合使用。 2.实验内容 设计并调试好一个脉宽数控调制信号发生器,此信号发生器是由两个完全相同的可自加载加法计数器LCNT8组成的,它的输出信号的高/低电平脉宽可分别由两组8位预置数进行控制。 用GW48-CK或其他EDA实验开发系统(事先应选定拟采用的实验芯片的型号)进行硬件验证。 3.实验要求 (1)画出系统的原理图,说明系统中各主要组成部分的功能。 (2)编写各个VHDL源程序。 (3)根据系统的功能,选好测试用例,画出测试输入信号波形或编号测试程序。 (4)根据选用的EDA实验开发装置编好用于硬件验证的管脚锁定表格或文件。 (5)记录系统仿真、逻辑综合及硬件验证结果。 (6)记录实验过程中出现的问题及解决办法。 4.实验条件 (1)开发条件:Quartus Ⅱ 8.0。 (2)实验设备:GW48-CK实验开发系统。 (3)拟用芯片:EP3C55F484C8N。 5.实验设计 1)系统原理图 本信号发生器电路PWM的设计分为两个层次,其中底层电路包括两个完全相同的可自加载加法计数器LCNT8组成的,它的输出信号的高/低电平脉宽可分别由两组8位预置数进行控制。 加法计数器LCNT8,再由这两个模块按照图3.1所示的原理图构成顶层电路PWM。 LCNT8 图3.1 LCNT8电路原理图

图 3.1 PWM电路原理图 2)VHDL程序 信号发生器PWM的底层和顶层电路均采用VHDL文本输入,有关VHDL程序如下。LCNT8的VHDL源程序: --LCNT8.VHD LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ---USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY LCNT8 IS PORT(CLK,LD:IN STD_LOGIC; D:IN INTEGER RANGE 0 TO 255; CAO:OUT STD_LOGIC); END ENTITY LCNT8; ARCHITECTURE ART OF LCNT8 IS SIGNAL COUNT:INTEGER RANGE 0 TO 255; BEGIN PROCESS(CLK) IS BEGIN IF CLK'EVENT AND CLK='1'THEN IF LD='1' THEN COUNT<=D; ELSE COUNT<=COUNT +1; END IF; END IF; END PROCESS; PROCESS(COUNT) IS BEGIN IF COUNT=255 THEN CAO<='1'; ELSE CAO<='0'; END IF; END PROCESS;

PWM信号发生器的研制

专业课程设计报告 题 目: PWM 信号发生器的研制 南昌航空大学信息工程学院 2014 年6 月21日 姓 名: 赵清 专 业: 通信工程 班级学号: 11042301 同 组 人 : 余秋杰 指导教师: 刘敏

专业课程设计任务书2013-2014学年第 2 学期第 16 周- 19 周 题目PWM信号发生器的研制 内容及要求 (1)采用定时/计数器8253; (2)PWM信号的工作频率为500Hz; (3)占空比可变且显示占空比。 显示器单片机定时/计数器整形PWM 进度安排 第16周:查阅资料,确定方案,完成原理图设计及仿真; 第17周:领取元器件、仪器设备,制作、焊接电路; 第18周:调试电路,完成系统的设计; 第19周:检查设计结果、撰写课设报告。 学生姓名:赵清、余秋杰 指导时间:第16~19周指导地点:E楼603室任务下达2014年 6 月2 日任务完成2014年6月27日 考核方式 1.评阅□√ 2.答辩□ 3.实际操作□√ 4.其它□指导教师刘敏系(部)主任李忠民

摘要 PWM(Pulse Width Modulation)又称脉冲宽度调制,属于脉冲调制的一种。PWM 技术广泛运用于各种工业电力传动领域乃至家电产品中。本文主要介绍了PWM信号发生器的概念、作用及定义,分析了系统的工作原理和软硬件的设计。主要是以AT89C51单片机为核心控制单元,通过对外围电路芯片的设计实现PWM输出波形的频率、电压幅值、占空比的连续调节,达到产生PWM信号目的。 关键字:控制单元、脉冲信号、占空比

目录 第一章系统组成与工作原理................................................. 错误!未定义书签。 1.1 系统组成 ........................................................................ 错误!未定义书签。 1.2 工作原理 ........................................................................ 错误!未定义书签。第二章硬件电路方案设计..................................................... 错误!未定义书签。 2.1 设计方案的选择 ............................................................ 错误!未定义书签。 2.1.1 方案一 ....................................................................... 错误!未定义书签。 2.1.2 方案二 ....................................................................... 错误!未定义书签。 2.2 单元电路设计 (2) 2.2.1 振荡电路 (2) 2.2.2 复位电路 (3) 2.2.3 按键电路 ................................................................. 错误!未定义书签。 2.2.4 显示电路 ................................................................. 错误!未定义书签。第三章软件设计 ..................................................................... 错误!未定义书签。 3.1 编程语言的选择 ............................................................ 错误!未定义书签。 3.2 采用C语言的软件设计 ............................................... 错误!未定义书签。 3.2.1 设计流程图 (5) 3.2.2 定时/计数器的程序设计 (6) 3.2.3 按键及延时程序设计 (6) 3.2.4 显示模块程序设计 .................................................. 错误!未定义书签。 3.3 采用VHDL语言的软件设计 ....................................... 错误!未定义书签。 3.3.1 基本设计思想 (8) 3.3.2 设计流程图 .............................................................. 错误!未定义书签。 3.3.3 主要程序代码 (9) 第四章系统的调试与分析 (10) 4.1 主要仪器和工具 (10) 4.2 调试过程 (10) 4.3 测试结果与分析 (10) 结论 (13) 参考文献 (14) 附录 (15)

PWM信号发生器的设计

Yibin University 电子信息技术与科学专业 题目 PWM信号发生器的设计 专业电子信息科学与技术 学生姓名 ***** 学号 ******** 年级物电2011级 班级 3班 指导教师 ****** 2013年 12 月 8 日

PWM信号发生器的设计 一、设计内容 设计一个能够均匀输出给定占空比的脉冲宽调制信号,通过两个可加载8位计数器lcnt8.v实现本设计。若初始时D触发器输出为高电平时, U1不能加载A,若已复位只能完成0到255的加计数,在计到255时产生输出cao1,经反相后异步清除d触发器,经反相后,ld1变高,使u1完成加载A,但只能保持加载状态,直到u2计数完成,产生cao2使d触发器输出高电平,ld1变低,u1开始从A的加计数,计到255后,产生输出cao1,经反相后异步清除d触发器,如此循环。D触发器输出高电平使u2加载,但持续的高电平维持加载使u2计数状态维持在B,只有当d触发器清除后,u2开始从B的加计数,计到255后产生输出cao2,使D触发器输出为高电平,如此循环。 二、设计方案 基于现场可编程逻辑门阵列FPGA,通过EDA技术,采用VHDL硬件描述语言实现数控脉冲宽度调制信号发生器设计。程序设计思想为:对输入信号A、B采用不同的八位二进制代码表示高低电平持续时间,由时钟上沿触发加计数器进行加计数功能,至于计数器u1、u2谁工作取决于其后接的D触发器输出的高低电平状态,低电平使u1工作,高电平使u2工作。再通过组合逻辑电路输出结果状态。其原理框图 图一脉宽数控调制信号发生器逻辑图 而基于FPGA则是把相应的逻辑“暂时”固化为硬件电路了,它对激励作出的响应速度就是电信号从FPGA的一个管脚传播另一个管脚的传播速度,当然这指的是异步逻辑,同时电信号也要在芯片内进行一些栅电容的充放电动作,但这些动作都是非常非常快的。如果将初始值可预置的加法计数器的溢出信号作为本计数器的初始预置加载信号LD,则可构成计数初始值自加载方式的加法计数器,

PWM信号源的制作

PWM信号源的制作 引言:脉宽调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,该技术广泛应用在测量、通信、功率控制与变换等许多领域中。作为一个具体的例子,我们来考察一种用PWM控制直流电机。要使电机的速度可调和方向可变,只需通过软件加大或减小PWM的占空比就可以改变。PWM技术在调压调速技术中的应用己基本普遍,调压调速技术的核心是脉冲宽度调制(PWM)控制技术。 (一)PWM直流调速的特点 PWM直流调速系统是强弱电均有、控制与信号处理结合、机电一体的综合性技术。既要处理巨大电能的转换,又要处理信息的收集、变换、传输和控制。因此结构上分为功率和控制两大部分。前者要解决与高压大电流有关的技术问题和新型电力电子器件的应用技术问题,后者要解决基于控制技术和计算机技术的硬、软件开发问题。 (二)直流电动机的PWM调压调速原理 绝大多数直流电动机采用开关驱动方式。开关驱动方式是使半导体器件工作在开关状态,通过脉宽调制PWM来控制电动机电枢电压,实现调速。 图1-1是利用开关管对直流电动机进行PWM调速控制的原理图和输入输出电压波形。在图1-1(b)中,当开关管MOSFET的栅极输入高电平时,开关管导通,直流电动机电枢绕组两端有电压US。t1秒后,栅极输入变为低电平,开关管截止,电动机电枢两端电压为0。T2秒后,栅极输入重新变为高电平,开头管的动作重复前面的过程。这样,对应着输入的电平高低,直流电动机电枢绕组两端的电压波形如图1-1(b)所示。电动机的电枢绕组两端的电压平均值U0为:U0=(t1US+0)/(t1+t2)= t1 US/T=a US(式1-1) 式中a—占空比,a= t1/T 。 图1-1 占空比a表示了在一个周期T里,开关管导通的时间与周期的比值,a的变化范围为0≤a≤1。由式(1-1)可知,当电源电压US不变的情况下,电枢的端电压的平均值U0取习决于占空比a的大小,改变a的值就可以改变端电压的平均值,从而达到调速的目的,这就是PWM调速的原理。 在PWM调速时,占空比a是一个重要参数。以下3种方式都可以改变占空比的值。

相关文档
最新文档