Exemple microchip
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Exemple microchip



  1. #1
    Ticlem

    Exemple microchip


    ------

    Bonjour à tous

    Je suis allé puiser sur microchip des exemples sur le mode capture des pic 18f voila ce que j'ai trouvé :

    Code:

    Code:
    * ADDITIONAL NOTES:
    * Code uses the Peripheral library support available with MCC18 Compiler
    * Code Tested on:
    * PicDem2+ demo board with PIC18F4685 controller
    * The Processor starts with the External Crystal (8 Mhz).
    *
    * signal to be captured is fed to CCP1 pin.
    **************************************************  ********************/
    
    #define USE_OR_MASKS
    #include <p18cxxx.h>
    #include "capture.h"				//header file for using library API for input capture
    #include "timers.h"					//header file for using the library APIs for timers that act as source for input capture
    
    //-------------------------------Configuration setting ----------------------------------------------
    /**
    	* Oscillator is configured as HS
    	* Fail safe monitor is enabled
    	* watch dog timer is disabled
    	* Extended instruction mode is disabled
    	* oscillator switch over is enabled	
    */
    #if defined(__18F4685)		//If the selected device if PIC18F4685, then apply below settings else user will have to set
    #pragma config OSC=HS, FCMEN=ON, WDT=OFF, IESO=ON, XINST=OFF, LVP=OFF 
    #endif
    
    
    unsigned int  INCAPResult;
    
    void main(void)
    {
    unsigned char config1=0x00,timer_value = 0x00;
    	
    //------------------Configure timer for corresponding timer module selection for capture module----------------				
    	  SetTmrCCPSrc(T1_SOURCE_CCP);							//Set Timer 1 as source for input capture module
    
    //------------------Configure input capture ----------------------------------------
    	  config1 = CAP_EVERY_RISE_EDGE | CAPTURE_INT_OFF ;		//configure input capture for capture on every rising edge and its interrupt off
    	  OpenCapture1(config1 );								
    	  OpenTimer1(0);										//start the timer
    	  
    //----------------------wait till input is captured------------------------------------------------------------------------------  
     while(!PIR1bits.CCP1IF);  									// Wait for event
     
    //--------------------------------  read result-----------------------------------------------------------
     INCAPResult = ReadCapture1(); 								// read result
    
    //--------------------------close capture module----------------------------------------  
     CloseCapture1();
     
    	while(1);						//End of program 
    }

    Cependant certain point me sont encore obscure même si j'ai compris le principe du mode capture

    Je commence par cette ligne : "config1 = CAP_EVERY_RISE_EDGE | CAPTURE_INT_OFF"

    Je remarque que le programme n'est écrit que sous "main", et appriori "CAPTURE_INT_OFF" signifie qu'on ne gère pas les intérruptions, comment fait on pour avoir une lecture continue de la période du signal alors?

    Puis à ce niveau : "CloseCapture1();

    while(1);"

    Je comprends que ce programme ne fait qu'une seule lecture de période, et qu'en suite en ce retrouve dans la boucle infini while(1)....
    Est ce bien le cas où est-ce une erreur d'interpretation de ma part?

    Pour finir INCAPResult sera la valeur de ma periode mais sous quelle forme? En nombre d'incrémentation du Timer1 ou en µs?

    Merci de votre aide,

    Bonne journée

    -----

  2. #2
    Aurélien

    Re : Exemple microchip

    Pour l'utilisation du driver Capture, referres toi à la doc sur les librairies, tu y verras quels sont les fonctions (Open, Close, etc.) et parametres associés.
    L'exemple fourni par microchip est par essence un exemple ! Il faut une capture et basta. Libre a toi de remplacer le while(1) par un affichage de resultat, ou autre chose.
    Par defaut ce programme doit s'utiliser avec le debugger comme ça tu peux regarder la variable en watch et vérifier sa valeur.

    Aurélien

Discussions similaires

  1. Microchip
    Par invited8897728 dans le forum Électronique
    Réponses: 11
    Dernier message: 08/04/2011, 21h48
  2. Echantillons microchip
    Par Yannux dans le forum Électronique
    Réponses: 24
    Dernier message: 16/03/2011, 15h35
  3. Microchip PIC
    Par invite56e2be5e dans le forum Électronique
    Réponses: 6
    Dernier message: 03/03/2011, 15h12
  4. USB Microchip.
    Par katmai dans le forum Électronique
    Réponses: 5
    Dernier message: 17/10/2010, 14h42
  5. MicroChip
    Par suzz dans le forum Électronique
    Réponses: 3
    Dernier message: 15/08/2007, 16h54
Découvrez nos comparatifs produits sur l'informatique et les technologies.