Ok, bon bein c tout simple, techniquement le port parrellel te permet d'appliquer très facilement une tension de 5V théorique (chez moi avec un mulimètre g 4,20 V entre les bornes 2 à 9 et la borne 25 (la borne 1 fournissant tout le temps une alim ...)
Ces bornes sont le bus de données, quand tu envoie un octet, les bornes corespondant se mettent à 5V par ex : envoyer la valeudr décimale 6 sur le bus allume les broches 3 et 4 ( 00000110 en binaire )
Pour envoyer ces données tu doit commencer par dire qu le port est configurée en sortie , pour ca il faut envoyer "0x00" sur bus de controle ( addresse de base du port + 2, donc sur 0x37A, cela se fait par :
outp(0x37A,0x00);
Ensuite tu envoie le nombre entier correspondant au code binaire que tu veut ... dans notre cas, pour allumer les broches 3 et 4 :
unsigned char bin = 6;
outp (0x378, bin );
Voilà, j'espère être clair ...
PS : le code complet pour activer ces deux broches :
#include <stdio.h>
#include <conio.h>
#define DONNEE 0x378
#define CONTROLE 0x37A
void main (void)
{
unsigned char bin;
bin = 6;
outp (CONTROLE, 0x00);
outp (DONNEE, bin );
}
PS2 : ca ne marche pas sous win2000 ni winXP et sous linux il faut utiliser outb de la même manière que outp mais en inversans les paramètres, de plus il faut faire un ioperm pour avoir l'accès au port ...
===============================
Funcky

===============================
On dit que seulement dix personnes au monde comprenaient Einstein. Personne ne me comprend. Suis-je un génie ?