当前位置:文档之家› 正负脉宽数控调制信号发生器

正负脉宽数控调制信号发生器

正负脉宽数控调制信号发生器
正负脉宽数控调制信号发生器

目录

摘要................................................................................................................................ I Abstract ......................................................................................................................... II 1、绪论.. (1)

1.1 EDA和QuartusⅡ的简介及起源 (1)

1.2 EDA的优势 (1)

1.3 EDA发展趋势 (2)

2、设计任务与要求 (3)

2.1课程设计的任务 (3)

2.2课程设计的基本要求 (3)

3、设计原理 (4)

4、功能模块 (5)

4.1 分频器div (5)

4.2 可预置数计数器 (6)

4.3 数码动态扫描显示 (9)

5、总体设计电路图 (12)

5.1 总体电路图[2][5] (12)

5.2 顶层文件 (13)

6、程序下载及结果分析 (16)

6.1 管脚分配情况 (16)

6.2 结果验证 (16)

7、课程设计心得体会 (18)

参考文献 (19)

摘要

QuartusⅡ是Altera提供的FPGA/CPLD开发集成环境,Altera是世界上最大的可编程逻辑器件供应商之一。QuartusⅡ是在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+plus Ⅱ的更新换代产品,其界面友好,使用环境便捷。它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。

本设计采用Quartus编写程序并进行仿真,由两个完全相同的可自加载计数器LCNT8组成的,它的输出信号的高低电平脉宽可分别由两组8位预置数进行控制。

关键词:Quartus 计数器预置数

Abstract

Quartus II is the FPGA/CPLD integrated development environment provided by Altera, Altera is one of the world's largest suppliers of programmable logic devices. Quartus II was launched in the beginning of the 21st century are Altera previous-generation integrated development environment MAX+plus FPGA/CPLD ⅱ of the replacement products, its friendly interface, use the convenient environment. It provides a structure-neutral design environment, enabling designers to easily design input, rapid processing and device programming.

Design and write programs using Quartus and simulation, consisting of two identical load counters LCNT8, its output signal of high and low level pulse width can be separately controlled by two groups of 8 preset number.

Key word:Quartus, counters, preset number

1、绪论

1.1 EDA和QuartusⅡ的简介及起源

EDA技术是20世纪90年代迅速发展起来的,是现代电子设计的最新技术潮流,是电子线路设计与分析的一门技术。EDA包括电子线路的设计、计算机模拟仿真和电路分析及印制电路板的自动化设计三个方面的内容。随着可编程逻辑器件迅速发展,出现了功能强大的全新的EDA工具。具有较强描述能力的硬件描述语言(VHDL、Verilog HDL)及高性能综合工具的使用,使过去单功能电子产品开发转向系统级电子产品开发。

QuartusⅡ是Altera提供的FPGA/CPLD开发集成环境,Altera是世界上最大的可编程逻辑器件供应商之一。QuartusⅡ是在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+plus Ⅱ的更新换代产品,其界面友好,使用环境便捷。它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。

QuartusⅡ设计工具完全支持VHDL、Verilog的设计流程,其内部嵌有VHDL、Verlog逻辑综合器。QuartusⅡ包括模块化的编译器。编译器包括的功能模块有分析/综合器(Analysis & Synthesis)、适配器(Fitter)、装配器(Assembler)、时序分析器(Timing Analyzer)、设计辅助模块(Design Assistant)、EDA网表文件生成器(EDA Netlist Writer)、编辑数据接口(Compiler Database Interface)等。可以通过选择Start Compilation来运行所有的编译器模块,也可以通过选择Start来单独运行各个模块。还可以通过选择Compiler Tool,在Compiler Tool窗口中运行该模块来启动编译器模块。在Compile Tool窗口中,可以打开该模块的设置文件或报告文件,或打开其它相关窗口。

1.2 EDA的优势

EDA技术的优势体现在:

用VHDL对数字系统进行抽象的行为与功能描述到具体的内部线路结构,从而可以在电子设计的各个阶段、各个层次进行计算机模拟验证,保证

设计过程的正确性,可以大大降低设计成本,缩短设计周期。

●EDA工具之所以能够完成各种自动设计过程,关键是有种类库的支持,

如逻辑仿真时的模拟库、逻辑综合时的综合库、版图综合时的版图库、

测试综合时的测试库等。

●某些HDL本身也是文档型的语言(如VHDL),极大地简化了设计文档的

管理。

●EDA中最为瞩目的功能,最具现代化电子设计技术特征的功能,是日益

强大的逻辑设计仿真测试技术。极大地提高了大规模系统电子设计的自

动化程度。

1.3 EDA发展趋势

表现在以下几个方面:

●超大规模集成电路的集成度和工艺水平不断提高,深亚微米

(Deep-Submicron)工艺,如0.13um、90nm已经走向成熟,在一个芯片

上完成的系统级的集成已经成为可能。

●由于工艺不断减小,在半导体材料上的许多寄生效应已经不能简单地补

码忽略,这就对EDA工具提出了更高的要求。同时,也使得IC生产线的

投资更为巨大。

●高性能的EDA工具得到长足的发展,其自动化和智能化程度不断提高,

为嵌入式系统设计提供了功能强大的开发环境。

●市场对电子产品提出了更高的要求,从而也对系统的集成度不断提出更

高的要求。同时,设计的效率也成了一个产品能否成功的因素,促使EDA

工具应用更为广泛。

2、设计任务与要求

2.1课程设计的任务

此信号发生器可产生占空比可调的方波,高低电平的维持时间由8位二进制数控制。

2.2课程设计的基本要求

通过课程设计各环节的实践,应达到如下要求:

1、初步掌握数字逻辑电路、EDA分析和设计的基本方法。包括:

⑴.根据设计任务和要求,初选电路;

⑵.通过研究、设计计算,确定电路方案;

⑶.电路仿真及编程、模拟、连线、进行调试;

⑷.分析实验结果,写出设计总结报告。

2、培养一定自学能力和独立分析问题、解决问题能力。包括:

⑴.学会自己分析、找出解决问题的方法;

⑵.对设计中遇到的问题,能独立思考,查阅资料,寻找解决方案;

⑶.掌握一些测试电路的基本方法,实验中出现一般故障,能独立解决;

⑷.能对实验结果进行分析和评价。

3、掌握编程、仿真、连线、调试等基本技能。

3、设计原理

总体框架图如图3.1所示:[4]

图3.1 总体框图

设计思路:

此信号发生器是由两个完全相同但使能端有效电平不同的的可自加载加法计数器组成的,它的输出信号的高低电平脉宽时间可分别由两组8位二进制预置数进行控制。

如果将信号发生器的输出端作为本计数器的初始预置加载信号ld1,取反后的作为ld2,那么cnt1和cnt2分开工作,则可构成计数初始值自加载方式的加法计数器,从而构成数控分频器。

4、功能模块

4.1 分频器div

器件图如图4.1所示:

图4.1 分频器器件图

时钟信号接到分频器的输入端clk,分频器的输出端clk10(接到预置计数器的脉冲输入端CLK)它的作用是将高频信号分成低频信号,在本设计中,是把50MHZ分成1KHZ。[1]

分频器div的VHDL程序如下:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity counter100 is

port ( clk :in std_logic;

q :out std_logic);

end counter100;

architecture bahave of counter100 is

signal q0 :std_logic:='0';

begin

process(clk)

variable count :integer range 0 to 25000;

begin

if rising_edge(clk) then

if count<25000 then count:=count+1;

else q0<= NOT q0;count:=0;

end if;

end if;

end process;

q<=q0;

end bahave;

仿真波形如图4.2所示:

图4.2 分频器仿真波形

由于分频倍数太大,导致clk脉冲太密集,所以看不出来高低电平,但是能得出,分频后的输出信号q的周期是1ms。

仿真分析:任意给一个时钟信号,分频器将高频信号分成低频信号。

4.2 可预置数计数器

器件图如图4.3所示:

图4.3 计数器器件图

此计数器是一个8位二进制数的预置计数器,比普通计数器多了一个预置端ld和预置数据端d。当ld=1或0时,在下一个时钟脉冲过后,计数器输出端预置数d,clk为脉冲信号输入端,时钟信号经分频后接到clk端,cnt为计数溢出输出端。由于要接数码管显示成十进制数,所以需要将百、十、个位单独分出来[3]。程序如下:

library ieee;

use ieee.std_logic_1164.all;

entity cnt1 is

port(clk,ld:in std_logic;

d:in integer range 0 to 255;

cnt:out std_logic;

bai,shi,ge:out integer range 0 to 9);

end entity cnt1;

architecture art of cnt1 is

signal count,count1:integer range 0 to 255;

signal s1,s2,s3:integer range 0 to 9;

signal e:integer range 0 to 99;

begin

process(clk) is

begin

if clk'event and clk='1' then

if ld='1' then count<=d-1;

else count<=count-1;

end if;

end if;

end process;

process(clk,count) is

begin

if clk'event and clk='1' then

if count=0 then cnt<='1';else cnt<='0';

end if;

end if;

end process;

count1<=d;

s1<=count1 rem 10;

e<=count1/10;

s2<=e rem 10;

s3<=count1/100;

bai<=s3;

shi<=s2;

ge<=s1;

end architecture art;

仿真结果如图4.4、4.5所示:

图4.4 预置数

图4.5 溢出

仿真分析:图4.4中预置数D[7..0]为任意八位二进制数,预置端LD为1时,当时钟上升沿到来时,加载预置数,否则继续递减计数,当计到0

时输出为1(如图4.5),然后继续从所设置的预置数开始递减计数,

从而达到控制脉冲宽度的目的。

在此仿真过程中发现,由于计数到0,那么实际上是数了(预置数-0+1)ms,那么在程序中,开始递减的数据应该是(预置数-1)这样才能保持脉冲宽度大小与预置数相等。

4.3 数码动态扫描显示

本次课设所用的FPGA实验板中的数码管是共阳数码管,即将所有发光二极管的阳极接到一起形成公共阳极(COM),共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。

用数码管显示信息时,由于每个数码管至少需要8 个I/O 口,如果需要多个数码管,则需要太多I/O 口,所以在实际应用中,一般采用动态显示的方式解决此问题。[1]

在编程时,需要输出段选和位选信号,位选信号选中其中一个数码管,然后输出段码,使该数码管显示所需要的内容,延时一段时间后,再选中另一个数码管,再输出对应的段码,高速交替。利用人的视觉暂留作用使人看到多个数码管同时显示。在动态显示程序中,各个位的延时时间长短是非常重要的,如果延时时间长,则会出现闪烁现象;如果延时时间太短,则会出现显示暗且有重影。[2]相应程序如下:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity mux6_1 is

port( s1,s2,s3,s4,s5,s6:in std_logic_vector(3 downto 0);

clk:in std_logic;

segout :out std_logic_vector (6 downto 0);

count:out std_logic_vector (7 downto 0)); end mux6_1 ;

architecture one of mux6_1 is

signal CQI:std_logic_vector(2 downto 0);

signal dout:std_logic_vector (3 downto 0);

signal q0 :std_logic:='0';

begin

process(clk)

variable count0 :integer range 0 to 50000;

begin

if rising_edge(clk) then

if count0<50000 then count0:=count0+1;

else q0<= NOT q0;count0:=0;

end if;

end if;

end process;

process(q0)

begin

if q0'event and q0='1' then

if CQI="101" then

CQI<="000";

else

CQI<=CQI+1 ;

end if;

end if;

case CQI is

when "000"=>count<="11111110";dout<=s1;

when "001"=>count<="11111101";dout<=s2;

when "010"=>count<="11111011";dout<=s3;

when "011"=>count<="11011111";dout<=s4;

when "100"=>count<="10111111";dout<=s5;

when "101"=>count<="01111111";dout<=s6;

when others=>null;

end case;

end process;

process (dout)

begin

case dout is

when "0000" => segout<="1000000";

when "0001" => segout<="1111001";

when "0010" => segout<="0100100";

when "0011" => segout<="0110000";

when "0100" => segout<="0011001";

when "0101" => segout<="0010010";

when "0110" => segout<="0000010";

when "0111" => segout<="1111000";

when "1000" => segout<="0000000";

when "1001" => segout<="0010000";

when others=>segout<="1111111";

end case;

end process;

end one;

5、总体设计电路图5.1 总体电路图[2][5]

图5.1 整体电路图

5.2 顶层文件

library ieee;

use ieee.std_logic_1164.all;

entity pulse is

port( clk:in std_logic;

b:in std_logic_vector(7 downto 0);

key: in std_logic ;

psout:out std_logic;

segout :out std_logic_vector (6 downto 0);

count:out std_logic_vector (7 downto 0));

end entity pulse;

architecture art of pulse is

component cnt1 is

port(clk,ld:in std_logic;

d:in std_logic_vector(7 downto 0);

cnt:out std_logic;

bai,shi,ge:out integer range 0 to 9);

end component lcnt8 ;

component counter100 is

port ( clk :in std_logic;

q :out std_logic);

end component counter100 ;

component mux6_1 is

port( s1,s2,s3,s4,s5,s6:integer range 0 to 9;

clk:in std_logic;

segout :out std_logic_vector (0 to 6);

count:out std_logic_vector (7 downto 0));

end component mux6_1;

signal cnt1,cnt2:std_logic;

signal ld1,ld2,e:std_logic;

signal psint:std_logic;

signal ss1,ss2,ss3,ss4,ss5,ss6:integer range 0 to 9;

signal b1,b2:std_logic_vector(7 downto 0);

begin

u1:counter100 port map (clk=>clk,q=>e);

u2:cnt1 port map (clk=>e,ld=>ld1,d=>b1,cnt=>cnt1,bai=>ss3,shi=>ss2 ,ge=>ss1);

u3:cnt1 port map (clk=>e,ld=>ld2,d=>b2,cnt=>cnt2,bai=>ss6,shi=>ss5 ,ge=>ss4);

u4:mux6_1 port map (ss6,ss5,ss4,ss3,ss2,ss1,clk,segout,count);

process(key)

begin

if key='1' then b1<=b;

else b2<=b;

end if;

end process;

process(cnt1,cnt2) is

begin

if cnt1='1' then psint<='0';

elsif cnt2'event and cnt2='1'then psint<='1';

end if;

end process;

ld1<=not psint;ld2<=psint;psout<=psint;

end architecture art;

由于实验板上只有八个拨码开关,为达到给两个计数器提供预置数的目的,使用了一个按键,按键按下去时,一个计数器预置数有效,按键松开时,另一个有效。[4]

6、程序下载及结果分析

6.1 管脚分配情况

6.2 结果验证

通过示波器观察实验结果:

STM32的PWM精讲

STM32的PWM精讲 通过对TM1定时器进行控制,使之各通道输出插入死区的互补PWM输出,各通道输出频率均为17.57KHz。其中,通道1输出的占空比为50%,通道2输出的占空比为25%,通道3输出的占空比为12.5%。各通道互补输出为反相输出。 TM1定时器的通道1到4的输出分别对应PA.08、PA.09、PA.10和PA.11 引脚,而通道1到3的互补输出分别对应PB.13、PB.14和PB.15引脚,中止输入引脚为PB.12。将这些引脚分别接入示波器,在示波器上观查相应通道占空比的方波[12]。 配置好各通道后,编译运行工程;点击MDK的Debug菜单,点击Start/Stop Debug Session;通过示波器察看 PA.08、PA.09、PA.10、PB.13、PB.14、PB.15 的输出波形,其中PA.08和PB.13为第一通道和互补通道,PB.09和PB.14为第二通道和其互补通道,PB.10和PB.15为第三通道和其互补通道;第一通道显示占空比为50%,第二通道占空比为25%,第三通道占空比为12.5%。 第2章STM32处理器概述 STM32F103xx增强型系列产品中内置了多达3个同步的标准定时器。每个定时器都有一个16位的自动加载递加/递减计数器、一个16位的预分频器和4个独立的通道,每个通道都可用于输入捕获、输出比较、PWM和单脉冲模式输出,在最大的封装配置中可提供最多12个输入捕获、输出比较或PWM通道。它们还能通过定时器链接功能与高级控制定时器共同工作,提供同步或事件链接功能。 在调试模式下,计数器可以被冻结。任一个标准定时器都能用于产生PWM 输出。每个定时器都有独立的DMA请求机制。 2.4.2 高级控制定时器[22] 高级控制定时器(TM1)由一个16位的自动装载计数器组成,它由一个可编程预分频器驱动。它适合多种用途,包含测量输入信号的脉冲宽度(输入捕获),或者产生输出波形(输出比较,PWM,嵌入死区时间的互补PWM等)。 使用定时器预分频器和RCC时钟控制预分频器,可以实现脉冲宽度和波形周期从几个微秒至几个毫秒的调节。高级控制(TIM1)和通用(TMx)定时器是完全

第6.1节 增强型脉宽调制器(ePWM)

第6章DSP片上控制与采样外设 6.1 增强型脉宽调制器(ePWM)

6.1.1 ePWM模块概述 ?增强型脉冲宽度调制器(ePWM) ?ePWM模块中每个完整的PWM通道都是由两个PWM输出组成,即ePWMxA和ePWMxB ?有时为了能够更精确控制PWM输出,加入了硬件扩展模块—高精度脉冲宽度调制器(HRPWM) ?当多个ePWM模块集成在一个器件内时,如图:

每个ePWM模块都具有以下特征: ●周期和频率可控的16位时间基准计数器。 ●两个PWM输出(EPWMxA,EPWMxB),可以配置成以下工作方式:两个 独立的带有单个边沿操作的PWM输出、两个独立的带有双边沿对称操作的PWM输出、一个独立的带有双边沿非对称操作的PWM输出。 ●通过软件可实现PWM信号的异步越权控制。 ●可编程的相位控制,以支持相对其它ePWM模块的相位滞后或超前操 作。 ●逐周期的硬件上相位同步。 ●独立的上升沿和下降沿死区延时控制。 ●可编程错误区域分配,用于故障时的逐周期控制和单次控制。 ●所有事件都可以触发CPU中断以及ADC启动转换(SOC)。 ●事件可预定标,减小CPU频繁响应中断的负担。 ●循环周期性的硬件锁定(同步)相位关系。 ●错误条件可强制PWM输出为高、低以及高阻状态。 ●高频载波信号实现PWM斩波,对于脉冲变压器门极驱动非常有用。

ePWM子模块概述 ?ePWM模块主要包含以下7部分:时间基准子模块;计数比较子模块;动作限定子模块;死区控制子模块;PWM斩波子模块;错误区域控制子模块和事件触发子模块。 ?每个ePWM模块都是由7个子模块组成,并且系统内通过信号进行连接,如图:

数字PWM直流调速设计

容摘要 本文是基于对直流电机PWM调速器设计的研究,主要实现对直流电机的控制。本设计主要是实现PWM调速器的正转、反转、减速、加速、停止的五大操作。并实现电路的仿真并设计实际电路进行控制。为实现系统的微机控制,在设计中,采用STC89C5单片机作为整个控制系统的控制电路的核心部分,驱动模块,实现通过PWM波对电动机转速参数的改变和测量;由命令输入模块、H型驱动模块组成。采用带中断的独立式键盘作为命令的输入,单片机在程序控制下,不断给电路发送PWM波形,完成电机正反转控制.是通过H型驱动电路,采用PWM调速方式,通过改变PWM的占空比从而改变电动机的电枢电压,进而实现对电动机的调速。设计的整个控制系统,在硬件结构上采用了大量的集成电路模块,大大简化硬件电路,提高了系统的稳定性和可靠性,使整个系统的性能得到提高。 索引关键词:直流电机调速;H桥驱动电路;LC显示器;51单片机

目录 第一章绪论 (1) 1.1 设计目的 (1) 1.2 设计背景 (1) 1.3 设计容 (1) 第二章数字PWM直流调速系统方案设计 (1) 2.1 直流电动机调速方法 (1) 2.2旋转变流机组缺点 (2) 第三章数字PWM直流调速系统主电路设计 (3) 3.1 主电路结构设计 (3) 3.2 SG3525引脚各端子功能 (4) 第四章数字PWM直流双闭环系统的电路设计 (5) 4.1 转速调节器ASR电路 (5) 4.2 PWM脉宽控制电路 (6) 后记 (8) 参考文献: (9)

数字PWM直流调速系统设计 第一章绪论 1.1 设计目的 通过对一个实用控制系统的设计,综合运用科学理论知识,提高工程意识和实践技能,使学生获得控制技术工程的基本训练,培养学生理论联系实际、分析解决实际问题的初步应用能力。近年来,科技发展的越来越快,直流电机具有良好的起动特性和调速特性。其中调速平滑,方便,可实现频繁的无极快速起动、制动和反转,能承受很大负载,需要满足生产过程自动化系统各种不同的特殊要求,但是随着科学技术的不断发展,PWM波调速的3 方法的发现,以及温度漂移等。而用PWM技术后,避免上述的缺点,不仅简化了电路还实现了通过电力电子器件改变开关频率,提高系统的稳定性还有抗干扰能力。随着我国经济和文化事业的发展,科技的进步,在很多场合,都要求有直流电机PWM调速系统来进行调速,诸如汽车行业中的各种风扇、火箭、雷达、战车等场合。 1.2 设计背景 在电气行业中,随着各项技术水平的不断提高,使得传统工艺有了深层次的提高,对人类的生产与生活,产生了深刻且深远的影响,已经与我们息息相关。当需要良好的启动,制动性能,并需要大围平滑调速时,直流电机是一个很好地选择非线性集成电路以及少量的数字电路组成的直流电机调速控制系统大多数都为早减小模拟信号控制间相互干扰,减小模拟信号产生温漂等不稳定因素。。它的发展趋势将是向大容量、高性能化、外围电路装化等方面发展。 1.3 设计容 近年来,科技发展的越来越快,直流电机具有良好的起动特性和调速特性。其中调速平滑,方便,可实现频繁的无极快速起动、制动和反转,能承受很大负载,需要满足生产过程自动化系统各种不同的特殊要求,但是随着科学技术的不断发展,PWM波调速的3 方法的发现,以及温度漂移等。而用PWM技术后,避免上述的缺点,不仅简化了电路还实现了通过电力电子器件改变开关频率,提高系统的稳定性还有抗干扰能力。随着我国经济和文化事业的发展,科技的进步,在很多场合,都要求有直流电机PWM调速系统来进行调速,诸如汽车行业中的各种风扇、火箭、雷达、战车等场合。 第二章数字PWM直流调速系统方案设计 2.1 直流电动机调速方法 直流电动机的调速方法有种: (1)调节电枢供电电压U。改变电枢电压主要是从额定电压往下降低电枢电压,从电动机额定转速向下变速,属恒转矩调速方法。对于要求在一定围无级平滑调速的系统来说,这种方法最好。 I变化遇到的时间常数较小,能快速响应,但是需要大容量可调直流电源。 a

基于DDS的数字移相信号发生器

EDA课程设计 课题名称_ 基于DDS的数字移相信号发生器 专业_ 电子信息工程____ _ _ 班级_____ _________ __ __ 学号_ 姓名_ __ __ 成绩_____ ____________ _ 指导教师___ _ ___ ___ 2014年 5 月7日

一、课程设计目的 (3) 二、设计任务 (3) 三、工作原理及模块分析 (3) 1、频率预置与调节电路 (4) 2、累加器 (4) 3、波形存储器 (4) 4、D/A转换器 (5) 四、相关程序 (5) 1、加法器 (5) (1)ADD10 (5) (2)ADD32 (7) 2、寄存器 (8) (1)REG10B (8) (2)REG32B (10) 3、ROM (11) 4、主程序 (13) 五、仿真结果: (16) 六、引脚配置和下载 (17) 七、实验心得 (18)

一、课程设计目的 1、进一步熟悉Quartus Ⅱ的软件使用方法; 2、熟悉利用VHDL设计数字系统并学习LPM_ADD_SUB、LPM ROM、LPM_FF 的使用方法; 3、学习FPGA硬件资源的使用和控制方法; 4、掌握DDS基本原理,学习利用此原理进行信号发生器的设计 二、设计任务 完成10位输出数据宽度的频率可调的移相正弦信号发生器,通过按键调节频率和初始相位,实现相位和频率可调的正弦信号发生器 三、工作原理及模块分析 直接数字频率合成器(DDS)是通信系统中常用到的部件,利用DDS可以制成很有用的信号源。与模拟式的频率锁相环PLL相比,它有许多优点,突出为(1)频率的切换迅速;(2)频率稳定度高。 一个直接数字频率合成器由相位累加器、波形ROM、D/A转换器和低通滤波器构成。DDS的原理框图如下所示: 频率预置与调节电路 累加器 累加器波形存储器 波形存储器D/A转换器 D/A转换器低通滤波器 低通滤波器K N位 N位 fc S(n) D位 S(t) 图1直接数字频率合成器原理图 其中K为频率控制字,fc为时钟频率,N为相位累加器的字长,D为ROM 数据位及D/A转换器的字长。相位累加器在时钟fc的控制下以步长K作为累加,输出N位二进制码作为波形ROM的地址,对波形ROM进行寻址,波形ROM输出的幅码S(n)经D/A转换器变成梯形波S(t),再经低通滤波器平滑后就可以得到合成的信号波形了。合成的信号波形形状取决于波形ROM中存放的幅码,因此用DDS可以产生任意波形。本设计中直接利用D/A转换器得到输出波形,省略了低通滤波器这一环节。

数控高精度低频正弦信号发生器

高精度数控低频正弦信号发生器 任务书 一、任务 设计一款基于AT89C51单片机和锁相技术的高精度数控低频正弦信号发生器。 二、设计要求 1、基本要求 ⑴采用DDFS(直接数字频率合成)和锁相技术, 实现1Hz~1KHz 变化的正弦信号。 ⑵通过面板键盘控制输出频率,频率最小步进1Hz。 ⑶输出双极性。 ⑷用LED数码管实时显示波形的相关参数。 ⑸写出详细的设计报告,给出全部电路和源程序。 2、发挥部分 ⑴不改变硬件设计,将上限频率扩展到10KHz。 ⑵不改变硬件设计,扩展实现三角波和方波信号。 ⑶可通过PC机上的“虚拟键盘”,实现频率等参数的控制。 ⑷实现对幅度的控制。

高精度数控低频正弦信号发生器 函数信号发生器作为一种常用的信号源,广泛应用于电子电路、自动控制和科学研究等领域[7]。它是一种为电子测量和计量工作提供符合严格技术要求的电信号设备,因此是电子测试系统的重要部件,是决定电子测试系统性能的关键设备。它与示波器、电压表、频率计等仪器一样是最普通、最基本的,也是得到最广泛应用的电子仪器之一。 1总体方案论证与设计 数字式函数信号发生器的实现方案很多,主要有如下几种: 方案一:采用微处理器和数模转换器直接合成的数字式函数信号发生器。这种信号发生器具有价格低,在低频X围内可靠性好,体积小,功耗低,使用方便等特点,它输出的频率是由微处理器向数模转换输出数据的频率和信号在一个周期内的采样点数(N)来决定的,因此受单片机的时钟频率的限制很大,如果单片机的晶振取12MHz,则单片机的工作频率为1MHz,若在一个周期内输出360个数据,则输出信号的频率理论上最高只能达到2777Hz。实际上单片机完成一次数据访问并输出到D/A电路,至少要5个机器周期,因此实际输出信号的频率只有500Hz 左右。即使增大晶振频率,减小一个周期内输出数据个数,在稍高的频率下输出的波形频率误差也是很大的,而且计算烦琐,软件编程麻烦,控制不方便。 方案二:利用单片机与精密函数发生器构成的程控信号发生器。这种信号发生器能够克服常规信号发生器的缺陷,保证在某个信号的频带内正弦波的失真度小于0.5%。它的输出信号频率调整和幅值调整都由单片机完成。但是,由于数模转换器的非线性误差和函数发生器本身的非线性误差,这种信号发生器输出信号的频率与理论值会有一定的偏差。 方案三:利用DSP处理器,根据幅值,频率参数,计算产生高精度的信号所需数据表,经数模转换后输出,形成需要的信号波形。这种信号发生器可实现程控调幅,调频。但这种信号发生器输出频率不能连续可调,计算烦琐,控制也不便。 方案四:基于单片机,锁相环,可编程分频、相位累加、存储器波形存储以及D/A转换器等组成的数字式函数信号发生器。输出的频率的大小由锁相环和可编程计数器来控制,最终由地址发生器对存储器中的波形数据硬件扫描,单片机提供要输出的波形数据给存储器。这种方案电路简洁,不受单片机的时钟频率的限制,输出信号精度高,频率“连续”,稳定性好,可靠性高,功耗低,调频,调幅都很方便,而且可简化软件设计,实现模块化设计的要求。 综合考虑,方案四各项性能和指标都优于其他几种方案,能使输出频率有较好的稳定性,充分体现了模块化设计的要求,而且这些芯片及器件均为通用器件,在市场上较常见,价格也低廉,样品制作成功的可能性比较大,所以本设计采用方案四。其系统组成原理框图如图1所示。

正负脉宽数控调制信号

EDA技术课程大作业 设计题目:正负脉宽数控调制信号发生器 院系:电子信息与电气工程系 学生姓名: 学号:200902070021 专业班级:09电子信息工程专升本 2010年12月10日

正负脉宽数控调制信号发生器 1. 设计背景和设计方案 1.1设计背景 信号发生器是能够产生大量标准信号和用户定义信号,并保证它的高精度和高稳定性,可重复性和易操作性的电子仪器。函数信号发生器应该具有连续的相位变换和频率稳定性等优点,不仅可以模拟各种复杂信号还可以对频率、幅值、波形、相移进行动态的及时控制。 90年代末出现的几种真正高性能的函数信号发生器,但引导技术潮流的仍是国外的几个仪器公司生产的。这些公司生产的信号发生器和频率计数器组合在一起,在任何条件下都可以给出很高的波形质量,给出低失真的正弦波和三角波。 1.2设计任务 设计一个正负脉宽数控调制信号发生器。 2. 方案实施 2.1方案构思 下图1-1是脉宽数控调制信号发生器逻辑图,此信号发生器是由两个完全相同的可自加载加法计数LCNT8组成的,它的输出信号的高低电平脉宽可分别由两组8位预置数进行控制。 图1-1 脉宽数控调制信号发生器逻辑图 如果将初始值可预置的加法计数器的溢出信号作为本计数器的初始预置加载信号LD,则

可构成计数初值自加载方式的加法计数器,从而构成数控分频器。图1-1中D触发器的一个重要功能就是均匀输出信号的占空比,提高驱动能力,这对驱动,诸如扬声器或电动机十分重要。 2.2模块设计 可自加载加法计数器LCNT8,及D触发器如下图所示: 图2 可自加载加法计数器LCNT8 图3 D触发器 取计数器的端口为:脉冲输入端CLK,加载使能输入端LD(高电平有效)、预置输入端D、计数进位输出端CAO。当脉冲CLK上升沿到来之时,若加载使能端LD有效,则通过预置端D可对计数器进行预置数。之后,计数器就以此预置数为开始,一直加1计数。至计数到255时,输出端CAO输出1。 1、子模块设计 8位可自加载加法计数器的源程序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 LCNT8; ARCHITECTURE ART OF LCNT8 IS SIGNAL COUNT:INTEGER RANGE 0 TO 255; BEGIN PROCESS ( CLK ) BEGIN IF CLK'EVENT AND CLK='1' THEN IF LD='1' THEN COUNT<=D;

LPC2378学习笔记之脉冲宽度调制器(PWM)

PWM波的用途: 可以做步进电机的调速、可以通过无缘蜂鸣器播放音乐、可以通过滤波的方法做DA转换,还可以控制灯的亮度,就这些了吧,对了还可以做信号调制。一般用于电机调速,还有开关电源,。PWM波就是占空比传函,改变脉宽可以输出一系列的平均电压系列。 PWM波的产生形式: Pulse Width Modulation -- 脉宽调制/脉冲宽度调制。脉冲宽度调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。脉宽调制是开关型稳压电源中的术语。这是按稳压的控制方式分类的,除了PWM型,还有PFM 型和PWM、PFM混合型。脉宽调制式开关型稳压电路是在控制电路输出频率不变的情况下,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。PWM一种模拟控制方式,根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定。 PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。多数负载(无论是电感性负载还是电容性负载)需要的调制频率高于10Hz,通常调制频率为1kHz到200kHz之间。 许多微控制器内部都包含有PWM控制器。例如,Microchip公司的PIC16C67内含两个PWM控制器,每一个都可以选择接通时间和周期。占空比是接通时间与周期之比;调制频率为周期的倒数。执行PWM操作之前,这种微处理器要求在软件中完成以下工作: * 设置提供调制方波的片上定时器/计数器的周期 * 在PWM控制寄存器中设置接通时间 * 设置PWM输出的方向,这个输出是一个通用I/O管脚 * 启动定时器 * 使能PWM控制器 PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。让信号保持为数字形式可将噪声影响降到最小。噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。 对噪声抵抗能力的增强是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。从模拟信号转向PWM可以极大地延长通信距离。在接收端,通过适当的RC或LC网络可以滤除调制高频方波并将信号还原为模拟形式。

基于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-),男,江苏连云港人,本科在读,研究方向为电气工程及自动化。

实验6 数控分频器的设计(6-3)

实验6 数控分频器的设计(6-3) (1)实验目的: 学习数控分频器的设计、分析和测试方法。 (2)实验原理: 数控分频器的功能就是当在输入端给定不同输入数据时,将对输入的时钟信号有不同的分频比,数控分频器就是用数值可并行预置的加法计数器设计完成的,方法是将计数溢出位与预置数加载输入信号相接即可,详细设计程序如例6-20所示。 【例6-20】8位数控分频器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DVF IS PORT(CLK : IN STD_LOGIC; D : IN STD_LOGIC_VECTOR(7 DOWNTO 0); FOUT : OUT STD_LOGIC); END ENTITY DVF; ARCHITECTURE one OF DVF IS SIGNAL FULL : STD_LOGIC; BEGIN P_REG: PROCESS(CLK) VARIABLE CNT8 : STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN IF CLK'EVENT AND CLK = '1' THEN IF CNT8 = "11111111" THEN CNT8 := D; --当CNT8计数计满时,输入数据D被同步预置给计数器CNT8 FULL <= '1'; --同时使溢出标志信号FULL输出为高电平 ELSE CNT8 := CNT8 + 1; --否则继续作加1计数 FULL <= '0'; --且输出溢出标志信号FULL为低电平 END IF; END IF; END PROCESS P_REG ; P_DIV: PROCESS(FULL) VARIABLE CNT2 : STD_LOGIC; BEGIN IF FULL'EVENT AND FULL = '1' THEN CNT2 := NOT CNT2;--如果溢出标志信号FULL为高电平,D触发器输出取反 IF CNT2 = '1' THEN FOUT <= '1'; ELSE FOUT <= '0'; END IF; END IF; END PROCESS P_DIV;

某脉宽调制数字快速电磁阀方案设计及仿真研究

某脉宽调制数字快速电磁阀方案设计及仿真研究 摘要:脉宽调制数字快速电磁阀作为重要的电液转换元件,在燃油控制系统的作用日益突出。针对断电常开型快速电磁阀的需求,开展断电常开型脉宽调制数字快速电磁阀的方案设计及仿真研究,并通过工程验证使该脉宽调制数字快速电磁阀的设计方案得到优化。 0.概述 航空发动机燃油控制系统的控制方式,已由原机械液压控制调节方式向电子控制调节方式发展,其核心关键是机电液转换元件。 近年来,由于脉宽调制数字快速电磁阀(以下简称快速电磁阀)在航空发动机燃油控制中的广泛使用,其经常被作为航空发动机燃油调节系统的执行部件。快速电磁阀多采用脉宽调制(PWM)来控制,利用脉冲占空比的变化来调节阀口开关的时间,使得快速电磁阀能像其它数字流量电磁阀一样,对燃油流量进行连续的控制。虽然普通的电磁阀也具有同样的数字开关特征,但是普通的电磁阀响应特性较慢,而快速电磁阀体积小、重量轻、响应速度快、稳定性好、控制精度高。 本文以某喷口加力调节器用快速电磁阀的需求为研究背景,进行了快速电磁阀方案设计及仿真工作,并对断电常0开型快速阀的设计方案进行了优化。 1.工作原理分析及结构设计方案 1.1 电磁阀结构及工作原理 高速数字电磁阀作为航空发动机电子控制系统的电液转换装置,是电子控制器的关键执行元件(见图1)。主要工作原理为:在断电情况下,挡板活门在铁芯弹簧力作用下关闭活门座,电磁阀进口和出口处于关闭状态;当线圈通电时,电磁力克服铁芯弹簧力使活门座打开,使电磁阀进口和出口处于相通状态,属于断电关闭型阀门。 图1 某定型快速阀结构图 注:1-活门座2-活门弹簧3-挡板活门4-铁芯顶头5-铁芯弹簧 该快速电磁阀采用“喷嘴-挡板”结构,其优点是技术成熟,加工容易实现,耐污染能力好,但结构不紧凑,长时间使用挡板磨损严重,且不满足航空发动机使用中断电长开的要求,需要对该电磁阀进行适当改进。

移相信号发生器实验

移相信号发生器设计实验  一、数字移相正弦信号发生器设计 1. 实验目的:学习直接数字综合器DDS及基于此模块的数字信号发生器的设计和实现。  2. 实验原理:图1是此电路模型图,其中“FWORD”是8位频率控制字,控制输出正弦信号的相移量;其“PWORD”是8位相移控制字,控制输出正弦信号的相移量;ADDER32B和ADDER10B分别为32位和10位加法器;SIN_ROM 是存放正弦波数据的ROM,10位数据线,10位地址线,其中的数据文件是LUT10X10.mif,可由MATLAB直接生成;REG32B和REG10B分别是32位和10位寄存器;POUT和FOUT分别为10位输出,可以分别与两个高速D/A相接,他们分别输出参考信号和可移相正弦波信号。图2是完整结构图。  图1 基于DDS的数字移相信号发生器电路模型图  3. 首先利用VHDL完成10位输出数据宽度的移相信号发生器的设计,其中包括设计正弦波形数据MIF文件(数据深度1024、数据类型是10进制数);给出仿真波形。最后进行硬件测试,对于GW48系统,选择模式1:CLK接clock0,接1.5MHz;用键4、3控制相位字PWORD输入,键2、1控制频率字FWORD输入。观察他们的李萨如图形。然后修改设计,增加幅度控制电路(可以用一乘法器控制输出幅度);最后可利用MATLAB设计和硬件实现。 二、设计步骤 例1是移相信号发生器的顶层设计,工程文件名可取DDS_VHDL.vhd 【例1】正弦信号发生器顶层设计 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DDS_VHDL IS -- 顶层设计 PORT ( CLK : IN STD_LOGIC; FWORD : IN STD_LOGIC_VECTOR(7 DOWNTO 0); PWORD : IN STD_LOGIC_VECTOR(7 DOWNTO 0); FOUT : OUT STD_LOGIC_VECTOR(9 DOWNTO 0); POUT : OUT STD_LOGIC_VECTOR(9 DOWNTO 0) ); END; ARCHITECTURE one OF DDS_VHDL IS COMPONENT REG32B PORT ( LOAD : IN STD_LOGIC; DIN : IN STD_LOGIC_VECTOR(31 DOWNTO 0); DOUT : OUT STD_LOGIC_VECTOR(31 DOWNTO 0) ); END COMPONENT; COMPONENT REG10B PORT ( LOAD : IN STD_LOGIC; DIN : IN STD_LOGIC_VECTOR(9 DOWNTO 0);

实验三: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

脉冲信号发生器设计

脉冲信号发生器 摘要:本实验是采用fpga方式基于Alter Cyclone2 EP2C5T144C8的简易脉冲信号发生器,可以实现输出一路周期1us到10ms,脉冲宽度:0.1us到周期-0.1us,时间分辨率为 0.1us的脉冲信号,并且还能输出一路正弦信号(与脉冲信号同时输出)。输出模式 可分为连续触发和单次手动可预置数(0~9)触发,具有周期、脉宽、触发数等显示功能。采用fpga计数实现的电路简化了电路结构并提高了射击精度,降低了电路功耗和资源成本。 关键词:FPGA;脉冲信号发生器;矩形脉冲;正弦信号; 1 方案设计与比较 脉冲信号产生方案: 方案一、采用专用DDS芯片的技术方案: 目前已有多种专用DDS集成芯片可用,采用专用芯片可大大简化系统硬件制作难度,部数字信号抖动小,输出信号指标高;但专用芯片控制方式比较固定,最大的缺点是进行脉宽控制,测量困难,无法进行外同步,不满足设计要求。 方案二、单片机法。 利用单片机实现矩形脉冲,可以较方案以更简化外围硬件,节约成本,并且也可以实现灵活控制、能产生任意波形的信号发生器。但是单片机的部时钟一般是小于25Mhz,速度上无法满足设计要求,通过单片机产生脉冲至少需要三条指令,所需时间大于所要求的精度要求,故不可取。 方案二:FPGA法。利用了可编程逻辑器件的灵活性且资源丰富的特点,通过Quartus 软件的设计编写,实现脉冲信号的产生及数控,并下载到试验箱中,这种方案电路简单、响应速度快、精度高、稳定性好故采用此种方案。 2 理论分析与计算 脉冲信号产生原理:输入量周期和脉宽,结合时钟频率,转换成两个计数器的容量,用来对周期和高电平的计时,输出即可产生脉冲信号。 脉冲信号的精度保证:时间分辨率0.1us,周期精度:+0.1%+0.05us,宽度精度:

EDA实验数控分频器的设计

***大学本科实验报告(2011-2012学年下学期) 课程名称:EDA 任课教员: 系: 专业: 二0一一年十月八日 《EDA》课程实验报告 实验项目名称:数控分频器的设计 系::专业:指导教员: 姓名:学号:成绩: 同组姓名:

实验地点:实验室实验日期: 数控分频器的设计一、实验目的和要求 学习数控分频器的设计、分析和测试方法。 二、实验内容和原理 1、实验内容:

a)分析程序一中的各语句功能、设计原理及逻辑功能,详述进程 P_REG和P_DIV的作用,并画出该程序的RTL电路图; b)仿真:输入不同的CLK频率和预置值D,给出如书图6-21的 时序波形。 c)将程序一扩展成16位分频器; d)利用两个程序一给出的模块设计一个电路,使其输出方波的正 负脉宽的宽度分别由两个8位输入数据控制。 2、实验原理: 数控分频器的功能就是当在输入端给定不同输入数据时,将对输入的时钟信号有不同的分频比,数控分频器就是用计数值可并行预的加法计数器设计完成的,方法是将计数溢出位与预置数加载输入信号相接即可,详细设计程序如程序一。 三、实验环境 QuartⅡ软件 四、操作方法与实验步骤 1、在QuartⅡ中建立工程,进行程序编写、调试、编译、仿真,设置CLK频率和D为不同值; 2、分析程序一,类推出16位分频器的设计方法; 3、仔细分析程序一中如何控制正负脉宽的宽度,采用元件例化语句,将DVF和SEL2两个VHDL设计实体组合起来,设计如题中要求的电路,具体程序见程序三,并按步骤1执行。 五、实验数据记录和处理

将程序进行仿真得到的波形图如下所示: (1)8位数控分频器 (2)16位数控分频器 (3)正负脉冲宽度可变分频器 六、实验结果与分析: 仿真结果基本正确,但在对16位数控分频器做仿真时应把endtime设置在ms级以上,即仿真时长要稍长些,才能出来明显结果。正负脉冲宽度可变分频器的正负脉冲宽度分别由D1和D2控制,其基本原理与8位数控分频器原理一致。 七、实验心得与体会 通过该实验,我掌握了数控分频器的工作原理及其设计方法,学会了元件例化语句的使用。 八、程序代码 程序一: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;

数字式PWM可逆直流调速系统

一、设计要求: 1、调速范围D=20,静差率S ≤5%。再整个调速范围内要求转速无极、平滑可调; 2、动态性能指标:电流环超调量 δ≤5%: 空载启动到额定转速时转速超量δ≤10% 直流电动机的参数: 直流电动机 型号(KW ) Z2—32 额定容量(KW ) 2.2 额定电压(V ) 220 额定电流(A ) 12.5 最大电流(A ) 18.75 额定转速(rpm ) 1500 额定励磁(A ) 0.61 GD 2 (kg m 2 ) 0.105 电动机电枢电阻RA () 1.3 电动机电枢电感la (Mh ) 10 名称 数值 整流侧内阻Rn (Ω) 0.037 整流变压器漏感Lt (mH ) 0.24 电抗器直流电阻Rh (Ω) 0.024 电抗器电感Lh (mh ) 3.2 2.1控制系统的整体设计 直流双闭环调速系统的结构图如图1所示,转速调节器与电流调节器串极联结,转速调节器的输出作为电流调节器的输入,再用电流调节器的输出去控制PWM 装置。其中脉宽调制变换器的作用是:用脉冲宽度调制的方法,把恒定的直流电源电压调制成频率一定、宽度可变的脉冲电压序列,从而可以改变平均输出电压的大小,以调节电机转速,达到设计要求。总体方案简化图如图1所示。 ASR ACR U *n + - U U i U * i + - U c TA V M + U d I d UPE L - M

2.2桥式可逆PWM变换器的工作原理 脉宽调制器的作用是:用脉冲宽度调制的方法,把恒定的直流电源电压调制成频率一定宽度可变的脉冲电压序列,从而平均输出电压的大小,以调节电机转速。桥式可逆PWM 变换器电路如图2所示。这是电动机M两端电压的极性随开关器件驱动电压的极性变化而变化。 图2 桥式可逆PWM变换器电路

可编程脉冲信号发生器的设计说明

可编程脉冲信号发生器的设计 摘要 基于单片机的可编程脉冲信号发生器,通过4x4的非编码矩阵键盘键入脉冲信号的指标参数频率、占空比和脉冲个数,在单片机的控制处理下发出满足信号指标的脉冲信号,并在液晶显示屏的制定位置显示出相关参数。复位电路采用上电复位和手动复位的复合复位方式,保证单片机在上电和程序运行进入死循环时,单片机均能正常复位。利用在工作方式1下的定时器和计数输出低频脉冲信号,以及在工作方式2下能够自动重复赋初值的定时器输出高频脉冲信号,从而使频率和占空比满足指标要求。通过程序设计,使单片机每次发出信号后等到重置信号进行下一次脉冲信号的输出,有效的提高了单片机的使用效率。 本课题设计利用单片机技术,通过相应的软件编程和较简易的外围硬件电路来实现,其产生的脉冲信号干扰小,输出稳定,可靠性高,人机界面友好,操作简单方便,成本低,携带方便,扩展性强。关键的是,脉冲信号频率、脉冲个数和脉冲占空比可调节,可通过键盘输入并由显示器显示出来。 本课题设计所要达到的指标要求: (1)脉冲信号频率0.1HZ到50KHZ可调并在液晶显示屏指定位置显示。 (2)脉冲信号个数0到9999可调并在液晶显示屏指定位置显示。 (3)脉冲信号占空比任意可调并在液晶屏显屏指定位置示出来。 关键词:单片机,脉冲信号,频率,脉冲个数,占空比

Programmable pulse signal generator design ABSTRACT The programmable pulse signal generator based on single chip, through the 4x4 non-coding matrix keyboard inputing pulse signal parameters of frequency, duty cycle and pulse number, pulse signal is sent to meet the targets of signal processing chip.The related parameters are displayed on the setting position on the liquid crystal. The reset circuit by power-on reset and manual reset, ensure the SCM in power and run into dead circulation can be reset. Use in work mode 1 timer and counter output low frequency pulse signal, and in work mode 2 to timer output high frequency pulse signal ,automaticly repeat initialization, so as to make the frequency and duty ratio meet the requirements. Through the program design, the microcontroller each signal and then wait for the reset signal, the signal at the output of the pulse next time, effectively improve the efficiency in the use of single-chip microcomputer. The subject of the use of single-chip technology, which achieved through the corresponding software and the simple peripheral hardware circuit. The advantages of which are the small interference of the pulse signal, output stability, high reliability, friendly man-machine interface, easy operation, low cost, portability, scalability strong. The keys, pulse frequency, pulse number and pulse duty ratio are adjustable, which can be inputed through the keyboard and displayed through LCD. The requirements of this topic design: (1) The pulse signal frequency of 0.1HZ to 50KHZ is adjustable and can be displaied on the specify location in the LCD screen. (2) Pulse signal number of 0 to 9999 is adjusted and can be displaied on the specify location in the LCD screen. (3)Pulse duty ratio is adjustable and can be displaied on the specify

相关主题
文本预览
相关文档 最新文档