Durant l'année d'I1 nous avons pu étudier le langage AHDL et lors d'un mini projet, nous avons mis en œuvre nos connaissances dans ce langage pour réaliser un télémètre. Cette année nous avons appris le langage VHDL qui ressemble vaguement au langage AHDL. Ce mini projet nous a permis de mettre en œuvre une grande partie de nos connaissances enseignées cette année.
Notre choix du sujet s'est porté sur la réalisation d'un « tape taupe ». Le but est d'utiliser les DEL présentes sur la carte ainsi que les boutons-poussoirs et autres interrupteurs. Les DEL s'allument de façon aléatoire, il faut alors presser le bouton qui correspond à la taupe (ie DEL) dans le temps imparti (défini par l'interrupteur de niveau).
Pour la réalisation de ce projet, nous avons optimisé au maximum les séances de TP s'étalant sur quatre heures hebdomadaires disponibles dans l'emploi du temps. Nous avons cependant dû trouver sur notre temps personnel quelques heures supplémentaires chacun pour fournir le présent projet.
Au cours des séances nos professeurs nous ont guidés sur les étapes nécessaires à réaliser.
Au départ environ deux heures ont été intégralement consacrées à la réflexion générale sur notre projet. Quel matériel utiliser pour simuler les taupes, voulions-nous utiliser un écran VGA, et pour la mise en place de nos premières esquisses de schéma structurel…
Une fois la structure de notre projet bien en forme, nous sommes passés à la phase de développement proprement dite. La répartition des tâches s'est alors effectuée naturellement.
[...] Ici c'est le niveau actuel du jeu au moment ou le jeu a démarré. Vue externe Structure interne Compte tenu de la description fonctionnelle, outre un séquenceur, on aura besoin, de : - un compteur de taupe CPT20 - un compteur de taupes touchées CPTX - une mémoire du niveau NIVX - une mémoire d'une taupe générée TAUPE_GEN - un drapeau OK signalant qu'une taupe est touchée - un temporisateur TIMER produisant les intervalles 1 et 4 secondes. On utilise le composant qui génère un entier aléatoire en permanence RANDOM. [...]
[...] Il sert à temporiser le jeu entre deux parties. DEBUT_PARTIE : Ce bouton permet de démarrer le jeu. Avant de mettre à l'état haut celui-ci il faut choisir son niveau. RAZ : Ce bouton permet de remettre le jeu à l'état initial. Il interrompt toute partie. SCORE_UNIT & SCORE_DIZ : L'affichage du nombre de taupes touchées. Au préalable l'entier CPTX définissant le nombre de taupes touchées a été converti en unité et dizaine. NIVX : Tout comme score uni on trouve ici l'affichage d'une variable. [...]
[...] Description fonctionnelle Il s'agit d'un jeu de Tape taupe. La carte Spartan3 de Xilinx comportant des leds, des boutons-poussoirs ainsi qu'un afficheur nous n'avons pas eu besoin d'implémenter des périphériques supplémentaires. Le système comporte 5 niveaux de jeu qui peuvent être réglés avant de commencer la partie. Si le niveau est changé durant une partie cela ne sera pas pris en compte. A chaque partie 20 taupes sont lancées et chaque appui correct incrémente le résultat de 1. Si l'utilisateur ne presse pas le bon bouton aucun changement n'est effectué, il peut presser un autre bouton librement pour une même taupe. [...]
[...] Mini-projet VHDL: création d'un jeu le "tape-taupe" Sommaire 1. Présentation de notre projet et structuration de ce dernier Acteurs Le projet et sa structuration Contexte de l'étude Choix du sujet Structuration Description fonctionnelle Implémentation du système sur la carte Spartan3 de Xilinx Vue externe Structure interne Schéma structurel du Tape taupe Description des unités fonctionnelles du TAPE TAUPES Grafcet d'état Taux d'occupation du circuit cible Répartition des tâches Planning Fonctionnalités atteintes Rapport d'étonnement du Mini-Projet 10 Présentation de notre projet et structuration de ce dernier 2 Acteurs Ce projet a été réalisé conjointement par Alexis MARQUE et Jean LAURENT, élèves en I2 à l'ESEO. [...]
[...] Implémentation du système sur la carte Spartan3 de Xilinx LED to : Les leds affichent la taupe par doublet. Ainsi lorsqu'il y a une taupe en position 0 les led 0&1 s'allument. BP_TAUPE to : Chaque bouton est associé à une taupe et lorsqu'il est pressé il éteint une taupe et comptabilise un point quand le jeu est lancé. BP_NIVX(0 to : Ces interrupteurs à glissière permettent de choisir le niveau de jeu. Par défaut le niveau de jeu est le niveau 0 qui est le plus facile (avec 2 secondes entre chaque taupe). [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture