begin process at 2012 05 29 09:59:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Divers

 > 

interruption en C


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

interruption en C

dimanche 31 octobre 2010 à 20:40:02 | interruption en C

sdiri_med




salut tout l'monde
Je suis un peu pressé et stressé depuis quelque jour. je suis en train de développer une application TR en C sous turbo C++ pour faire des acquisitions des informations venant des capteurs pour commencer le prof ma donnée l’exemple du help de turbo C sur les fonctions getvect et setvect. Mais je n’arrive pas à comprendre le fonctionnement !
Pourriez-vous m’aidez s'il vous plait.
Code C/C++ :
#include <stdio.h>
#include <dos.h>
#include <conio.h>
 
#define INTR 0X1C    /* est ce que  « 0X1C » c&#8217;est le numéro de l&#8217;interruption dans le vecteur des interruptions */ 
 
#ifdef __cplusplus /* selon mes recherche sur internet, __cplusplus  définie uniquement dans le cas d'une compilation C++  et on pourra utiliser cette chaîne de remplacement pour distinguer les parties de code écrites en C++ de celles écrites en C */
    #define __CPPARGS ... /* pourquoi cette instruction */
#else
    #define __CPPARGS /*si elle n&#8217;est pas défini alors en la définir maintenant mais elle sert a quoi */
#endif
Le grand problème et la :
void interrupt ( *oldhandler)(__CPPARGS); /*l&#8217;utilisation de la fonction interrupt et  différente de la déclaration dans le help du turbo C a cause du  (__CPPARGS); ! */
int count=0; /*la réinitialisation  du compteur appartient à la procédure void interrupt oldhandler ? Si oui pour quoi on n&#8217;utilise pas  accolades {} de la fonction void */
void interrupt handler (__CPPARGS)
{
/* increase the global counter */
   count++; // il est ou le temps!
 
/* call the old routine */
   oldhandler();
}
int main(void)
{
/* save the old interrupt vector */
   oldhandler = getvect(INTR);
 
/* install the new interrupt handler */
   setvect(INTR, handler);
 
/* loop until the counter exceeds 20 */
   while (count < 20) /*comment se fait l'incrémentation selon quel critère ' je c'est qui'il comptepar l'instruction c++; mais je veux que la fonction dure 30 seconde*/
      printf("count is %d\n",count);
 
/* reset the old interrupt handler */
   setvect(INTR, oldhandler);
 
   return 0;
}
 

Cordialement.
dimanche 31 octobre 2010 à 22:28:48 | Re : interruption en C

ghuysmans99

Membre Club
INTR représente bien ici l'interruption détournée : l'interruption 0x1C est celle du timer (18,2 fois par seconde). oldhandler est un pointeur long sur une fonction et count est une globale

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question


Cette discussion est classée dans : count, void, interrupt, cppargs, oldhandler


Répondre à ce message

Sujets en rapport avec ce message

interrupt d'un UART [ par jacquesis ] Bonjour, Je debute en 'C++' avant j'utilisais 'C'. J'ai un pgrm de gestion d'un UART qui fonctionne parfaitement avec les instructions suivantes : In Problème de segmentation, incrémentation champs de tableaux [ par wizard512 ] Bonjour, J'ai un petit souci en langage C++ rien de bien compliquer mais bon sachant que je suis rouiller quelques années... J'ai créer une class ave crypter/decrypter simplement une image [ par cool2source ] Bonjour, Je veux faire un programme qui "crypte" un fichier ( texte, image... ). Dans mon programme, je fais un fread du fichier à copier et ensuite découpage de classe - instanciation template [ par vdox ] Bonjour, j'ai créé une classe template. De façon très classique, la déclaration est dans le .hpp et la définition des fonctions dans le cpp. J'aimerai aider moi a compiler mon programme en devC++ [ par samissam ] bonjour, je demande d'aide sur les arbres binaire car je travaille dessus: j'ai fait un code en Dev C++ dont le but de lire et extraire les donnée appel fonction impossible [ par bastien27100 ] Bonjour, voilà mon problème : Dans mon "Form1" je souhaite appeler une fonction se situant dans ma classe "X10", de cette façon : Form1: private: Sys liste de liste en C++ pour manipuler des graphe [ par sbeclo007 ] bonjour, je suis un debutant en c++,et j'espere que vous m'aider à bien savoir comment implemantté un progm de Prim. la premiere des chose qui me gen probleme d'allocation d'une matrice [ par emomar ] salut à tous voila j'ai un probleme avec la fonction remplir voila le code si quelqu'un peut m'aider merci code : [code=cpp]#include #include int n Jeu de la vie en C [ par nala14 ] Bonsoir je programme le jeu de la vie en C et je n'arrive pas à compiler mon programme pourriez vous m'aider svp merci #include #include #include classe abstraite et interface (au sens Java pas graphique :d ) en C++ [ par lulafitt ] Bonjour, Comme précisé dans le sujet quand je parle d'interface je ne parle pas d'interface graphique mais bien d'interface comme dans Java. Ceci dit


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales