[Exercices] code vhdl afficch 7 segment :
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

code vhdl afficch 7 segment :



  1. #1
    kyk

    Smile code vhdl afficch 7 segment :


    ------

    Bonjour tout le monde

    je fais appel aujourd’hui à vos connaissance en VHDL .
    je viens de recevoir une carte de1 soc cyclone 5 .j'ai téléchargé la dernière version de Quartus 15.0 compatible avec cyclone V.
    J'ai démarré doucement pour implémenter une simple application .j'ai utilisé l'afficheur 7 segments pour écrire un petit message pour mes encadreurs.
    j'ai réussit cette étape et j'ai affiché 6 mots
    ''salut'' ''Mr..'' ''Mme..'' ''pour'' ''tout''.

    mon proleme reste est que j'arrive pas à défiler le message mots par mots automatiquement donc j'ai utilisé des switch pour basculer d'un mots à un autre:
    exemple switch 1 affiche salut
    when "000001"=>
    afich1<="0010010"; --"S"
    afich2<="0001000"; --"A"
    afich3<="1000111"; --"L"
    afich4<="1000001"; --"U"
    afich5<="0000111"; --"T"
    afich6<="0111111";
    alors mon programme est le suivant :

    library IEEE;
    use IEEE.std_logic_1164.all;
    USE ieee.std_logic_unsigned.all;
    use IEEE.numeric_std.all;

    entity afficheur is
    port (
    sw: in STD_LOGIC_VECTOR (5 downto 0);
    afich1,afich2,afich3,afich4,af ich5,afich6: out STD_LOGIC_VECTOR (6 downto 0)
    );
    end afficheur;

    architecture afficheur_arch of afficheur is
    begin
    process(sw
    begin
    case sw:is
    ---lorsque switch 1 est activé alors afficheur ecrit "SALUT"
    when 000001=>
    afich6<="0010010"; --lettre "S"
    afich5<="0001000"; --lettre "A"
    afich4<="1000111"; --lettre "L"
    afich3<="1000001"; --lettre "U"
    afich2<="0000111"; --lettre "T"
    afich1<="0111111"; --Eteind

    ---lorsque switch 1 est activé alors afficheur ecrit "nom de l'encadrant''

    when 000010=>
    afich6<="1001000"; --""
    afich5<="0000110"; --""
    afich4<="0010010"; --""
    afich3<="0001000"; --""
    afich2<="1001000"; --""
    afich1<="0111111"; --"-"

    ---lorsque switch 1 est activé alors afficheur ecrit "2 eme encadrant"


    when 000100=>
    afich6<="1001000"; --""
    afich5<="1000000"; --""
    afich4<="0001000"; --""
    afich3<="1001111"; --""
    afich2<="1001000"; --""
    afich1<="0111111"; --"-"

    ---lorsque switch 1 est activé alors afficheur ecrit "MERCI"

    when 001000=>
    afich6<="1001000"; --"m"
    afich5<="0000110"; --"e"
    afich4<="0001000"; --"r"
    afich3<="1000110"; --"c"
    afich2<="1001111"; --"i"
    afich1<="0111111"; --"-"

    ---lorsque switch 1 est activé alors afficheur ecrit "POUR"

    when 010000=>
    afich6<="0001100"; --"p"
    afich5<="1000000"; --"o"
    afich4<="1000001"; --"u"
    afich3<="0001000"; --"r"
    afich2<="0111111"; --"-"
    afich1<="0111111"; --"-"

    ---lorsque switch 1 est activé alors afficheur ecrit "ACCEUI"

    when 100000 =>
    afich6<="0000111"; --"T"
    afich5<="1000000"; --"O"
    afich4<="1000001"; --"U"
    afich3<="0000111"; --"T"
    afich2<="0111111"; --"-"
    afich1<="0111111"; --"-"

    when others =>
    afich6<="0000110"; --"E"
    afich5<="0001000"; --"R"
    afich4<="0001000"; --"R"
    afich3<="1000000"; --"O"
    afich2<="0001000"; --"R"
    afich1<="0111111"; --"-"

    end case;
    end process;

    end afficheur_arch;


    (j'ai essayé wait until (20ns et 50ns et 70ns )mais ca pas marché )

    svp pourriez vous m'aider
    merci d'avance

    -----

  2. #2
    albanxiii
    Modérateur

    Re : code vhdl afficch 7 segment :

    Bonjour,

    L'instruction
    Code:
    wait for XX ns
    n'est pas synthétisable.

    Pour faire défiler des choses, il faut utiliser un horloge pour rythmer l'ensemble. Donc quelque chose du style

    Code:
    process ( reset, clk )
     if reset = '1' then
        -- je fias mon reset ici
      elsif rising_edge( clk ) then
        -- à vous de trouver quoi mettre ici
      end if;
    end process;
    @+
    Not only is it not right, it's not even wrong!

Discussions similaires

  1. [Programmation] Code VHDL
    Par midouMeziane dans le forum Électronique
    Réponses: 7
    Dernier message: 15/12/2015, 11h08
  2. code vhdl de l'ALU
    Par invite6ebbaf13 dans le forum Électronique
    Réponses: 2
    Dernier message: 31/10/2012, 12h27
  3. code vhdl d'un CPU
    Par invite0a17288c dans le forum Électronique
    Réponses: 5
    Dernier message: 24/04/2012, 12h09
  4. code vhdl
    Par deyni dans le forum Électronique
    Réponses: 6
    Dernier message: 17/02/2012, 14h53
Découvrez nos comparatifs produits sur l'informatique et les technologies.