IMA3/IMA4 2021/2023 P2

De Wiki de Projets IMA
Révision datée du 21 octobre 2022 à 10:51 par Bidrissi (discussion | contributions) (Résumé)

Résumé

Le projet consiste à réaliser une bibliothèque logicielle pour la simulation d'un circuit logique. Il est destiné à la conception d'un outil d'émulation de circuit logique combiné à un microcontrôleur. D'un point de vue utilisation, cette bibliothèque vise à décrire dans un code C, un assemblage de composants logiques interconnectés (ports, bascule, registre...) comportant des entrées/sorties (bouton, LED, afficheur...). Puis, à l'exécution, le programme simule le comportement de ces composants et affiche une interface avec les différentes entrées/sorties pour l'utilisateur. En fin de projet, cette bibliothèque vise à être couplée avec un émulateur existant d'un microprocesseur de type Arduino (ou Avr8)

Présentation générale

Contexte

Le but consiste en la conception d'un outil d'émulation de circuit logique combiné à un microcontrôleur. En effet, le projet est de développer une bibliothèque en langage informatique (Python) comportant des composants logiques contenant des entrées/sorties.

Pour être plus précis, projet consiste à réaliser une bibliothèque logicielle pour la simulation d'un circuit logique.

Il est destiné à la conception d'un outil d'émulation de circuit logique combiné à un microcontrôleur.

Objectif

L'objectif va être de développer une bibliothèque permettant de définir une architecture logiciel dans le main de type :


LogicalButton bt = new LogicalButton("bouton1", 100, 100); //création d’un bouton

LogicalToggle tg = new LogicalToggle("toggle1", -100, 100); //création d’un toggle

LogicalLED led1 = new LogicalLED("LED1", 0, 200, led); //creation d'une LED1

LogicalLED led2 = new LogicalLED("LED2", -100, 200, led); //creation d’une LED2

led1.AddSource(bt); //ajout d’un bouton comme source sur la LED1

led2.AddSource(tg); //ajout d’un toggle comme source sur la LED2


Pour cela, dans la bibliothèque informatique il y aura un ensemble de composants logiques comportant des entrées/sorties. La bibliothèque va permettre la simulation du comportement des composants utilisés et afficher une interface avec les différentes entrées sorties pour l'utilisateur.

Description

1. Créer un circuit logique:


1.1. Initialiser les entrées et sorties:


Les entrées seront capables de s'adapter aux besoins de l’utilisateur, afin que celui-ci soit capable d’observer les changements d’état des sorties.


1.2. Réaliser les liaisons entre les composants logiques


2. Simuler le circuit logique:


2.1. Charger un circuit logique


Sélectionner une configuration de circuit logique prédéfinie


2.2. Lancer la simulation


Rendre l'exécution du circuit logique dynamique


3. Téléversement vers un émulateur ou un µ-Processeur Arduino:


3.1. Lien entre la bibliothèque et le logiciel Arduino ou l’émulateur de circuit logique.

Réalisations et résultats

Bilan

Gestion de projet

Diagramme de Gantt