1 / 14

Digitális rendszerek II.

Digitális rendszerek II. Multiplexelés 2009.11.29. Feladat. Az FPGA panel 4 db 7 szegmenses kijelzőjén meg kell jeleníteni az egyenként 2 bites (0,1,2,3) számokat. CLK50 P54. Programozó Kapcsoló LENT kell lennie!. Tolókapcsolók. RESET (P41). RST. digit (3:0). seg (6:0).

Download Presentation

Digitális rendszerek II.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Digitális rendszerek II. Multiplexelés 2009.11.29.

  2. Feladat • Az FPGA panel 4 db 7 szegmenses kijelzőjén meg kell jeleníteni az egyenként 2 bites (0,1,2,3) számokat CLK50 P54 Programozó Kapcsoló LENT kell lennie! Tolókapcsolók RESET (P41)

  3. RST digit(3:0) seg(6:0) kapcsolo(7:0)

  4. Mi a multiplexer? Egy kombinációs áramkör, ahol van több sorszámozható bemenet és egy címbemenet. A címbemenet aktuális értékétől függ, hogy a kimeneten melyik bemeneti érték jelenik meg (olyan mint egy kapcsoló) címbemenet N0 N1 N2 N3 kimenet

  5. Állapotgráf RST F0 1 ms-ot vár 1 ms letelt F1 1 ms-ot vár 1 ms letelt F2 1 ms-ot vár 1 ms letelt F3 1 ms-ot vár

  6. Kijelző multiplexelése aktív „0” jellel Bekapcsoljuk A0-t és kiírjuk a számot a kijelzőre, várunk 1 ms-ot Kikapcsoljuk A0-t és bekapcsoljuk A1-et, várunk 1 ms-ot Stb. Olyan gyorsan villog minden kijelző (4 ms-onként), hogy az emberi szem ezt folyamatos világításként érzékeli

  7. clk50 rst kapcsolok(7:0) digit(3:0) seg(6:0)

  8. Modulok kapcsolok(7:0) N0 Számjegy kiválasztó Állapot generátor Hexa-> 7 seg kódoló clk50 cd(1:0) N1 curr(1:0) seg(6:0) rst N2 engedélyező N3 cim Digit kijelölő engedélyező digit(3:0)

  9. Portok (be- és kimenetek) library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity modul is Port ( clk50 : in STD_LOGIC; rst : in STD_LOGIC; kapcsolok : in STD_LOGIC_VECTOR (7 downto 0); digit : out STD_LOGIC_VECTOR (3 downto 0); seg : out STD_LOGIC_VECTOR (6 downto 0)); end modul;

  10. Signal (változók) architectureBehavioral of modul is constant teszt1ms: std_logic_vector(31 downto 0) := conv_std_logic_vector(50000,32); signalcurr : std_logic_vector(3 downto 0); --akt. multiplexaltdekad signalfrissit_szlo : std_logic_vector(31 downto 0); signal cd: std_logic_vector(1 downto 0); --dekadszamlalo signalbcdint : std_logic_vector(15 downto 0); Begin bcdint <= "00" & kapcsolok(7 downto 6) & "00" & kapcsolok(5 downto 4) & "00" & kapcsolok(3 downto 2) & "00" & kapcsolok(1 downto 0);

  11. Process (minden órajelnél lefut) process (clk50, rst, cd) begin ifrst='1' then cd <= (others => '0'); frissit_szlo <= (others => '0'); elsif clk50'event and clk50 = '1' then frissit_szlo <= frissit_szlo +1; iffrissit_szlo = teszt1ms-1 then frissit_szlo <= (others => '0'); cd <= cd + 1; end if; end if; end process; Érzékenységi lista

  12. Feltételes értékadások curr <= bcdint(3 downto 0) when cd ="00" else bcdint(7 downto 4) when cd ="01" else bcdint(11 downto 8) when cd ="10" else bcdint(15 downto 12); digit <= "1111" whenrst= '1' else "1110" when cd= "00" else "1101" when cd= "01" else "1011" when cd= "10" else "0111"; seg <= "1111111" whenrst= '1' else "1000000" whencurr= "0000" else "1111001" whencurr= "0001" else "0100100" whencurr= "0010" else "0110000"; end Behavioral;

  13. ZH • Konzultáció: 2009.12.2. (szerda) • Jelentkezni az ajtóra kitett papíron lehet majd • ZH: 2009.12.3. (csütörtök) • Honlapot nézni hétvégén! • http://nik.bmf.hu/vigh/

  14. NIK Portálhttp://nikportal.cickany.hu/

More Related