Bonjour,
J'ai pas mal cherché sur le net mais je n'ai rien trouvé qui puisse m'aider.
Je voudrai, par l'intermédiaire d'une interruption, récupérer les interruptions d'horloges.
J'ai testé plusieur morceau de code mais à chaque ça bloque à la compilation sur la ligne de déclaration de l'interruption.
J'utilise codeBlocks et le compilateur GNU GCC compiler. Il me fait comme erreur "error: variable or field `interrupt' declared void".
Le code à été récupéré sur internet je n'ai rien changé, à parement il marche en turbo C. J'ai essayé de mettre d'autre #include mais ça ne change rien.
#include <stdio.h>
#include <dos.h>
#define NUM_VECTEUR 0X1C
int compteur=0;
void interrupt (*ancien_pg_it)();
// Mon programme d'IT
void interrupt (mon_pg_it)()
{
disable(); // Masque l'interruption
compteur++; // Incrémente le compteur
enable(); // démasque l'interruption
}
void main(void)
{
char n=0;
//Sauvegarde l'ancienne adresse de la routine d'IT
ancien_pg_it = getvect(NUM_VECTEUR);
//Initialise vecteur d'It avec le nouveau
programme d'IT
setvect(NUM_VECTEUR, mon_pg_it);
while (compteur < 10) n++;
//Réinitialise le vecteur d'IT avec l'ancien
programme d'IT
setvect(NUM_VECTEUR, ancien_pg_it);
printf("Boucle while exécutée %d fois \n", n);
printf("Module IT appel‚ %d fois\n\n",compteur);
}
Merci d'avance pour votre aide.
++