Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

save et restore pour interupt en c pour pic



  1. #1
    vinowan

    save et restore pour interupt en c pour pic


    ------

    bonjour,

    j'utilise maplab 8.46 et le compilateur C de hight tech

    je voulais juste savoir si il est necessaire de sauver les registre W et STATUS apres appel de la roitine d'interuption?

    je ne comprend pas tres bien ce qui est expliquer dans le mode d'emploi du compilateur. j'ai bien essayer de regarder dans le listing desasembler, mais pas tres facile de si retrouver.

    voici ma procedure , ca peux toujours aider.

    Code:
    #include <htc.h>
    
    #define reset_tempo_arret	10
    		
    unsigned short tempo_arret;
    
    extern volatile unsigned char arret;
    extern volatile unsigned short compteur_tacho;
    
    void interrupt my_isr ( void) {
    
    
    	if (T0IE && T0IF) {
    
    		T0IF = 0;
    	
    		//temporisation 50ms
    		if (tempo_arret == 0){
    			tempo_arret = reset_tempo_arret;
    			arret = 1;
    		}
    		else {
    			tempo_arret--;
    		}
    	}
    
    	if (TMR1IE && TMR1IF) {
    	
    		TMR1IF = 0;
    		TMR1H = 0xFF;
    		TMR1L = 0xFF;
    		compteur_tacho ++;
    		if (compteur_tacho > 9999) {
    			compteur_tacho = 0;
    		}
    	}
    }
    merci de votre aide.

    -----

  2. #2
    invite03481543

    Re : save et restore pour interupt en c pour pic

    Bonjour,

    non inutile tout est automatiquement fait par le compilateur au travers de la fonction interrupt().

  3. #3
    vinowan

    Re : save et restore pour interupt en c pour pic

    merci hulk28,

    j'ai regarder dans le fichier assembler, on ne voit pas de sauvegarde de w en debut de code de l'interupt, mais comme vous écrivez qu'il le fait au travers de la procedure d'interupt je suposse que ce n'est pas nécessairement en debut de procedure qu'il le fait.

    merci de votre aide precieuse.

  4. #4
    vinowan

    Re : save et restore pour interupt en c pour pic

    petite question,

    est il important de declarer les variable en volatile?

    je ne le fait plus et ca marche tout aussi bien ?

    merci.

  5. A voir en vidéo sur Futura

Discussions similaires

  1. plusieur interupt sur pic16F628A
    Par vinowan dans le forum Électronique
    Réponses: 3
    Dernier message: 03/02/2010, 10h11
  2. Besoin d'aide pour de la programmation d'un PIC en PIC BASIC
    Par quentinbet dans le forum Électronique
    Réponses: 24
    Dernier message: 26/01/2010, 11h18
  3. Réponses: 8
    Dernier message: 11/05/2009, 12h52
  4. power save mode pic 18F6520
    Par jum0034 dans le forum Électronique
    Réponses: 5
    Dernier message: 10/03/2009, 21h28
  5. Réponses: 0
    Dernier message: 26/05/2008, 21h23
Découvrez nos comparatifs produits sur l'informatique et les technologies.