Table of Contents
Composant PIT8254
Le but de ce composant est de gérer de manière autonome le PIT 8254.
Les propriétés et méthodes du composant PIT8254
Voici les différentes propriétés et méthodes implémentées dans le composant PIT8254
Propriétés
Name | La propriété Name identifie de manière unique un composant ou un objet. |
---|---|
Tag | La propriété Tag est disponible pour stocker une valeur entière comme partie d'un composant. La propriété Tag n'a aucune signification particulière dans Delphi, mais il est possible de l'utiliser pour stocker une valeur répondant à un besoin particulier.. |
Enabled | Active ou non le composant. Si cette propriété est à TRUE, il est possible d'initialiser les différents compteurs, sinon le composant est désactivé.. |
Version | Cette propriété, en lecture seule, renvoie la version de la VCL.. |
Adresse | Il s'agit de l'adresse de base du 8254. Les autres adresses sont calculées à partir de cette adresse. Par défaut, l'adresse de base est 308h (776 en décimal).. |
ModeCompteur0 | Ces trois propriétés permettent de choisir le mode de fonctionnement des trois compteurs du PIT. Les différents modes de configuration sont mcIndefini (compteur non configuré) ou mcGenreateur (générateur de fréquences). D'autres modes de programmation seront ajoutés plus tard. |
ModeCompteur1 | |
ModeCompteur2 | |
Compteur0 | Ces propriétés permettent de lire la valeur présente sur le port, ou d'y écrire une valeur. |
Compteur1 | |
Compteur2 | |
Quartz | Cette propriété permet d'indiquer quelle est la fréquence du quartz relié au PIT8254. |
Les propriétés vues avec l'inspecteur d'objet de Delphi
Le code du composant PIT8254
Le listing complet de ce composant (VCL8254.PAS) se trouve dans l'annexe 3. Il n'y a ci-dessous qu'une description des principales fonctions qui s'y trouvent.
INTERFACE
Tout comme dans le composant PIT8255, on trouve dans cette partie la déclaration de notre composant PIT8254 ainsi que la procédure Register qui permet d'intégrer notre objet PIT8254 dans l'environnement de développement Delphi.
Dans la déclaration de la classe TPIT8254, il y a tout d'abord toutes les déclarations des variables utilisées dans ce composant (les différentes adresses du 8254, l'état de ses compteurs, etc…) ainsi que les méthodes utilisées pour modifier les valeurs de ces composants (SetCompteur0, SetCanWrite, etc…).
Dans la partie PUBLIC, il y a le CONSTRUCTEUR et le DESTRUCTEUR. Ils ne sont là que pour l'initialisation du composant, et pour fixer les valeurs par défaut des différentes variables.
Et pour terminer, dans la partie PUBLISHED, tout ce qui est “visible” par l'utilisateur final, à savoir les propriétés qui indiquent quelles sont les méthodes à utiliser pour lire ou écrire dans une des variables du composant ainsi que les méthodes de ce composant.
IMPLEMENTATION
Dans cette partie se trouvent toutes les procédures et fonctions déclarées précédemment. Voici une brève description des plus importantes procédures et fonctions…
CONSTRUCTOR Create
Il s'agit de l'initialisation du composant, soit tout d'abord l'appel du constructeur générique hérité TComponent dont notre classe est descendante.
DESTRUCTOR Destroy
Dans le destructor, il n'y a que l'appel du destructor hérité: INHERITED Destroy.
FUNCTION InPortB & FUNCTION OutPortB
Ces deux procédures d'accès aux ports ont été décrites au chapitre “Accès aux ports”.
PROCEDURE SetCntX
Les procédures SetCnt0..SetCnt3 permettent de changer la valeur de départ des compteurs.
Si le mode de fonctionnement du compteur a déjà été défini, une réinitialisation dudit compteur est effectuée avant d'inscrire la nouvelle valeur.
PROCEDURE TPIT8254.SetModeCntX
Les procédures SetModeCnt0..SetModeCnt2 permettent de choisir le mode de fonctionnement des compteurs. Après configuration du compteur, la valeur sélectionnée par SetCntX est chargée dans le compteur.