Table of Contents
Menu 8255
Ce menu permet d'accéder aux différentes boîtes de dialogue qui gèrent le PPI 8255.
Adresse de base
Cette boîte de dialogue permet de spécifier au programme l'adresse de base actuellement sélectionnée sur la carte. Il est absolument obligatoire de configurer cette adresse correctement, car en cas d'erreur un comportement bizarre de l'ordinateur n'est pas à exclure. Comme il l'a déjà été dit, la plage d'adresse utilisable va de 300h à 31Fh. Le choix d'une autre adresse est interdite. SW1
Cette série de cases à cocher permet de reproduire l'état des différents interrupteurs du DIL Switch SW1. SW1/7 Permet d'activer ou non les circuits PPI8255 et PIT8254. Si cette case n'est pas cochée, aucune opération n'est possible sur ces circuits. SW1/6 à SW1/2 et J96 à J98
Ces contrôles permettent de choisir l'adresse de base du 8255. L'adresse de base du PIT8254 se trouve à l'adresse du PPI8255 + 8.
Etat des ports
Cette boîte de dialogue permet de configurer en entrée ou en sortie les trois ports du PPI8255.
Lecture
En cliquant sur un des boutons Lit, la valeur actuellement présente sur le port choisi sera affichée. La marche à suivre pour cette lecture est la même que celle décrite au point 1 de la description du programme PPI8255.
Ecriture
Lors d'un clic sur le bouton Ecrit, la valeur sélectionnée par la barre de défilement est écrite sur le port. Comme pour la lecture, la méthode utilisée pour l'écriture a été décrite au point 2 du programme PPI8255.EXE.
Chenillard
En ce qui concerne le chenillard, seule la présentation a changé, mais le code est identique aux points 4, 5 et 6 du programme PPI8255.EXE.
La procédure MAJEtatLEDs est directement appelée par l'événement OnChenillardBouge du composant PPI8255 présent sur l'écran principal de l'application. Le code de l'événement OnChenillardBouge de l'écran principal est:
PROCEDURE TfrmMain.PPI8255ChenillardBouge(Sender: TObject); { BUT: Affiche l'état du chenillard lorsque il est en action } BEGIN frmChenillard.MAJEtatLEDs(Sender); END; {PROCEDURE PPI8255ChenillardBouge}
Et dans le procédure MAJEtatLEDs du chenillard, on “allume” ou “éteint” les lampes si la case “Affiche Etat” est cochée.
Pattern
Là aussi, le code est le même que dans le programme PPI8255.EXE. La seule différence se situe au niveau de la procédure AjouteErreur qui est appelée par l'événement OnErrorPattern du composant PPI8255. Le code de la fiche principale qui permet d'ajouter une erreur est le suivant:
PROCEDURE TfrmMain.PPI8255ErrorPattern(Sender: TObject); {BUT: Gestion des erreurs lors du transfert} BEGIN frmPattern.AjouteErreur(Sender); END; {PROCEDURE PPI8255ErrorPattern}
Chronogramme
Il ne faut pas utiliser cette option du programme… mais le programme Chrono.pas. Ce programme a été créé pour tracer un chronogramme montrant la configuration d'un des ports du PPI8255 en sortie, puis l'écriture de valeurs sur ce port.