1、 电子设计自动化大作业电子设计自动化大作业 题题 目目 彩灯控制器的设计 学学 院院 *学院 班班 级级 电气* 学学 号号 * 姓姓 名名 * 二 O 一二年十月三十一日 彩灯控制器的设计彩灯控制器的设计 一、一、彩灯控制器的彩灯控制器的设计要求设计要求 设计能让一排彩灯(8 只)自动改变显示花样的控制系统,发光二极管可作为彩灯 用。控制器应有两种控制方式: (1)规则变化。变化节拍有 05 秒和 0x 秒两种,交替出现,每种节拍可有 4 种花样,各执行一或二个周期后轮换。 (2)随机变化。无规律任意变化。 二二、彩灯控制器彩灯控制器的设计原理的设计原理 本次彩灯控制器的设计包含几个主要模块
2、, 一是彩灯显示和扬 声器的时序控制部分, 二是 发光二极管的动态显示和数码管的动态 显示,本次设计中,二者的显示同步变化;三是扬声 器的控制部分。 流程图如下所示: 图 1 彩灯控制器的设计流程图 彩灯控制器的设计核心主要是分频器的使用, 显示部分的设计较 简易。分频的方法有很 多种,本次设计之采用了其中较简易的一种, 通过计数器的分频,将控制器外接的频率分为 几个我们预先设定的 值。 当计数器达到预先设定的值, 即产生一个上升沿, 从而实现分频。 扬声器通过不同的频率控制发出不同的声音。 同样发光二极管和数 码管的显示速度也由其中 分出来的一种频率控制(控制显示频率在 14 之间为宜) 。
3、通过使能端的控制可以控制不同 的数码管显示预 先设定的图案,数码管依次显示的图案为 AA、BB、CC,并随着发光 二极 管同步动态显示。AA 为自左向右显示,BB 为自右向左显示, CC 从二边向中间再由中间向 二边发散显示。与此同时, 显示不同的 花型时扬声器发出不同的声音,代表不同的花型。本 次设计还带有 复位功能,通过复位可以使彩灯控制器恢复到最初的状态。 三、程序设计和分析三、程序设计和分析 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; 建立设计库和标准程序包 实体部分: enti
4、ty pan is port(clk:in std_logic; clr:in std_logic; speak:out std_logic; led7s1:out std_logic_vector(6 downto 0); led7s2:out std_logic_vector(7 downto 0); led_selout:out std_logic_vector(7 downto 0); end entity; 实体名为 pan,定义端口,输入端口为 clk 和 clr ,其中 clk 接脉冲信号, clr 接复位端; 输出 端口 speak 接扬声器, led7s1 接 数码管的七段显示部分,led7s 接八个发光二极管,led_selout 接 八个数码管的使能端,控制数码管的循环显示。 结构体部分: architecture one of pan is signal s: std_logic_vector(4 do