7Segmen display adalah Sebuah tampilan tujuh-segmen, atau tujuh-segmen indikator, merupakan bentuk perangkat layar elektronik untuk menampilkan angka desimal yang merupakan alternatif untuk menampilkan dot-matrix yang lebih kompleks. Tujuh-segmen menampilkan banyak digunakan dalam jam digital, meter elektronik, dan perangkat elektronik lainnya untuk menampilkan informasi numerik.
Sebuah byte tunggal dapat mengkodekan keadaan penuh layar 7-segmen. Pengkodean bit yang paling populer adalah gfedcba dan abcdefg - keduanya biasanya menganggap 0 adalah off dan 1 aktif.
Disini saya akan mencoba menuliskan source code untuk menampilkan angka atau huruf pada 7segmen yang ada pada perangkat FPGA dengan menggunakan VHDL
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity clock is
port (
clk : in std_logic;
kd : in std_logic_vector(3 downto 0);
m : out std_logic_vector(6 downto 0)
);
end clock;
architecture Behavioral of test is
begin
process (clk,kd,m)
BEGIN
if clk'event and clk='1' then
case m (7 downto 0) is
end case;
process (clk,kd,m)
BEGIN
if clk'event and clk='1' then
case m (7 downto 0) is
when "0000"=> segment<="0000001"; -- '0'
when "0001"=> segment<="1001111"; -- '1'
when "0010"=> segment<="0010010"; -- '2'
when "0011"=> segment<="0000110"; -- '3'
when "0100"=> segment<="1001100"; -- '4'
when "0101"=> segment<="0100100"; -- '5'
when "0110"=> segment<="0100000"; -- '6'
when "0111"=> segment<="0001111"; -- '7'
when "1000"=> segment<="0000000"; -- '8'
when "1001"=> segment<="0000100"; -- '9'
when others=> segment<="1111111"; -- 'mati'
when "0001"=> segment<="1001111"; -- '1'
when "0010"=> segment<="0010010"; -- '2'
when "0011"=> segment<="0000110"; -- '3'
when "0100"=> segment<="1001100"; -- '4'
when "0101"=> segment<="0100100"; -- '5'
when "0110"=> segment<="0100000"; -- '6'
when "0111"=> segment<="0001111"; -- '7'
when "1000"=> segment<="0000000"; -- '8'
when "1001"=> segment<="0000100"; -- '9'
when others=> segment<="1111111"; -- 'mati'
end if;
end process;
end Behavioral;
end process;
end Behavioral;
LOGIKA PROGRAM :
Dalam bahasa VHDL diatas kita dapat melihat bahwa terdapat bilangan biner dalam pengkodean contohnya "000001";--1 disini terlihat jelas bahwa untuk kode biner 1 adalah 0001,hasil output akan menampilkan angka 0-9 secara 1 persatu sampai 7segment menampilkan angka terakhir yaitu 9 stelah dengan otomatis 7 segment akan mati
Posting Komentar