Partage
  • Partager sur Facebook
  • Partager sur Twitter

Afficheur 7 segments

Anonyme
    11 novembre 2018 à 17:45:06

    Bonsoir,

    J'ai un afficheur 7 segments à faire.

    Mais je n'est pas vraiment compris comment procédé en lisant les questions .

    Pouvez-vous m'expliquer question par question que faire ? ( sans forcément me donner les réponses).

    Aussi, je n'est pas de  kit Altera DE1, en existe t'il des virtuels ou des alternatives pour tester sous Quartus ?

    Voici l'énoncé :

    3.1 Objectifs Dans cette séance,

    l’objectif est d’apprendre à programmer des fonctions logiques combinatoires en VHDL, à implanter ces équations au sein du composant programmable FPGA Cyclone II et à combiner plusieurs composants pour en former un nouveau (conception modulaire).

    3.2 Travail préliminaire

    Déterminez, pour chaque diode électroluminescente (LED) d’un afficheur 7 segments, l’équation logique déterminant l’allumage ou non en fonction d’un mot de 4 bits E = e3e2e1e0 présenté en entrée représentant un entier, et ce dans les deux cas suivants : — Le mot E code un entier pouvant être représenté par un chiffre hexadécimal. — Le mot E code un entier pouvant être représenté par un chiffre décimal.

    3.3 Manipulations

    1. Sous le logiciel Quartus II, implantez les circuits réalisant les fonctions précédentes dans le cas des chiffres hexadécimaux et dans le cas des chiffres décimaux uniquement. Cette implantation se fera par d’équations logiques dans des fichiers VHDL. Vous pourrez reprendre le modèle du composant nor_nand.vhd étudié dans la pratie précédente. Attention : considérant que les diodes électroluminescentes s’alument sur un état bas et s’éteignent sur un état haut (cf. DE User Manual p.30), vous devrez légèrement mofifier les équations déterminées précédemment.

    2. Simulez, sous Quartus II, les circuits créés et vérifiez qu’ils produisent le résultat escompté.

    3. Implantez les fonctions créées sur le FPGA de telle sorte que les entrées puissent être fixées par le biais des interrupteurs et que les sorties soient connectées à un afficheurs 7 segments.

    4. Le fichier byte_to_bcd.vhd téléchargeable sur l’espace dédié au Traitement numérique de l’Information 1 sur la plateforme UniversiTICE définit le comportement d’un composant disposant en entrée d’un mot de 8 bits et délivrant 3 mots de 4 bits représentant la description en décimal codé binaire de l’entier représenté par le mot de 4 bits entré. Créez un symbole pour ce composant.

    5. En utilisant ce composant ainsi que trois instances du composant 1, réalisez le schéma d’un circuit permettant saisie d’un octet via les interrupteurs SW7 .. SW0 et l’affichage de sa valeur décimale sur les afficheurs HEX2 HEX1 HEW0.

    J'ai hébergé les fichiers dont j'ai besoin pour cette exercice, pour ceux qui veulent bien m'aider !

    http://www.sendbox.fr/76a2d042b657b318/equations.pdf
    http://www.sendbox.fr/cfd55edfea172dda/DE1_UserManual_v1018_1_.pdf
    http://www.sendbox.fr/b3c140a52b4cd8d2/byte_to_bcd.vhd

    Merci, pour votre futur aide !





    -
    Edité par Anonyme 11 novembre 2018 à 17:45:33

    • Partager sur Facebook
    • Partager sur Twitter
      17 novembre 2018 à 14:50:17

      Staliax a écrit:

      Bonsoir,

      J'ai un afficheur 7 segments à faire.

      Mais je n'est pas vraiment compris comment procédé en lisant les questions .

      Pouvez-vous m'expliquer question par question que faire ? ( sans forcément me donner les réponses).

      3.2 Travail préliminaire

      Déterminez, pour chaque diode électroluminescente (LED) d’un afficheur 7 segments, l’équation logique déterminant l’allumage ou non en fonction d’un mot de 4 bits E = e3e2e1e0 présenté en entrée représentant un entier, et ce dans les deux cas suivants : — Le mot E code un entier pouvant être représenté par un chiffre hexadécimal. — Le mot E code un entier pouvant être représenté par un chiffre décimal.


      Tu peux commencer par relire la question, et faire la première partie (hexadecimal)

      1) dessiner les 16 chiffres hexa

      2) remplir les tables de vérité pour l'allumage des segments. 4 entrees => 16 lignes, 7 colonnes.

      3) trouver des expressions booléennes pour chacun des 7 segments.

      4) les transformer en circuits.

      5) lancer une simulation VHDL pour voir si ce que ça fait correspond bien aux tables déterminées en 2.

      Ensuite, tu pourras passer aux chiffres décimaux. L'intéret de l'exercice est que les sorties sont fixées uniquement dans 10 cas sur 16, ce qui laisse des indéterminées qui permettront des simplifications de circuit (on suppose que la méthode de ce bon M. Karnaugh est toujours à la mode...)

      http://villemin.gerard.free.fr/Esprit/Karnaugh.htm

      PS: on trouve des cartes FPGA ALTERA + cable USB pour une 30 aine d'euros sur les sites chinois.

      -
      Edité par michelbillaud 17 novembre 2018 à 14:58:43

      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        17 novembre 2018 à 23:18:12

        Merci,

        le problème étant que on doit faire cette exercice alors qu'on ne sait pas programmer en VHDL.

        Je doit celon le prof reprendre un fichier nor_nand.vhdl et y intégré les équations que j'ai mis en PDF.

        J'ai effectué ce CODE, est t'il bon ? ( C'est pour répondre à la première question)

        -- Inclusion de bibliothèques de composants
        library IEEE;
        use IEEE.std_logic_1164.all;
        use IEEE.numeric_std.all;
         
        -- Définition de l'interface du composant
        ENTITY nor_nand IS
          PORT(
            e0   : IN STD_LOGIC;
            e1   : IN STD_LOGIC;
             e2   : IN STD_LOGIC;
             e3    : IN STD_LOGIC;
            a0  : OUT STD_LOGIC;
            b1  : OUT STD_LOGIC;
             c2  : OUT STD_LOGIC;
             d3  : OUT STD_LOGIC;
             ee4  : OUT STD_LOGIC;
             f5  : OUT STD_LOGIC;
             g6 :  OUT STD_LOGIC
          );
        END nor_nand;
         
         -- Définition de l'architecture du composant
        ARCHITECTURE porte OF nor_nand IS
        BEGIN
           a0 <= (NOT e2 AND NOT e0) OR ( e3 AND NOT e0) OR ( NOT e3 AND e1) OR (e2 AND e1) OR (NOT e3 AND e2 AND e0) OR (e3 AND NOT e2 AND NOT e1);
           b1 <= ( NOT e3 AND NOT e1 AND NOT e0) OR (e3 AND NOT e1 AND e0) OR (NOT e3 AND e1 AND e0) OR ( NOT e2 AND NOT e0) OR (NOT e2 AND NOT e1);
            c2 <= ( NOT e3 AND e2) OR ( e3 AND NOT e2) OR ( NOT e1 AND e0) OR ( NOT e2 AND NOT e1) OR (NOT e2 AND e0);
            d3 <= (NOT e3 AND NOT e2 AND NOT e0) OR (NOT e2 AND e1 AND e0) OR ( e2 AND NOT e1 AND e0) OR (e2 AND e1 AND NOT e0) OR (e3 AND NOT e1);
            ee4 <= (NOT e2  AND NOT e0) OR ( e3 AND e2) OR (e3 AND e1) OR ( e1 AND NOT e0);
            f5 <= (NOT e1 AND NOT e0) OR ( e3 AND NOT e2) OR ( e2 AND NOT e0) OR (e3 AND e1) OR (NOT e3 AND e2 AND NOT e1);
            g6 <= (e3 AND NOT e2) OR (e1 AND NOT e0) OR ( NOT e2 AND e1) OR ( e3 AND e0) OR ( NOT e3 AND e2 AND NOT e1);
           
        END porte;

        J'ai trouvé se FPGA, est t'il bon pour cyclone II?

        https://www.amazon.fr/Waveshare-Spartan-3E-XC3S500E-Development-Accessory/dp/B00KM70NNK/ref=sr_1_1?s=electronics&ie=UTF8&qid=1542493262&sr=1-1&keywords=fpga

        Si non, peut tu m'aider à trouver une carte pas trop cher ? sa serai grave sympa. A la base je suis étudiant en info, et dans ce domaine, je suis une bille. Sauf pour ce qui est tableau de karnaugh etc je gère.  Et j'aimerai vraiment rendre mes travaux pratiques les plus propres possibles et m'améliorer dans ce domaine que je trouve tout de même pas mal intéréssant ;) !

        -
        Edité par Anonyme 17 novembre 2018 à 23:23:21

        • Partager sur Facebook
        • Partager sur Twitter
          18 novembre 2018 à 7:42:36

          Si on t'a donné cet exercice, c'est pour t'aider a apprendre quelque  chose que tu ne sais pas déjà.

          Xilinx et Altera (acheté par intel) c'est des concurrents (il y a Lattice aussi), donc non, un kit xilinx, ca va pas le faire avec quartus. 

          On trouve des kits Altera a 30€ chez les chinois, mais il faudra se brancher les afficheurs les boutons etc soi même.

          Vhdl est fait pour la synthèse et la simulation, tu peux vérifier que les circuits ont une fonction de transfert qui correspond aux tables de vérité attendues.  Ca fait partie de ton boulot (comme écrire les tests unitaires en programmmation)

          Sans aucun matériel, tu peux utiliser ghdl pour simuler. Ou un simulateur en ligne https://www.edaplayground.com/

          -
          Edité par michelbillaud 18 novembre 2018 à 12:53:04

          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            18 novembre 2018 à 13:55:28

            D'accord, merci.

            T'aurai quelque site a me conseiller ? ( chinois )

            • Partager sur Facebook
            • Partager sur Twitter
              18 novembre 2018 à 14:28:25

              Y a aliexpress, pas cher, mais ça met des semaines à arriver. Il peut y avoir des frais de douane au passage.

              Il y a longtemps j'ai acheté un starter board spartan 3 chez digilenc aux us, environ 1000 FF (y avait pas l'euro, c'est dire si ça date). A l'époque c'était fourni avec un cable JTAG sur port parallele. Faire attention en achetant un kit : le "cable usb", si il n'est pas fourni avec, peut couter bonbon chez xilinx.

              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                18 novembre 2018 à 14:41:07

                D'accord, merci moi il me le faut rapidement, alors je peut oublier aliexpress.

                Pour le xilinx, tu est sur que je peut pas le faire marcher sur quartus?

                • Partager sur Facebook
                • Partager sur Twitter
                  18 novembre 2018 à 14:45:42

                  Je ne suis sur de rien, mais je veux bien parier des sous

                  -
                  Edité par michelbillaud 18 novembre 2018 à 14:46:37

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    18 novembre 2018 à 14:50:51

                    Dans le pire des cas, mon projet sous quartus ne peut pas être importer sur un logiciel similaire à quartus prenant en compte le xilinx ?
                    • Partager sur Facebook
                    • Partager sur Twitter
                      18 novembre 2018 à 15:11:49

                      Xilinx a des  logiciels équivalents, qu'on peut charger et utiliser gratuitement (il faut demander une licence) : webpack et vivado

                      Je viens de m'y remettre récemment, je joue avec webpack qui est un peu ancien, parce que vivado ne gere pas les vieux machins genre spartan3. Et je n'envoie rien sur mon kit, vu que je n'ai plus de port parallèle. il va falloir que je ressuscite une vieille bécane, ou que j'achete un cable usb de contrebande, ou que je change de kit...

                      https://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.html

                      • Partager sur Facebook
                      • Partager sur Twitter

                      Afficheur 7 segments

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown