1 使用VHDL语言设计可变速彩灯控制器-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用VHDL语言设计可变速彩灯控制器

电子设计 作者:电子设计 2018-10-07 12:06 次阅读

引言

硬件描述语言(HDL)是相对于一般的计算机软件语言如C,Pascal而言的。HDL是用于设计硬件电子系统的计算机语言,它描述电子系统的逻辑功能、电路结构和连接方式。设计者可以利用HDL程序来描述所希望的电路系统,规定其结构特征和电路的行为方式,然后利用综合器和适配器将此程序变成能控制FPGACPLD内部结构,并实现相应逻辑功能的门级或更底层的结构网表文件和下载文件。VHDL(VeryHigh Speed Integrated Circuit Hardware descriptionLangtuage)主要用于描述数字系统的结构、行为、功能和接口。与其他的HDL语言相比,VHDL具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构。从逻辑行为上描述和设计大规模电子系统的重要保证。在文献中作者从不同的角度阐述了EDA技术的应用,它具有功能强大、描述能力强、可移植性好、研制周期短、成本低等特点,即使设计者不懂硬件的结构,也能进行独立的设计。本文以Alter公司提供的Max+PlusⅡ为平台,设计一个可变速的彩灯控制器,可以在不修改硬件电路的基础上,仅通过更改软件就能实现任意修改花型的编程控制方案,实现控制16只LED以8种花型和4种速度循环变化显示,而且设计非常方便,设计的电路保密性强。

1设计原理

用VHDL进行设计,首先应该理解,VHDL语言是一种全方位硬件描述语言,包括系统行为级,寄存器传输级和逻辑门级多个设计层次。应充分利用VHDL“自顶向下”的设计优点以及层次化的设计概念,层次概念对于设计复杂的数字系统是非常有用的,它使得我们可以从简单的单元入手,逐渐构成庞大而复杂的系统。

首先应进行系统模块的划分,规定每一个模块的功能以及各模块之间的接口,最终设计方案分为三大模块:16路花样彩灯控制器、四频率输出分频器、四选一控制器。四选一控制器从分频器中选择不同频率的时钟信号输送到彩灯花样控制器,从而达到控制彩灯闪烁速度的快慢和花型的的变换。

下面是本次设计的顶层模块原理图如图1所示。

使用VHDL语言设计可变速彩灯控制器

2 子模块及其功能

(1)四频率输出分频器。根据要求有4种速度的变化,每种都要显示8种花样,就要用到三位计数器和16位数字译码器。其次,速度有4种变化,而只有一个输入的时钟信号,所以要对输入的时钟信号进行分频,本次设计采用了二分频、四分频、八分频和15分频得到4种不同频率的信号。

二分频电路的程序代码如下:

使用VHDL语言设计可变速彩灯控制器

四分频电路的设计有两种方案:一是把两个二分频电路串联起来(见图2,3),实现四分频;二是修改二分频电路的程序代码来实现,做如下修改:

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器


同理,八分频电路的设计也有两种方案:一种是把两个四分频电路串联起来,实现八分频;一种是修改二分频电路的程序代码,只需做如下修改即可:

使用VHDL语言设计可变速彩灯控制器

15分频电路如图4所示,仿真图如图5所示。代码如下:

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器


四频率输出分频器的顶层模块原理图如图6所示,仿真波形如图7所示。

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器

(2)四选一控制器。四选一控制器的功能是从分频器中选择不同的时钟信号送给彩灯控制器,实现彩灯闪烁频率的变化,如图8,9所示。源代码如下:

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器

(3)彩灯控制器。彩灯控制器电路是整个设计的核心,它控制整个设计的输出效果也就是图案的样式变化。在电路中用1代表灯亮,用O代表灯灭,由0,1按不同的规律组合代表不同的灯光图案,同时使其选择不同的频率,以实现多种图案及多种频率的花样功能显示。该程序充分证明了用VHDL设计电路的灵活性,即可以通过改变程序中输出变量的位数来改变彩灯的数目。如图10,1l所示。

使用VHDL语言设计可变速彩灯控制器

代码如下:

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器

使用VHDL语言设计可变速彩灯控制器

3 结语

使用VHDL语言设计电路,思路简单,功能明了。使用Max+PlusⅡ设计电路不仅可以进行逻辑仿真,还可以进行时序仿真,使用PLD不仅省去了电路制作的麻烦,还可以反复进行硬件的实验,非常方便地修改设计,且设计的电路的保密性强。总之,采用EDA技术使得复杂的电子系统的设计变的简单易行,提高了设计的效率。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    16332

    浏览量

    177806
  • 寄存器
    +关注

    关注

    31

    文章

    5336

    浏览量

    120230
  • vhdl
    +关注

    关注

    30

    文章

    817

    浏览量

    128119
收藏 人收藏

    评论

    相关推荐

    Verilog与VHDL的比较 Verilog HDL编程技巧

    Verilog 与 VHDL 比较 1. 语法和风格 Verilog :Verilog 的语法更接近于 C 语言,对于有 C 语言背景的工程师来说,学习曲线较平缓。它支持结构化编程,代码更直观,易于
    的头像 发表于 12-17 09:44 113次阅读

    Verilog vhdl fpga

    编程语言,熟悉时序约束、时序分析方法; 4.熟悉FPGA开发环境及仿真调试工具。 5.熟悉FPGA外部存储控制器及数据传输接口,如E2PROM、FLASH、DDR等。有FPGA高速数据处理经验者优先; 6.有图像相关经验者优先; 7.有良好的英文听说读写能力
    发表于 11-12 16:40

    基于51单片机的LED彩灯控制器设计

    循环一遍;(3)系统复位清零开关。设计介绍51单片机简介51单片是一种低功耗、高性能CMOS-8位微控制器,拥有灵巧的8位CPU和可编程Flash,使得51单片机为众多嵌入式控制应用系统提供灵活、高效
    的头像 发表于 10-22 14:10 167次阅读
    基于51单片机的LED<b class='flag-5'>彩灯</b><b class='flag-5'>控制器</b>设计

    国产控制器厂家 整车控制器 以太网控制器 CAN控制器 国产化替代

    控制器
    长沙硕博电子科技股份有限公司
    发布于 :2024年09月03日 09:15:51

    车载智能控制器 工程机械控制器 CAN总线控制器 硕博电子 #控制器 #can总线 #国产化替代

    控制器总线
    长沙硕博电子科技股份有限公司
    发布于 :2024年08月29日 10:43:57

    移动机械控制器 车载智能控制器 CAN总线控制器

    控制器机械
    长沙硕博电子科技股份有限公司
    发布于 :2024年06月13日 17:02:51

    运动控制器的主要功能是什么?

    精确的控制,实现复杂的运动路径。这包括直线运动、圆弧运动、螺旋运动等多种运动形式。 速度控制:运动控制器可以根据需要调整机械的运动速度,实现快速、平稳、精确的运动控制。这包括恒速运动、
    的头像 发表于 06-13 09:21 777次阅读

    PID控制器与PWM控制器的区别

    在工业自动化和控制系统设计中,PID控制器(比例-积分-微分控制器)和PWM控制器(脉冲宽度调制控制器)是两种常用的
    的头像 发表于 06-05 18:25 3074次阅读

    PID控制器与开关控制器的区别

    在工业自动化控制系统中,PID控制器和开关控制器是两种常见的控制策略。它们各自具有独特的工作原理、应用场景和优缺点。本文旨在详细探讨PID控制器
    的头像 发表于 06-05 15:50 807次阅读

    基于非线性自适应学习控制器的四轴飞行避障方案

    这篇文章的基本原理是通过设计一种新颖的非线性自适应学习控制器,用于快递四轴飞行的障碍物避免轨迹控制问题。该控制器结合了非线性可变增益(NL
    发表于 04-10 12:39 411次阅读
    基于非线性自适应学习<b class='flag-5'>控制器</b>的四轴飞行<b class='flag-5'>器</b>避障方案

    C语言中的可变参数介绍

    C 语言为这种情况提供了一个解决方案,它允许您定义一个函数,能根据具体的需求接受可变数量的参数
    发表于 02-28 14:00 306次阅读
    C<b class='flag-5'>语言</b>中的<b class='flag-5'>可变</b>参数介绍

    麦爵士madrix麦觉仕幻彩灯条灯带智能像素灯工程安装经验详解

    的供电正负极线(GNDVCC)和接控制器的信号线(GNDDAT);第二要点:控制器接线方式:单信号线灯带:灯条gnd接控制器gnd,灯条Di接控制器DAT;断点续传
    的头像 发表于 02-27 19:55 1628次阅读
    麦爵士madrix麦觉仕幻<b class='flag-5'>彩灯</b>条灯带智能像素灯工程安装经验详解

    变速器的作用是什么 变速器的拆装步骤

    变速器的作用是控制车辆引擎输出的扭矩和转速,使其与行驶条件和驾驶者的需求相匹配。在不同的行驶条件下,变速器能够提供合适的齿比,这样可以有效地利用引擎的动力和燃油,提供理想的驾驶性能和燃油经济性
    的头像 发表于 02-14 17:03 812次阅读

    变速齿轮怎么用 变速齿轮加速原理

    变速齿轮是一种用于改变传动比的机械装置,通过不同大小的齿轮组合,可以实现不同速度的输出。在汽车、摩托车、自行车等交通工具中广泛应用。本文将详细介绍变速齿轮的使用方法和变速齿轮加速的原
    的头像 发表于 01-24 14:38 3113次阅读

    C语言控制器模组用户手册

    德赢Vwin官网 网站提供《C语言控制器模组用户手册.pdf》资料免费下载
    发表于 12-26 09:25 0次下载