Z80 : une exécution pas-à-pas qui fonctionne

Magazine
Marque
Hackable
Numéro
28
Mois de parution
janvier 2019
Domaines


Résumé
Dans le précédent article, nous avons fait connaissance avec le signal /WAIT et son utilité lorsqu'il est associé à une action découlant de l'inspection du signal /M1. Nous avons rapidement développé un croquis Arduino nous permettant de lier ces deux signaux et avons eu l'impression que ceci fonctionnait à merveille puisque l'exécution des instructions par le Z80 semblait effectivement ralentie. Faisons face ensemble à la triste réalité, aux limitations d'une carte comme l'Arduino UNO et surtout, à la façon de régler le problème...

À 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.

z80_probleme

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...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Le module du moment : afficheur matrice led 8x32

Magazine
Marque
Hackable
Numéro
34
Mois de parution
juillet 2020
Domaines
Résumé

La bibliothèque MD_MAX72XX de Marco Colli (alias MajicDesigns) permet de piloter un ou plusieurs modules en configuration linéaire (les uns après les autres, sur une ligne), mais elle forme également la base de la bibliothèque MD_MAXPanel supportant des agencements en panneaux et fournissant des primitives graphiques intéressantes (points, lignes, rectangles, cercles, etc.).

Développement ESP32 avec le nouveau ESP-IDF 4.0

Magazine
Marque
Hackable
Numéro
34
Mois de parution
juillet 2020
Domaines
Résumé

Nous avons précédemment traité du développement sur la fantastique plateforme ESP32, héritière du non moins délectable ESP8266, aussi bien au travers de l'IDE Arduino que via l'environnement de développement créé par le constructeur, Espressif Systems, répondant au doux nom de ESP-IDF. Le 11 février dernier était annoncée la version 4.0 de cet environnement, majoritairement compatible avec la précédente version 3.3.1, mais apportant un lot majeur d'améliorations et quelques changements très intéressants dans le système de construction/compilation. Il est donc temps de revisiter la bête et de tester tout cela...

Émulation d’un circuit comportant un processeur Atmel avec simavr

Magazine
Marque
Hackable
Numéro
34
Mois de parution
juillet 2020
Domaines
Résumé

Il existe de nombreux cas où le matériel n’est pas disponible pour développer un système embarqué, que ce soit parce que la carte commandée n’a pas encore été livrée, parce que le collègue chargé de la conception du circuit imprimé a fait une erreur ou est en retard, ou parce qu’un virus interdit l’accès aux salles de travaux pratiques de l’Université (Fig. 1). Pour toutes ces raisons, nous désirons appréhender le développement d’un système embarqué sur un émulateur, c’est-à-dire un logiciel capable de fournir une représentation fidèle du comportement du dispositif réel, incluant ses latences et temporisations.

Un RISC-V à bas coût pour monitorer votre PC avec LCDproc

Magazine
Marque
Hackable
Numéro
33
Mois de parution
avril 2020
Domaines
Résumé

Dans un précédent Hackable, Patrice Kadionik nous présentait un montage permettant d’afficher l’état de votre ordinateur sur un petit afficheur déporté, branché à un port USB. Dans cet article, nous allons voir comment il est possible de faire la même chose avec un kit RISC-V à 4.90 $, muni d’un microcontrôleur GD32VF de la société GigaDevice. Une belle occasion de mettre en pratique un microcontrôleur RISC-V réel.

Le module du moment : bouton capacitif

Magazine
Marque
Hackable
Numéro
33
Mois de parution
avril 2020
Domaines
Résumé

Le bouton-poussoir est la forme la plus basique d'interface humaine qu'un montage puisse avoir. Ceci suppose cependant de prendre en compte bon nombre de caractéristiques mécaniques et électroniques, comme par exemple le fait de gérer les rebonds, de manière matérielle ou logicielle. Pouvoir disposer d'une telle interface sous une forme plus simple et plus « moderne » est l'objet même de ce module proposant un bouton tactile capacitif et donc, sans éléments mécaniques.