Interruption sur le port parallèle en C/C++ sous dos

xxxxtra Messages postés 3 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 13 janvier 2005 - 13 janv. 2005 à 19:57
xxxxtra Messages postés 3 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 13 janvier 2005 - 13 janv. 2005 à 20:50
Bonjour,



Je realise un programme dans lequel
je voudrais
récupérer des données sur le port // a l'aide
d une interruption sur port parallèle (arrive sur PE ???) en c/c++ sous turbo
c++ et je suis pas
trés sur de moi ^^ donc voila une partie du programme et
merci pour les reponses



#include <stdio.h>

#include <conio.h>

#include <dos.h>



unsigned Port7A=0x37A; //Ligne de Donnee adresse : 0x37A, en lecture et en ecriture

unsigned Port8=0x378; //Ligne de Donnee adresse : 0x378, uniquement en ecriture

int flag;

char recv, temp;



void interrupt(*vect)();



void interrupt acqui()

{

recv=inportb(0x378);

flag=2;

}



void init()

{

vect=getvect(0x0F);

disable();

setvect(0x0F,acqui);

enable();



temp=inportb(Port7A);

temp=temp | 0x10;

outportb(Port7A,temp); //met l'autorisation d'interruption sur le port // bit4 de 0x37A

}



void main()

{

clrscr();

lecture(); //fonction qui fixe le port // en lecture

init();

do

{

if(flag==2)

{

printf("reception: %x",recv);

flag=1;

}

}

while(!kbhit());

disable();

setvect(0x0c,vect);

enable();

getch();

}

2 réponses

xxxxtra Messages postés 3 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 13 janvier 2005
13 janv. 2005 à 20:01
EDIT: 0x378 marche en ecriture et en lecture suivant le mode je crois.
0
xxxxtra Messages postés 3 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 13 janvier 2005
13 janv. 2005 à 20:50
EDIT2:



void init()

{

vect=getvect(0x0F);

disable();


temp=inportb(Port7A);

temp=temp | 0x10;

outportb(Port7A,temp); //met l'autorisation d'interruption sur le port // bit4 de 0x37A


setvect(0x0F,acqui);

enable();

}
0
Rejoignez-nous