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技术使得复杂的电子系统的设计变的简单易行,提高了设计的效率。

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

    关注

    114

    文章

    17947

    浏览量

    196302
  • 寄存器
    +关注

    关注

    31

    文章

    5627

    浏览量

    130921
  • vhdl
    +关注

    关注

    30

    文章

    822

    浏览量

    132061
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NCP1215A:低成本可变关断时间开关电源控制器的深度解析

    NCP1215A:低成本可变关断时间开关电源控制器的深度解析 在电源设计领域,如何在满足性能要求的同时降低成本、减小尺寸和重量,是工程师们一直面临的挑战。NCP1215A作为一款专为低功率离线反激式
    的头像 发表于 04-11 12:15 359次阅读

    基于FPGA VHDL的FSK调制与解调设计

    VHDL诞生于1982年。在1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言
    的头像 发表于 01-27 10:58 735次阅读
    基于FPGA <b class='flag-5'>VHDL</b>的FSK调制与解调设计

    CBM9001控制器

    控制器
    芯佰微电子
    发布于 :2026年01月13日 16:27:10

    联合电子推出混动系统动力域多合一控制器PDCU8.1平台

    混合动力车辆占中国乘用车市场的比例持续走高,已经成为当前中国乘用车市场的亮点。传统混合动力车辆动力域控制为分布式控制,其动力拓扑一般由整车控制器(VCU),发动机控制器(ECU)和
    的头像 发表于 11-28 09:52 1433次阅读

    #机井灌溉智能控制设备 #智能机井控制器 #无线远传超声波水表 #智能机井灌溉刷卡控制器

    控制器
    平升电子-智慧水务解决方案
    发布于 :2025年11月22日 16:09:02

    高 IIP3 10 MHz 至 1.5 GHz 电压控制可变衰减 skyworksinc

    电子发烧友网为你提供()高 IIP3 10 MHz 至 1.5 GHz 电压控制可变衰减相关产品参数、数据手册,更有高 IIP3 10 MHz 至 1.5 GHz 电压控制
    发表于 10-31 18:32
    高 IIP3 10 MHz 至 1.5 GHz 电压<b class='flag-5'>控制</b><b class='flag-5'>可变</b>衰减<b class='flag-5'>器</b> skyworksinc

    电子DIY 用Ai-WB2-12F模组做多功能无线彩灯控制器

    以下作品由安信可社区用户 iiv 制作 1、项目总览 ●目标:一块可插可拔的「无线彩灯控制器」 ●主控选用安信可WB2-12F模组,实现红外、蓝牙接收数据,以及灯带的驱动 ●5-30V电源输入,普通
    的头像 发表于 10-23 10:33 1064次阅读
    电子DIY 用Ai-WB2-12F模组做多功能无线<b class='flag-5'>彩灯</b><b class='flag-5'>控制器</b>

    codesys 3.5版本控制器联机指导:如何进行RS232联机?#codesys编程控制器 #控制器

    控制器
    长沙硕博电子科技股份有限公司
    发布于 :2025年08月29日 09:07:25

    Codesys 3.5 版本控制器联机指导:如何进行CAN联机?#can总线 #codesys控制器

    控制器
    长沙硕博电子科技股份有限公司
    发布于 :2025年08月21日 09:45:29

    为什么我选择VHDL入门

    篇。 从长期来看,两个语言大概率都要学一下;但是从初学角度而言,总要选择一个入门语言。 根据网上的信息,总结对比结论: Verilog 的优势: 1. Verilog 语法接近C,学习容易;VHDL
    的头像 发表于 06-25 11:18 1536次阅读
    为什么我选择<b class='flag-5'>VHDL</b>入门

    TCU变速控制单元解决方案

    一TCU是什么?TCU(变速控制单元)作为自动变速箱的智能中枢,堪称汽车的"换挡指挥官"。相较于手动挡依赖驾驶员操作,TCU通过集成车速、转速、油门等传感网络(如同神经末梢
    的头像 发表于 06-17 11:33 3111次阅读
    TCU<b class='flag-5'>变速</b>箱<b class='flag-5'>控制</b>单元解决方案