Laboratorní přípravek pro vývoj aplikací obvodů CPLD firmy Altera

| Kategorie: Diplomové, bakalářské práce  | Tento dokument chci!

V diplomové práci se zaměřuji na návrh schematu laboratorního přípravku a prostudování způsobů programování obvodů CPLD firmy Altera. Přípravek slouží pro vývoj a demonstraci aplikací v obvodech CPLD firmy Altera. Přípravek je navržen proprogramování kabely Altera a Presto (výrobce ASIX). Vstupní signály jsou realizovány soustavou přepínačů a tlačítek na desce. Stavy výstupů jsou zobrazovány na LED diodách, případně na připojeném multiplexním displeji. Uživatel má možnost připojit externí zařízení, přes externí vstupy. Práce je dále zaměřena na návrh desky plošných spojů laboratorního přípravku, následné výrobě, oživení přípravku a ověření kompatibility programátorů ALTERA aPRESTO. Závěr práce je zaměřen na práci s návrhovým prostředím QUARTUS II. Zejména se jedná o návod na práci se šablonami a simulací VHDL konstrukcí.

Vydal: FEKT VUT Brno Autor: Petr Gajdošík

Strana 46 z 53

Vámi hledaný text obsahuje tato stránku dokumentu který není autorem určen k veřejnému šíření.

Jak získat tento dokument?






Poznámky redaktora
2 Řadič displeje zdrojový kód library IEEE; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; ---------------------------------------------------------------------- ------------ ENTITY disp IS PORT(clk50: STD_LOGIC; khertz: STD_LOGIC; digit: OUT STD_LOGIC_VECTOR(5 DOWNTO 0); seg: OUT STD_LOGIC_VECTOR(7 DOWNTO 0); A: STD_LOGIC_VECTOR downto 0); B: STD_LOGIC_VECTOR downto 0); C: STD_LOGIC_VECTOR downto 0); D: STD_LOGIC_VECTOR downto 0); E: STD_LOGIC_VECTOR downto 0); F: STD_LOGIC_VECTOR downto 0); dp: STD_LOGIC_VECTOR downto 0) ); END disp; ---------------------------------------------------------------------- ARCHITECTURE Behavioral disp IS SIGNAL cd: STD_LOGIC_VECTOR(2 DOWNTO "000"; SIGNAL curr: STD_LOGIC_VECTOR(5 DOWNTO "000000"; SIGNAL dot: STD_LOGIC '0'; ---------------------------------------------------------------------- BEGIN PROCESS (clk50) BEGIN IF clk50'event AND clk50 '1' THEN --inkrementace "ukazatele" vyber vzdy jen jedne sesti segmentovek IF khertz '1' THEN cd 1; IF "101" THEN cd "000"; END IF; END IF; -- podle "ukazatele" aktivovana prislusna pozice (aktivni 0) CASE curr zobrazena cifra, digit pozice displeji WHEN "000" curr digit "111110"; dot dp(0); WHEN "001" curr digit "111101"; dot dp(1); WHEN "010" curr digit "111011"; dot dp(2); WHEN "011" curr digit "110111"; dot dp(3); WHEN "100" curr digit "101111"; dot dp(4); WHEN OTHERS curr digit "011111"; dot dp(5); END CASE ; -- nastaveni prislusneho znaku segmentovce podle BCD kodu vstupu CASE curr IS WHEN "000000" seg dot "0111111"; 0 WHEN "000001" seg dot "0000110"; 1 WHEN "000010" seg dot "1011011"; 2 WHEN "000011" seg dot "1001111"; 3 WHEN "000100" seg dot "1100110";.ALL; use IEEE.STD_LOGIC_1164.38 B