《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 兩例FPGA驅(qū)動(dòng)LED靜態(tài)顯示和動(dòng)態(tài)顯示的VHDL程序
兩例FPGA驅(qū)動(dòng)LED靜態(tài)顯示和動(dòng)態(tài)顯示的VHDL程序
摘要: 提出了兩例FPGA驅(qū)動(dòng)LED靜態(tài)顯示和動(dòng)態(tài)顯示的VHDL程序。
關(guān)鍵詞: 開發(fā)工具 VHDL FPGA LED顯示屏
Abstract:
Key words :

例1:FPGA驅(qū)動(dòng)LED靜態(tài)顯示

 

  --文件名:decoder.vhd

 

  --功能:譯碼輸出模塊,LED為共陽接法

 

  --最后修改日期:2004.3.24

 

  library IEEE;

 

  use IEEE.STD_LOGIC_1164.ALL;

 

  use IEEE.STD_LOGIC_ARITH.ALL;

 

  use IEEE.STD_LOGIC_UNSIGNED.ALL;

 

  entity decoder is

 

  Port (seg:in std_logic_vector(3 downto 0 ); --四位二進(jìn)制碼輸入

 

  q3:out std_logic_vector(6 downto 0) ); --輸出LED七段碼

 

  end decoder;

 

  architecture Behavioral of decoder is

 

  begin

 

  process(seg)

 

  begin

 

  case seg is

 

  when "0000" => q3<="0000001";--0

 

  when "0001" => q3<="1001111";--1

 

  when "0010" => q3<="0010010";--2

 

  when "0011" => q3<="0000110";--3

 

  when "0100" => q3<="1001100" --4

 

  when "0101" => q3<="0100100";--5

 

  when "0110" => q3<="0100000";--6

 

  when "0111" => q3<="0001111";--7

 

  when "1000" => q3<="0000000";--8

 

  when "1001" => q3<="0000100";--9

 

  when others => q3<="1111111";

 

  end case;

 

  end process;

 

  end Behavioral;

 

例2:FPGA驅(qū)動(dòng)LED動(dòng)態(tài)顯示(4位)

 

  --文件名:dynamic.vhd。

 

  --功能:動(dòng)態(tài)掃描模塊,位選信號(hào)高電平有效。

 

  --最后修改日期:2004.3.24。

 

  library IEEE;

 

  use IEEE.STD_LOGIC_1164.ALL;

 

  use IEEE.STD_LOGIC_ARITH.ALL;

 

  use IEEE.STD_LOGIC_UNSIGNED.ALL;

 

  entity dynamic is

 

  Port ( clk : in std_logic;

 

  reset: in std_logic;

 

din1 : in std_logic_vector(6 downto 0); --譯碼后的數(shù)據(jù)信號(hào)1(4位2進(jìn)制數(shù)據(jù)

 

  通過例1中的decoder模塊譯碼得到din1,din2,din3,din4)

 

  din2 : in std_logic_vector(6 downto 0); --譯碼后的數(shù)據(jù)信號(hào)2

 

  din3 : in std_logic_vector(6 downto 0); --譯碼后的數(shù)據(jù)信號(hào)3

 

  din4 : in std_logic_vector(6 downto 0); --譯碼后的數(shù)據(jù)信號(hào)4

 

  shift: out std_logic_vector(3 downto 0); --位選信號(hào)

 

  bus4 : out std_logic_vector(6 downto 0)); --數(shù)據(jù)信號(hào)

 

  end dynamic;

 

  architecture Behavioral of dynamic is

 

  signal scan_clk:std_logic_vector(1 downto 0);

 

  begin

 

  process(clk,scan_clk,reset) --分頻進(jìn)程

 

  variable scan:std_logic_vector(17 downto 0);

 

  begin

 

  if reset='1' then

 

  scan:="000000000000000000";

 

  scan_clk<="00";

 

  elsif clk'event and clk='1'then

 

  scan:=scan+1;

 

  end if;

 

  scan_clk<=scan(17 downto 16);

 

  end process;

 

  process(scan_clk,din1,din2,din3,din4) --掃描進(jìn)程

 

  begin

 

  case scan_clk is

 

  when "00"=>

 

  bus4<=din1;

 

  shift<="0001";

 

  when "01"=>

 

  bus4<=din2;

 

  shift<="0010";

 

  when "10"=>

 

  bus4<=din3;

 

  shift<="0100";

 

  when "11"=>

 

  bus4<=din4;

 

  shift<="1000";

 

  when others=> bus4<="0000000";shift<="0000";

 

  end case;

 

  end process;

 

  end Behavioral;

 

 

 

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 国产综合免费视频| 日韩午夜小视频| 啊灬啊灬啊灬快灬高潮少妇| 18av黄动漫网站在线观看| 男人边吃奶边爱边做视频国产| 国产成人三级视频在线观看播放| a毛看片免费观看视频| 日本三级欧美三级人妇英文| 亚洲图片校园春色| 精品国产乱码久久久久久浪潮 | 亚洲一区无码中文字幕| 真实国产乱子伦对白视频| 国产亚洲精品自在久久| 18禁无遮挡无码国产免费网站| 好吊妞国产欧美日韩免费观看| 亚洲精品乱码久久久久久| 色噜噜狠狠一区二区三区果冻| 天天操天天操天天操| 久久久久久久99精品免费| 欧美一区二区三区精品影视 | 国产亚洲视频在线观看| .天堂网www在线资源| 天天爱天天操天天干| 中文字幕亚洲综合久久| 波多野结衣一区在线| 国产成人+综合亚洲+天堂| 97se色综合一区二区二区| 日韩大片高清播放器| 亚洲欧美日韩成人高清在线一区| 精品国产不卡在线电影| 国产免费午夜a无码v视频| mm1313亚洲国产精品无码试看| 日本久久久久亚洲中字幕| 亚洲人成免费网站| 法国性经典xxxxhd| 免费特级黄毛片| 人人干人人干人人干| 国自产精品手机在线观看视频| 久久精品99久久香蕉国产色戒| 欧美换爱交换乱理伦片免费| 做a的视频免费|