À la fin du précédent article se trouvait une capture d'écran d'un oscilloscope présentant deux signaux : le signal /M1 généré par le Z80 et le signal /WAIT produit par nos soins. Ce qu'on peut y voir n'est absolument pas le résultat que nous visions. En effet, notre objectif était de passer /WAIT à l'état bas dès lors que le signal /M1 passait à la masse, puis après une courte pause faire revenir /WAIT à la tension d'alimentation pour laisser le Z80 poursuivre son exécution.
Un oscilloscope, même d'entrée de gamme, est un avantage certain pour identifier les problèmes. On peut voir ici clairement que notre signal /WAIT (en bleu, en bas) ne descend pas à la masse assez rapidement en réaction au front descendant du signal /M1 du Z80 (en jaune, en haut). Le Z80, lui, n'a absolument aucun problème à ressortir de son état d'attente dès que /WAIT passe à l'état haut. Conséquence : plus d'une instruction est exécutée avant que le Z80 ne passe en attente...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première