Electronique z Informatique Industrielle z Automatisme
SELIAtec S.A.
53, rue de Rountzenheim
B.P. 34
67620 SOUFFLENHEIM
Tél.: 03 88 86 68 54
Fax: 03 88 86 74 76
CD 20
32 sorties digitales
24V opto-isolées
Version - Février 2001
CD 20
Manuel d'utilisation
NOTIFICATION
Les informations contenues dans ce manuel sont susceptibles d'être
modifiées sans préavis.
SELIAtec S.A. NE PEUT ÊTRE TENU RESPONSABLE DES OMISSIONS
TECHNIQUES OU RÉDACTIONNELLES, NI DES DOMMAGES
CONSÉCUTIFS À LA FOURNITURE OU À L'UTILISATION DU PRODUIT
ET DE SON MANUEL.
AVANT LA MISE EN SERVICE, IL INCOMBE A L'UTILISATEUR DE
VERIFIER QUE LES CARACTERISTIQUES TECHNIQUES REPONDENT
AUX SPECIFICATIONS DONNEES POUR LE PRODUIT.
Le présent manuel contient des informations protégées par copyright.
Aucune partie du présent document ne peut être photocopiée ou reproduite
sous quelque forme que ce soit sans l'accord écrit préalable de SELIAtec
S.A.
Les noms et marques cités dans ce manuel sont déposés par les fabricants
respectifs.
-2-
CD 20
Manuel d'utilisation
Conventions :
Cette rubrique vous informe qu'une commande est à saisir
au clavier.
Cette rubrique vous informe que la disquette fournie avec
la carte est à utiliser pour la suite des commandes.
NOTE
Cette rubrique permet de clarifier certaines informations.
ATTENTION Cette rubrique vous recommande de suivre
scrupuleusement les instructions sous peine de provoquer
une détérioration du matériel ou une perte de données.
IMPORTANT, soyez prudent. Cette rubrique vous avertit
que la mauvaise utilisation du matériel ou un non-respect
des instructions risquent d'entraîner des blessures
corporelles.
DIRECTIVE EUROPEENNE 89/336/CEE
Conformité des produits à la directive 89/336/CEE. Selon
les normes européennes harmonisées relatives aux
appareils de traitement de l'information :
- émission NF EN 55022, - immunité NF EN 50082-1.
Les environnements couverts sont les sites résidentiels,
les locaux commerciaux et l'industrie légère intérieurs et
extérieurs. Ex : ateliers, laboratoires, centres de service,
bureaux, etc... Les sites qui sont caractérisés comme
étant alimentés directement en basse tension par le
réseau public sont considérés comme résidentiels,
commerciaux ou l'industrie légère. La conformité à des
normes relatives à d'autres sites peut être vérifiée sur
demmande. En utilisation normale les cartes SELIAtec
sont implantées dans un PC et peuvent être considérées
comme étant un composant faisant partie d'une
installation complète. Il est donc important que
l'intégrateur des produits s'assure que le PC lui-même
ainsi que tous les équipements et le câblage extérieur
répondent dans leur ensemble aux Directives
Européennes CEM. Nous préconisons pour la connexion
de tous les signaux d'entrées et de sorties d'utiliser du
câble, des connecteurs et des capots de connecteurs
blindés. Il est important de veiller à la continuité du
blindage entre le connecteur de la carte, le capot et le
câble. Pour plus de renseignements, voir en annexe CEM
Bien respecter les règles concernant la protection de
l’environnement lorsque vous mettez au rebut des
déchets électroniques.
-3-
CD 20
Manuel d'utilisation
-4-
CD 20
Manuel d'utilisation
TABLE DES MATIERES
1. Introduction 1.1 Contenu de l'emballage
6
1.2 Domaines d'applications................................................................ 6
1.3 Caractéristiques............................................................................. 7
2. Démarrage rapide
8
3. Installation
8
3.1 Ouverture de l'ordinateur ............................................................... 8
3.2 Mise en place de la carte............................................................... 9
4. Configuration
10
4.1. Adresse de base........................................................................... 10
4.2. Adressage..................................................................................... 11
4.3. Fonction chien de garde (watchdog) ............................................ 11
5. Premiers essais
13
5.1. Positionnement d'une sortie ......................................................... 13
6. Exemples de programmation
14
6.1. langage C ..................................................................................... 14
6.2. Pascal ........................................................................................... 15
6.3. Basic ............................................................................................. 16
7. Quelques conseils pratiques
17
8. Spécifications techniques
17
8.1. Caractéristiques techniques des sorties....................................... 17
8.2. Signaux du connecteur................................................................. 18
9. Circuits de protection
18
9.1. Présentation.................................................................................. 18
10. ANNEXES
19
10.1. Schéma d'implantation ............................................................... Erreur ! Signet
10.2. Exemple de branchement........................................................... Erreur ! Signet
10.3. Caractéristiques techniques ....................................................... 19
10.4. Carte de raccordement AV 01 .................................................... 19
10.5. Module de connexion SR 01 ...................................................... 19
10.5. Signaux du connecteur d'extension IBM - AT ............................ 20
11 Fonctions I/Oselia : accès aux ports d'entrées/sorties
21
-5-
CD 20
Manuel d'utilisation
1. Introduction
1.1 Contenu de l'emballage
Déballez soigneusement votre carte d'extension. Vérifiez que vous avez
bien reçu tous les éléments suivants:
 La carte d'extension PC dans son enveloppe antistatique.
 Le manuel d'utilisation.
 La disquette contenant les programmes d'exemples.
Si un de ces éléments manquait ou était endommagé, contactez-nous
immédiatement au 88 86 68 54.
1.2 Domaines d'applications
La carte d'extension CD 20 permet d'équiper votre PC de 32 sorties
digitales industrielles pour des applications d'automatisme.
 Pilotage de machines : ex. industrie automobile, machines-outils, bois,
textile
 Automatisation : ex. suivi de production, gestion climatique
 Robotique : ex. manipulateur, robot de montage
 Contrôle qualité : ex. banc de test
 Scientifique, recherche
 Supervision : ex. surveillance, visualisation de processus
-6-
CD 20
Manuel d'utilisation
1.3 Caractéristiques
La carte d'extension CD 20 est un matériel compatible PC XT, AT.
Elle est peut être adressée librement par des micro-interrupteurs (0 à
3FFh). La carte occupe 4 octets à partir de l'adresse de base. Le
décodage de l'adresse s'effectue dans l'espace I/O de 64 Ko du PC.
La carte CD 20 permet de répondre à de nombreuses applications
industrielles en ne nécessitant qu'un slot court dans le PC.
Capacité en sorties : 32 sorties qui nécessitent une alimentation
extérieure de 24 V =. Celles-ci possèdent une ligne commune (0 V pour
les sorties).
Protection contre l'environnement : grâce à l'utilisation d'optocoupleurs
sur les sorties, il n'y a pas de continuité électrique entre votre ordinateur
et l'installation. La carte CD 20 protège donc parfaitement votre unité
centrale contre toute "remontée" de parasite.
Les sorties sont munies de diodes de protection destinées à amortir les
perturbations dues aux circuits inductifs.
Mise en service : La mise en service de la carte CD 20 se limite au
positionnement des micro-interrupteurs fixant son adresse de base. Elle
est opérationnelle dès la mise sous tension et ne nécessite ni réglage, ni
initialisation.
Sécurité de l'installation : La plupart des programmes d'une installation
viennent scruter périodiquement les cartes de sorties. Une absence
prolongée de consultation est parfois révélatrice d'une panne. C'est
pourquoi la carte CD 20 est pourvue d'un dispositif de chien de garde qui
remet à zéro les sorties digitales, si la carte n'est pas adressée dans un
temps défini (4 secondes en standard, autres délais sur demande).
-7-
CD 20
Manuel d'utilisation
2. Démarrage rapide
ATTENTION. Pour la mise en service rapide de votre
carte, reportez-vous impérativement aux chapitres
suivants:
Ö 4. Configuration
Ö 5. Premiers essais
3. Installation
Pour installer la carte d'extension, procédez comme suit :
3.1 Ouverture de l'ordinateur
IMPORTANT
Éteignez l'ordinateur.
Débranchez le cordon d'alimentation secteur.
Placez le PC sur une surface plane, stable et non encombrée.
Enlevez le capot de l'ordinateur.
-8-
CD 20
Manuel d'utilisation
3.2 Mise en place de la carte
 Retirez la plaque de protection de l'un des emplacements libres du
BUS ISA (Voir figure 1) .
Figure 1
Remarque : La carte est prévue pour fonctionner dans un slot court XT
ou AT.
ATTENTION. Les décharges d'électricité statique
peuvent endommager les composants électroniques.
Respectez les quelques règles de prudence suivantes:
 Transportez et conservez la carte dans son emballage antistatique.
 Ne touchez pas les composants électroniques.
 Manipulez la carte par les bords et son équerre métallique de
fixation.
-9-
CD 20
Manuel d'utilisation
Configurez la carte (Voir chapitre 4.Configuration) .
 Insérez la carte dans l'emplacement choisi. Veillez à bien l'aligner sur
le
connecteur ISA avant de l'enfoncer (Voir figure 2) .
Figure 2
Enfoncez la carte complètement en appuyant sans forcer.
Remettez en place la vis de fixation.
Remontez l'ordinateur. La carte est maintenant prête à l'emploi.
4. Configuration
4.1. Adresse de base
Dans un premier temps, vous devez choisir un emplacement libre de 4
octets dans la carte entrée de votre PC.
L'adresse est déterminée par 8 micro-interrupteurs (S1 à S8) possédant
la signification indiquée par le tableau suivant :
Tableau du décodage des bit d'adresse :
Bit d'adresse
A9
A8
A7
A6
A5
A4
A3
A2
- 10 -
CD 20
Manuel d'utilisation
Microswitch
Etat logique
S8
S7
S6
1
1
0
S5
S4
S3
S2
S1
0
0
1
0
1
Dans l'exemple ci-dessus, l'adresse de base 314HEX est décodée.
S1 à S8 sont les interrupteurs du micro-switch SW1.
Un état logique 0 correspond à la position ON des interrupteurs .
Un état logique 1 correspond à la position OFF des interrupteurs.
A la livraison, l'adresse de base est sélectionnée à 0300 HEX.
4.2. Adressage
Adresse
Bit
7
S
8
Bit
6
S
7
Bit
5
S
6
Base + 1
S
16
S
15
Base + 2
S
24
S
23
Base + 0
Base + 3
Registre
Bit
Bit
4
3
Accès
Bit
2
Bit
1
S5
S4
S3
S2
S
14
S
13
S
12
S
11
S
10
S
22
S
21
S
20
S
19
S
18
S
32 S 31 S 30 S 29 S 28 S 27 S 26
Bit
0
Ecritur
e
S1
(WR)
S Ecritur
9
e (W
R)
S Ecritur
17
e (W
R)
Ecritur
e
S 25
(WR)
Sorties :
S 1 ... S 32 = état logique 1 ⇒ Bit correspondant = 1
S 1 ... S 32 = état logique 0 ⇒ Bit correspondant = 0
4.3. Fonction chien de garde (watchdog)
- 11 -
CD 20
Manuel d'utilisation
Lors des premiers essais de la carte, il est conseillé de mettre cette
fonction hors service.
Le watchdog est constitué d'une bascule monostable avec un temps
compris en tre 4 et 5 secondes. La bascule monostable est réarmée
chaque fois que la carte est adressaée en écriture. S'il n'y a pas
d'adressage pendant plus de 4 seconde, le watchdog est activé et met
toutes les sorties à "0".
WD
WATCH-DOG non activé
WD
WATCH-DOG activé
- 12 -
CD 20
Manuel d'utilisation
5. Premiers essais
Commandes élémentaires :
Pour réaliser les premiers essais, la solution la plus simple consiste à
piloter la carte CD 20 à partir d'un interpréteur BASIC.
Supposons que l'adresse de base soit demeurée à la valeur usine 0300
H. Pour tester votre carte, il suffit de taper les commandes suivantes :
OUT &H0300,255 pour mettre à 1 les sorties 1 à 8.
OUT &H0301,255 pour mettre à 1 les sorties 9 à 16.
OUT &H0302,255 pour mettre à 1 les sorties 17 à 24.
OUT &H0303,255 pour mettre à 1 les sorties 25 à 32.
5.1. Positionnement d'une sortie
Pour mettre à "1" la sortir numéro 5 et ne pas toucher aux autres sorties
il d'abord mémorisé leur état.
Nous supposerons donc que les variables SORTIE1, SORTIE2 ..
SORTIE 32 représentent l'état logique courant de chacune des sorties.
Procédure à suivre pour la mise à "1" de la SORTIE5 :
SORTIE5 = 1
OUTBYTE = SORTIE1 + SORTIE2x2 + SORTIE3x4 + SORTIE4x8 +
SORTIE5x16 +
SORTIE6x32 + SORTIE7x64 + SORTIE8x128
OUT &0302,OUTBYTE
L'élaboration de
binaire/décimal.
l'octet
OUTBYTE
n'est
qu'une
conversion
- 13 -
CD 20
Manuel d'utilisation
6. Exemples de programmation
6.1. langage C
/*-----------------------------------------------------------CD20.C -- Example for using CD20
(c) SELIA SA, 1994
----------------------------------------------------------*/
#define ADRBASE 0x300
void main (void)
{
char Out1;
char Out2;
char Out3;
char Out4;
/* ------------------------------ */
/* Write digital output CD20 */
/* ----------------------------- */
Out1 = 0x55;
Out2 = 0xAA;
Out3 = 0x55;
Out4 = 0xAA;
/* Digital output value */
outportb (ADRBASE , Out1);
outportb (ADRBASE + 1, Out2);
outportb (ADRBASE + 2, Out3);
outportb (ADRBASE + 3, Out4);
}
/* Write 8 bit output port LSB byte */
/* Write 8 bit output port Mid byte */
/* Write 8 bit output port Mid byte */
/* Write 8 bit output port MSB byte */
- 14 -
CD 20
Manuel d'utilisation
6.2. Pascal
(*-----------------------------------------------------------CD20.C -- Example for using CD20
(c) SELIA SA, 1994
----------------------------------------------------------*)
Program CD20;
Const
ADRBASE = $300;
Var
Out1 : byte;
Out2 : byte;
Out3 : byte;
Out4 : byte;
(* ----------------------------- *)
(* Write digital output CD20 *)
(* ----------------------------- *)
Begin
Out1 := $55;
Out2 := $AA;
Out3 := $55;
Out4 := $AA;
Port [ADRBASE ] := Out1;
Port [ADRBASE + 1] := Out2;
Port [ADRBASE + 2] := Out3;
Port [ADRBASE + 3] := Out4;
End.
(* Digital output value *)
(* Write 8 bit output port LSB byte *)
(* Write 8 bit output port Mid byte *)
(* Write 8 bit output port Mid byte *)
(* Write 8 bit output port MSB byte *)
- 15 -
CD 20
Manuel d'utilisation
6.3. Basic
' -----------------------------------------------------------' CD20.C -- Example for using CD20
'
(c) SELIA SA, 1994
' ---------------------------------------------------------CONST ADRBASE = &H300
DIM Out1 AS INTEGER
DIM Out2 AS INTEGER
DIM Out3 AS INTEGER
DIM Out4 AS INTEGER
' -----------------------------' Write digital output CD20
' ----------------------------Out1 = &H55
Out2 = &HAA
Out3 = &H55
Out4 = &HAA
' Digital output value
OUT ADRBASE, Out1
OUT ADRBASE + 1, Out2
OUT ADRBASE + 2, Out3
OUT ADRBASE + 3, Out4
END
' Write 8 bit output port LSB byte
' Write 8 bit output port Mid byte
' Write 8 bit output port Mid byte
' Write 8 bit output port MSB byte
- 16 -
CD 20
Manuel d'utilisation
7. Quelques conseils pratiques
Veillez au bon raccordement des blindages et des terres.
Les blindages des câbles ne doivent être raccordés à la terre qu'à
une seule de leurs extrémités. Pour éviter des courants parasites
dans le blindage, l'autre extrémité doit rester libre de tout potentiel.
La connexion des divers éléments à la terre doit se faire en étoile sur
une seule prise de terre de bonne qualité.
Il est conseillé de protéger les sorties contre les circuits inductifs. Les
relais et les électrovannes génèrent des surtensions et des courants
inductifs.
Pour les relais, il est conseillé de mettre en parallèle sur la bobine une
diode rapide dont la cathode sera connectée au pôle positif de la
bobine.
Pour les électrovannes, vous pouvez placer un écrêteur possédant
une tension nominale supérieure à la tension d'alimentation et
capable de dissiper au moins 90 joules.
8. Spécifications techniques
8.1. Caractéristiques techniques des sorties
Tension d'isolation des optocoupleurs
: 2500 Vrms
Tension d'alimentation nominale ....... : 24 V DC (Externe)
Tension d'alimentation maximale ...... : 30 V DC (Externe)
Courant de sortie maximum .............. : 200 mA
Raccordements des sorties
Connecteur de type SUB-D mâle à 37 broches avec écrous de fixation
pour la contre-fiche femelle (non fournie). Se trouve sur la face arrière du
PC une fois la carte mise en place.
Raccordements facilités par l'utilisation des accessoires de connexion :
câbles BV 10, BV 11, cartes AV 01, SR 01...
- 17 -
CD 20
Manuel d'utilisation
8.2. Signaux du connecteur
19
S 31
S 29
S 27
S 25
S 23
S 21
S 19
S 17
0V ext.
24V ext.
S 15
S 13
S 11
S9
S7
S5
S3
S1
37
20
S 32
S 30
S 28
S 26
S 24
S 22
S 20
S 18
0V ext.
24V ext.
S 16
S 14
S 12
S 10
S8
S6
S4
S2
1
SUB-D37
9. Circuits de protection
9.1. Présentation
Afin de palier aux perturbations électromagnétiques et de se conformer
aux directives de la Communauté Européenne, toutes les lignes
disponibles sur le connecteurs SUB-D 37 broches sont protégées par
des filtres EMI. Ces filtres permettent d'agir directement sur les signaux
de sorties contre les interférences électromagnétiques en protégeant
ainsi efficacement la carte.
Pour l'évacuation des courants parasites, le point commun des filtres
EMI est relié directement au châssis du PC par l'intermédiaire de son
équerre métallique de fixation.
- 18 -
CD 20
Manuel d'utilisation
10. ANNEXES
ANNEXE C
10.3. Caractéristiques techniques
Consommation :
+ 5 V du PC, 500 mA
Environnement :
Température de fonctionnement : 0 à 50°C
Température de stockage : - 40 à 100 °C
Mécanique :
Dimensions : 165 mm × 99 mm × 15 mm
Circuit imprimé en verre époxy d'épaisseur 1.6 mm, connecteur vers
BUS PC en NiAu, double face à trous métallisés et vernis épargne
ANNEXE D
10.4. Carte de raccordement AV 01
Carte de connexion 37 broches vers des bornes à visser. Elle s'enfiche
directement sur le connecteur SUB-D 37 de la carte CD 20. Le
raccordement des signaux est aisé et ne nécessite pas de câble.
10.5. Module de connexion SR 01
Module de connexion prévu pour un montage sur rail DIN. Equipé d'un
connecteur SUB-D 37 broches femelles pour une liaison directe avec les
cartes d'acquisition. La connexion des signaux s'effectue sur des bornes à
vis. En option le module peut être monté avec des leds de visualisation.
- 19 -
CD 20
Manuel d'utilisation
ANNEXE E
10.5. Signaux du connecteur d'extension IBM - AT
Coté soudure
Coté composants
GND
RESET DRV
+ 5V
IRQ2
- 5V
DRQ2
- 12V
RESERVE
+ 12V
GND
/ MEMW
/ MEMR
/ IOWR
/ IORD
/ DACK3
DRQ3
/ DACK1
DRQ1
/ DACK0
CLK
IRQ7
IRQ6
IRQ5
IRQ4
IRQ3
/ DACK2
T/C
ALE
+ 5V
OSC
GND
B1
B2
B3
B4
B5
B6
B7
B8
B9
B10
B11
B12
B13
B14
B15
B16
B17
B18
B19
B20
B21
B22
B23
B24
B25
B26
B27
B28
B29
B30
B31
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
A13
A14
A15
A16
A17
A18
A19
A20
A21
A22
A23
A24
A25
A26
A27
A28
A29
A30
A31
/ IO-CH CK
D7
D6
D5
D4
D3
D2
D1
D0
IO-CH RDY
AEN
A19
A18
A17
A16
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
A0
/ MEM-CS16
/ IO-CS16
IRQ10
IRQ11
IRQ12
IRQ15
IRQ14
/ DACK0
DRQ0
/ DACK5
DRQ5
/ DACK6
DRQ6
/ DACK7
DRQ7
+ 5V
/ MASTER
GND
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
D15
D16
D17
D18
C1
C2
C3
C4
C5
C6
C7
C8
C9
C10
C11
C12
C13
C14
C15
C16
C17
C18
/ SBHE
A23
A22
A21
A20
A19
A18
A17
/ MEMR
/ MEMW
D8
D9
D10
D11
D12
D13
D14
D15
- 20 -
CD 20
Manuel d'utilisation
ANNEXE F
11 Fonctions I/Oselia : accès aux ports d'entrées/sorties
La librairie I/Oselia permet l'accès aux ports d'entrées/sorties ainsi que la
gestion des interruptions dans les environnements Windows 95/98 et Win NT.
Pour un système d'exploitation multitâche sans compromis, l'utilisation de la
librairie est conseillée dans la mesure ou l'accès exclusif aux ressources est
garanti par un mécanisme de verrouillage. De plus, certains logiciels ne
disposent pas d'instructions d'entrées/sorties dans leur langage de
programmation. Dans ce cas, il est impératif d'utiliser les fonctions fournies
par cette librairie dynamique .
Les différentes fonctions présentes dans la librairie dynamique sont:
- IOSelia_error
- IOSelia_lock
- IOSelia_unlock
- IOSelia_inportb
- IOSelia_outportb
: Indication de la dernière erreur commise
: Verrouillages de ressources
: Déverrouillages des ressources
: Lecture d'un port d'entrée/sortie
: Ecriture sur un port d'entrée/sortie
Les fonctions "IOSelia_inportb" et "IOSelia_outportb" représentent les
fonctions utiles de la librairie et elles correspondent aux instructions machines
d'accès aux ports d'entrées/sorties, à savoir "in al,dx" et "out dx,al".
Toutes les fonctions renvoient une valeur booléenne indiquant le succès de
l'opération demandée. En cas d'erreur la fonction "IOSelia_error" indique le
code de la dernière erreur commise.
La librairie "IOSelia" est utilisable dans tout environnement de programmation
supportant les librairies dynamiques. Toutefois, il peut s'avérer nécessaire de
déclarer les fonctions de la librairie avant leur utilisation. Ainsi sous Visual
Basic 5.0, les différentes fonctions doivent être déclarées (voir l'instruction
DECLARE dans votre manuel de programmation de Visual Basic).
- 21 -
CD 20
Manuel d'utilisation
enum IOSelia_ErrorCodes
Liste des codes erreurs des différentes fonctions. Toutes les fonctions de la
librairie renvoient une valeur booléenne indiquant le succès de l'opération. Si
une erreur s'est produite la fonction IOSelia_Error ( ) renvoie le code de cette
erreur.
IOSELIA_ERROR_NONE
aucune erreur
IOSELIA_ERROR_INVALID_PARAMETERS
Paramètres sont incorrects
IOSELIA_ERROR_USED_IOPORTS
La plage de ports d'entrées/sorties n'est pas libre
IOSELIA_ERROR_USED_INTERRUPT
L'interruption demandée n'est pas libre
IOSELIA_ERROR_NOT_LOCKED
La ressource n'est pas verrouillée
IOSELIA_ERROR_BAD_IOPORTS
Les ports d'entrées/sorties demandés sont invalides
IOSELIA_BAD_INTERRUPT
L'interruption demandée est invalide
IOSELIA_ERROR_TOO_MANY_LOCKS
Le nombre de verrous maximum a été atteint
IOSELIA_ERROR_INVALID_HANDLE
Le descripteur est invalide
IOSELIA_ERROR_CANNOT_RELEASE_INTERRUPT
L'interruption ne peut être déverrouillée
IOSELIA_ERROR_CANNOT_CREATE_EVENT
L'événement associé à l'interruption ne peut être crée
IOSELIA_ERROR_DEVICE_IO_CONTROL
Erreur lors de la procédure DEVICE_IO_CONTROL
IOSELIA_ERROR_USED_RESSOURCES
Les ressources demandées sont déjà utilisées
IOSELIA_ERROR_UNSUPPORTED
Cette fonctionnalité n'est pas supportée dans cette version
- 22 -
CD 20
Manuel d'utilisation
Liste des fonctions
Tous les paramètres des fonctions sont passés en arguments, les préfixes IN
et OUT permettent d'identifier respectivement les données en entrées et les
variables modifiées par la fonction.
ULONG
IOSelia_error (void)
Indication de la dernière erreur commise
BOOL
IOSelia_Lock
(IN ULONG base, IN ULONG interruptno, IN VOID interruptno
IN VOID * info, OUT ULONG * handle)
Verrouillage des ressources
BOOL
IOSelia_unlock
(IN ULONG handle)
Déverrouillage des ressources
BOOL
IOSelia_outportb
(IN ULONG handle, IN ULONG offset, OUT ULONG * value)
Ecriture sur un port d'entrée/sortie
BOOL
IOSelia_ inportb
(IN ULONG handle, IN ULONG offset, OUT ULONG * value)
OUT ULONG * value
Lecture sur un port d' entée/sortie
ULONG IOSelia_error (void)
Cette fonction renvoie le code de la dernière erreur survenue. Elle doit être
appelée lorsqu'une des fonctions IOSelia a échoué afin de déterminer la
cause de l'échec.
Retour
Voir aussi
code de la dernière erreur
IOSelia_ErrorCodes
- 23 -
CD 20
Manuel d'utilisation
BOOL IOSelia-lock (IN ULONG iostart, IN ULONG ioend, IN ULONG
interruptno, IN VOID *info, OUT ULONG *handle)
Cette fonction doit être appelée afin de réserver l'accès à une ressource.
Une ressource est soit :
- soit une plage d'adresse d'entrées/sorties
- soit un numéro d'interruption avec une fonction utilisateur associée
éventuelle
soit les deux à la fois
Paramètre
Retour
Voir aussi
iostart- adresse de base de la plage d'entrée/sortie
ioend- adresse de fin de la plage d'entrée/sortie
interruptno- numéro de l'interruption déclenchée
info- argument variable.
Sous Win95 : pointeur sur une fonction à exécuter
lors de l'interruption,
Sous WinNT : nom de l'événement déclenché
lors de l'interruption
TRUE en cas de succès de l'opération
IOSelia_ErrorCodes
Exemple:
BOOL success ;
ULONG handle, error ;
// réservation des ports d' e/s de 0x300 à 0x308
success=IOSelia_lock (0x300, 0x308, 0,NULL, &handle) ;
If ( ! Success ) error= IOSelia_error ( ) ;
// réservation d'une interruption et définition d'une fonction
// utilisateur sous Windows 95
// le prototype de la fonction est "void (* func) ( )
success=IOSelia lock (0,0,7,isrfunction,&handle) ;
If ( ! succès ) error=IOSelia_error ( );
// réservation d'une interruption et définition d'un événement
// déclenché sous Windows NT
// l'utilisateur devra se mettre en attente de l'événement par
// la fonction "WaitForSingleObjet" dans une tâche séparée
// pour éviter une attente active.
Success= IOSelia_lock (0,0,7,"EventInt 7",&handle);
If (! Success) error=IOSelia_error ( );
- 24 -
CD 20
Manuel d'utilisation
Le descripteur "handle" renvoyé par la fonction permet l'accès exclusif aux
ports d'entrées/sorties réservés. Dans le cas d'une réservation d'interruption,
celle-ci est verrouillée afin d'éviter tout conflit avec un autre périphérique. Le
déclenchement de l'interruption provoque soit l'exécution d'une fonction
utilisateur dans le cas de Windows 95, soit le déclenchement d'un événement
sous Windows NT.
Utilisez la fonction "IOSelia_unlock" pour libérer les ressources.
BOOL IOSelia_unlock (IN ULONG handle)
Cette fonction restitue les ressources réservées et identifiées par le
prescripteur "handle".
Paramètre
Retour
Voir aussi
handle- est le descripteur de carte renvoyé lors de
l'allocation de la ressource par IOSelia_lock
TRUE en cas de succès de l'opération
IOSelia_ErrorCodes et IOSelia_lock
Exemple:
// Libération des ressources identifiées par le descripteur handle
BOOL success= IOSelia_unlock (handle) ;
If (! Success) error=IOSelia_error( )
BOOL IOSelia_outportb (IN ULONG handle, IN UNLOG offset OUT
ULONG value)
Ecriture d'un caractère sur un port d'entrée/sortie. Celui-ci est référencé par le
"handle" retourné lors de la réservation de la plage des ports d'entrée/sortie
plus un décalage "offset ajouter à l'adresse de base référencée par le
"handle".
Paramètre
Retour
Voir aussi
handle- est le descripteur renvoyé lors de l'allocation
de la ressource par "IOSelia_lock
Offset- correspond au décalage du port auquel on souhaite
accéder, par rapport à l'adresse de base.
Value- représente l'octet à émettre sur le port
d'entrées/sorties
TRUE en cas de succès de l'opération
IOSelia_ErrorCodes et IOSelia_lock
- 25 -
CD 20
Manuel d'utilisation
Exemple:
ULONG value_8bits=0xE8 ;
BOOL success=IOSelia_inportb (handle,0x5,value_8bits);
If (! Success ) error=IOSelia_error ( );
// Ecriture de la valeur 1xE8 sur le port d' e/s 0x305
BOOL IOSelia_inportb (IN ULONG handle, IN ULONG offset, OUT
ULONG * value)
Lecture d'un caractère sur un port d'entrée/sortie. Celui-ci est référencé par le
"handle" retourné lors de la réservation de la plage des ports d'entrées/sorties
plus un décalage "offset" à ajouter à l'adresse de base référencé par le
"handle".
Paramètre
Retour
Voir aussi
handle- est le descripteur renvoyé lors de l'allocation
de la ressource par IOSelia_lock.
Offset- correspond au décalage du port auquel on souhaite
accéder, par rapport à l'adresse de base.
TRUE en cas de succès de l'opération
IOSelia_ErrorCodes et IOSelia_lock
Exemple:
ULONG value_8bits;
BOOL success= IOSelia_inportb (handle, 0x5)
- 26 -
">
									 
							
						公開リンクが更新されました
あなたのチャットの公開リンクが更新されました。
 
                     
                     
                    