Atelier simulateur logique, Didapro 9

Inclusion d’un simulateur complet
Le simulateur peut être directement utilisé à partir de logic.modulo-info.ch. Mais on peut aussi l'inclure dans n'importe quelle page web en ajoutant une référence JavaScript:
<script src="https://logic.modulo-info.ch/simulator/lib/bundle.js"></script>
… et un tag spécifique:
<logic-editor></logic-editor>
Exemple ci-dessous (consultez le code source HTML pour voir comment ça fonctionne):
Préchargement d’un circuit
Des circuits complets sont partageables directement dans une URL, comme ici. Ce lien est en fait ceci:
https://logic.modulo-info.ch/?mode=tryout&data=N4KABGBEBukFxgEwBpxQJYDt5gNpomEgAcB7AZx1wFYAGZMATloF0HJ0ATHAZncwCGAWwCmOSAA1I7aAIA2OWgF9UEQiQpU6DAIwAOVuy44ALP2FiEkAJrSoshQmWq1RMpQQ16SAGyGM3Ag6Ouai4gBadjDyikpobGiQpACuAC5UbpqeJgYMdGxQpABO6CKY6VbYRoFg1KGWUABKIqllyWIqYJkeeNR+ef5JJWUVUFUBOIz14gDKpEJhSgkQkADmAq09+GpdkKkAnsQNkACCAHIAIlHuVDoA7N46tINYVI8FSWk4iCoEuwdHcQSADyjWuWTw90eDw+r08PgYdw+KVGel+OyIAOO5yu7Bunh4z10Blh2E8OhQYB0PGRXyCJnRrj2h2OILBeIhuEJ3kQ+SMZMhdSpPlpo3ujPUWPEoPBWxMRKpT1Jtz0ukYou+yniLkgAHd0EURFsuQx-LgzFSCiawCKGObEVbVVTEI7dNQrcFdDS7Z7hR67gx1T6LTog3hKforYhvO6WCAlEA
Les éditeurs inclus peuvent aussi être préchargés avec un circuit:
Modes d’interaction
Un circuit existant peut être partagé en plusieurs modes.

Mode statique: comme une image

Mode test: on peut changer les entrées
Mode connexion: on peut déplacer et connecter les composants déjà sur le canevas
Mode complet: on a en plus la liste de composants à gauche.
Mode admin: seulement directement sur l'éditeur hébergé chez nous. Réglages supplémentaires, circuits défectueux, etc.
Délai de propagation
Un délai de propagation de (par défaut) 100 ms est réglé sur les connexions (plus facilement animable que sur les composants). En le changeant, on peut observer la limite de fréquence de certains circuits.

Par défaut, 100 ms:

Rallongé à 2 s:
Immédiat:
Fils affichés de manière neutre
D'habitude, les circuits, même statiques, montrent les valeurs véhiculées:
On peut masquer les valeurs pour demander aux élèves de les calculer:
On peut aussi afficher le type des portes si on veut être plus sympa:
Circuits défectueux
On peut faire en sorte qu’une porte s’affiche en fait comme une autre porte:
En mode édition, on voit les «fausses» portes en rouge (le même circuit en mode édition).
On peut aussi forcer une sortie à avoir une valeur autre que sa valeur normale, par exemple dans cet enchaînement d'additionneurs:
Le même circuit en mode admin, qui monte la sortie forcée.
Porte cachée
Une porte peut être affichée comme cachée. Quelle est celle-ci?
Mise à disposition de certains composants uniquement
On peut afficher un éditeur qui ne propose pas tous les composants disponibles. Par exemple, ici, on pourrait demander de reconstruire une porte XOR avec des portes OR, AND et NOT.
Autre exemple — l'exercice pourrait être: En connectant des additionneurs complets, réalisez un circuit qui additionne deux nombres A et B de quatre bits.
Plus…
Slides présentées durant l’atelier

Contact: Jean-Philippe Pellet, jean-philippe.pellet@hepl.ch
GitHub: https://github.com/jppellet/Logic-Circuit-Simulator