eda彩灯设计.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
eda彩灯设计

一.设计目标 设计能让一排灯(8只)自动改变显示花样的控制系统。可将实验板上的一排发光二极管作为彩灯用。控制器应有两种控制方式: ◆规则变化。变化节拍有0.5秒和0.25秒两种,交替出现,每种节拍可有8种花样,各执行一或二个周期后轮换。 彩灯变化方向有单向移动,双向移动,跳跃移动等。如图所示。 ◆随机变化。变化花样相同,但节拍及花样的转换都随机出现。 二.实现方案(包括原理框图和HDL设计流程图) 原理框图: VHDL设计流程图: 三.设计过程 1.分频器 a. 功能:实现4096分频且占空比为50% b. 功能:当clkd为1时实现512分频,clkd为0时输出为0。 c. 功能:当clkd为0时实现256分频,clkd为1时输出为0。 2.前端控制 功能:当k为0时总输出clk,k为1时总输出为序列 仿真波形: 结果分析:仿真波形完全实现了用k来控制前端低频clk。、 3.模8计数器 功能:当clr为0时输出为“000”,当clr为1时为模8计数器输出三位二进制数。 4.彩灯控制 功能:当clr为0时输出“0000000”,当clr为1时根据choose输出led。 VHDL代码: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity deng is port( clk: in std_logic; clr: in std_logic; choose: in std_logic_vector(2 downto 0); led: out std_logic_vector(7 downto 0) ); end deng; architecture control of deng is signal cnt1:std_logic_vector(1 downto 0); signal cnt2:std_logic_vector(1 downto 0); signal cnt3:std_logic_vector(1 downto 0); signal cnt4:std_logic_vector(1 downto 0); signal cnt5:std_logic_vector(1 downto 0); signal cnt6:std_logic_vector(1 downto 0); signal cnt7:std_logic_vector(1 downto 0); signal cnt8:std_logic_vector(1 downto 0); begin process(clk,clr) begin if clr=0then led else if choose=000 then if clkevent and clk=0 then cnt1=cnt1+1; end if; case cnt1 is when 00=led when 01=led when 10=led when 11=led end case; elsif choose=001 then if clkevent and clk=1 then cnt2=cnt2+1; end if; case cnt2 is when 00=led when 01=led when 10=led when 11=led end case; elsif choose=010 then

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档