fpga 扫描驱动显示电路设计_驱动显示电路设计
fpga 扫描驱动显示电路设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“驱动显示电路设计”。
实验四 扫描驱动显示电路设计(设计性实验)
一、实验目的1. 了解实验箱中 8 位七段数码管显示模块的工作原理。
2. 熟悉 VHDL 硬件描述语言及设计专用数字集成电路的自顶向下的设计思想。
3. 掌握利用 CPLD/FPGA设计 8 位七段数码管扫描显示驱动电路的方法。
二、实验设备
1. 计算机(配置为:P4 CPU 128M 内存); 2. MAX+plusⅡ开发工具软件;
3.EDA 实验箱(主芯片是ALTERA EPM7128SLC84-6);
三、扫描原理
为了减少8位显示信号的接口连接线,实验箱中的数码显示采用扫描 显示工作模式。
即 8 位数码管的七段译码输入(a,b,c,d,e,f,g)是并联在一起的,而每一个数码管是通过一个位选择 sel[2..0]来选定 的。sel 与数码管之间是一 3-8 译码的关系,即 sel为“000”时,选中
第一个数码管,sel 为“111”时,选中第八个数码管。
四、设计任务
本实验要求在给定子模块程序的基础上,画出设计原理图。自行编写顶层模块程序,完成扫描显示驱动电路的设计,实现在 8 个数码管上轮流显示字符 0-F的功能。
五、设计要求
1.要求在 Max+plusⅡ平台上用 VHDL 语言编写顶层模块程序,调试、仿真成功后,下
载至 ALTER EPM7128SLC84-15 芯片,再利用外接电路实现以上设计功能。2.扫描驱动显示电路有 2 个输入端(clk,reset),14 个输出端(a,b,c,d,e,f,g)
和(y0,y1,y2,y3,y4,y5,y6,y7),全部为 TTL 电平,管脚分配任意,如下图所示
3.根据芯片特点,管脚分配时将时钟信号分配给 83 脚,复位信号分配给 1 脚,使能信
号分配给 84脚。
六、程序清单:
--顶层程序:library ieee;use ieee.std_logic_1164.all;entity disp is
port(clk,reset: in std_logic;
a,b,c,d,e,f,g: out std_logic;
y: out std_logic_vector(2 downto 0));end disp;architecture beha of disp is component counter16
port(clk,clr: in std_logic;
count: out std_logic_vector(3 downto 0));end component;component decdisp
port(datain: in std_logic_vector(3 downto 0);
a,b,c,d,e,f,g: out std_logic);end component;component yima3
port(x: in std_logic_vector(2 downto 0);
y: out std_logic_vector(2 downto 0));end component;signal cont: std_logic_vector(3 downto 0);
signal sel3: std_logic_vector(2 downto 0);begin d1:counter16 port map(clk=>clk,clr=>reset,count=>cont);d2:decdisp port map(datain=>cont,a=>a,b=>b,c=>c,d=>d,e=>e,f=>f,g=>g);
d3:yima3 port map(x=>cont(2 downto 0),y=>y);end beha;
--十六进制程序: library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity counter16 is port(clk,clr: in std_logic;
count: out std_logic_vector(3 downto 0);
sel: out std_logic_vector(2 downto 0));end counter16;
architecture beha of counter16 is signal cnt: std_logic_vector(3 downto 0);begin
proce(clk,clr)
begin
if clr='0'then
cnt
elsif clk='1' and clk'event then
cnt
end if;
count
sel
--七段数码管显示程序: library ieee;use ieee.std_logic_1164.all;entity decdisp is port(datain: in std_logic_vector(3 downto 0);
a,b,c,d,e,f,g: out std_logic);end decdisp;architecture beha of decdisp is signal dataout: std_logic_vector(6 downto 0);begin
a
b
c
d
e
f
g
proce(datain)
begin
case datain is when “0000”=> dataout dataout dataout dataoutdataout dataout dataout dataout dataout dataout dataout dataout dataout dataout dataout dataout dataout
end case;
end proce;end beha;
--3-8译码器实现数码管选择 library ieee;use ieee.std_logic_1164.all;entity yima3 is port(x: in std_logic_vector(2 downto 0);
y: out std_logic_vector(2 downto 0));end yima3;architecture beha of yima3 is begin
y
输出仿真波形图: disp.vhd波形:
counter16.vhd波形:
decdisp.vhd波形:
yima3.vhd波形:
七、硬件实验
1、对芯片进行编程。
选择器件,主芯片是ALTERA EPS7128SLC84-6
编译后进行程序下载
2、根据管脚分配图。
3、控制输入信号,观察电路输出。
心得体会
本学期学习了CPLD/FPGA这门课,首先 我要感谢我们的李老师,无论是实验课还是理论课的学习中李老师的认真指导和耐心教诲给我留下了深刻的印象,在上课时李老师会时刻提醒大家注意听讲,并且对那些不认真听课的同学从不是视而不见而是耐心劝说,老师讲课是总是给人一种充满力量的感觉,能够引导我们的学习积极性。
“纸上谈来终觉浅,绝知此事要躬行。”在实验当中深深的感觉到了自己要学的东西实在是太多了,自己的知识是多么的有限。通过CPLD/FPGA这门课程的理论知识的学习,并结合实验课的操练,我收获了很多。实验一中我初步掌握了MAX+plusⅡ软件的使用方法,了解了原图输入的原理与过程。在此基础上,在实验
二、实验三中学会了时序逻辑电路的VHDL编程和仿真,实验四是软件与硬件结合的实验,这是一次综合性较强的实验。
实验中我掌握了软件使用方法,加深了自己对数字电路的基本原理和基本构造的认识,同时锻炼了自己的动手能力。虽然在做实验的过程中出现了各种各样的问题,但是在老师的耐心讲解和同学的帮助下一一解决,培养了独立思考、耐心细致的科研精神,为以后的学习奠定了基础。学会了MAX+plusⅡ软件的使用方法以及CPLD/FPGA编程语言我想这对我今后的毕业设计甚至工作都会有很大的帮助。知识只要学会了就一定能用上,不要总觉得自己学的课程没用就不重视它,要厚积勃发。
基于FPGA的交通灯控制电路设计 关键字: 交通信号机 FPGA 脉冲发生器 目前交通灯广泛应用于道路交通建设中。本文设计一个十字路口交通灯控制电路,要求东西、南北两条干道的红......
《综合课程设计》课程报告 姓名: 韩 阳学号: 专业: 光信息科学与技术 任课教师: 王习东 成绩:三峡大学理学院物理系 2009年1月05日大功率LED 的驱动电路设计摘要:LED (light emitti......
【摘要】采用任务驱动法进行教学,通过层层深入的电路设计任务,引导学生完成从单输出到多输出、从不含无关项到存在无关项、从输入不需编码到需要编码,设计多个符合学员认知规律......
LIBRARYIEEE; USEIEEE.STD_LOGIC_1164.ALL; USESTD_LOGIC_ARITH.ALL; USESTD_LOGIC_UNSIGNED.ALL;ENTITYKEYBOARD IS PORT(CLK_1K : IN STD_LOGIC;CLK_40K : IN STD_LOGIC;......
四 川 大 学 锦 城 学 院本科课程《现场可编程逻辑门阵列FPGA》电子类专业教学大纲一、课程基本信息课程名称(中、英文):《现场可编程逻辑门阵列FPGA》, Field Programmable Ga......
