Jumat, 24 Desember 2010

7'segment with VHDL




Seven Segment adalah suatu segmen-segmen yang digunakan menampilkan angka. Seven segmen ini tersusun atas 7 buah LED yang disusun membentuk angka 8 dengan menggunakan huruf a-f dan h (titik.
Jenis-jenis 7'segment dibagi menjadi 2 yaitu:


1. Common Anoda

Semua anoda dari dioda disatukan secara paralel dan semua itu dihubungkan ke VCC dan kemudian LED dihubungkan melalui tahanan pembatas arus keluar dari penggerak. Karena dihubungkan ke VCC, maka COMMON ANODA ini berada pada kondisi aktif low(led akan menyala bila diberi logika 0).

2. Common Katoda

semua katoda disatukan secara paralel dan dihubungkan ke GND. Karena seluruh katoda dihubungkan ke GND, maka common katoda ini berada pada kondisi aktif high(led akan menyala bila diberi logika 1).

Contoh Program 7'segment pada FPGA:

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity milanisti is
port (
clk : in std_logic;
bcd : in std_logic_vector(3 downto 0);
segment7 : out std_logic_vector(6 downto 0)
);
end milanisti;

architecture Behavioral of milanisti is

begin
process (clk,bcd)
BEGIN
if (clk'event and clk='1') then
case bcd is
when "0000"=> segment7 <="0000001"; -- '0' when "0001"=> segment7 <="1001111"; -- '1' when "0010"=> segment7 <="0010010"; -- '2' when "0011"=> segment7 <="0000110"; -- '3' when "0100"=> segment7 <="1001100"; -- '4' when "0101"=> segment7 <="0100100"; -- '5' when "0110"=> segment7 <="0100000"; -- '6' when "0111"=> segment7 <="0001111"; -- '7' when "1000"=> segment7 <="0000000"; -- '8' when "1001"=> segment7 <="0000100"; -- '9' when others=> segment7 <="1111111"; -- 'mati semua karena aktif low'
end case;
end if;

end process;

end Behavioral;


logika program :output program adalah 7'segment, input di berikan melalui switch, contoh jika "0001" ditekan maka outputnya "1001111", 1001111 diibaratkan 7'segment yaitu a b c d e f g, karena ini aktif low maka yang menyala hanya segment b dan c saja yaitu angka 1.

1 komentar:

Yusman mengatakan...

gan nanya dong, kalau misal program vhdl untuk nampilin angka puluhan dengan 2 buah 7 segment gimana gan?

Posting Komentar

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | coupon codes