IMA3/IMA4 2021/2023 P2 : Différence entre versions

De Wiki de Projets IMA
(Description)
(Description)
Ligne 36 : Ligne 36 :
 
==Description==
 
==Description==
  
'''1. Créer un circuit logique:'''
+
'''1. Créer un circuit logique:
  
 
   1.1. Initialiser les entrées et sorties:
 
   1.1. Initialiser les entrées et sorties:
Ligne 44 : Ligne 44 :
 
   1.2. Réaliser les liaisons entre les composants logiques
 
   1.2. Réaliser les liaisons entre les composants logiques
  
'''2. Simuler le circuit logique:'''
+
'''2. Simuler le circuit logique:
  
 
   2.1. Charger un circuit logique
 
   2.1. Charger un circuit logique
Ligne 54 : Ligne 54 :
 
=> Rendre l'exécution du circuit logique dynamique  
 
=> Rendre l'exécution du circuit logique dynamique  
  
'''3. Téléversement vers un émulateur ou un µ-Processeur Arduino:'''
+
'''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.
 
   3.1. Lien entre la bibliothèque et le logiciel Arduino ou l’émulateur de circuit logique.

Version du 10 octobre 2022 à 11:34

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