La magie de CCS
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

La magie de CCS



  1. #1
    punky591

    La magie de CCS


    ------

    Bonsoir

    Pour faire tres simple , j'ai un probleme, ou plutot CCS a un probleme; Je programme un PIC12HV615 , jusque la tout va bien.

    Le truc c'est que j'ai du indiquer l'adresse des registres CCPR1L et CCP1CON pour que le mode PWM fonctionne. Et oui, il y aurait apparemment un problème sur CCS qui fait que lors de l'appel de la fonction "setup_CCP1 (CCP_PWM)" ca ne fonctionne pas.(L'adresse ne serait pas bonne...)

    Le programme suivant fonctionne très bien comme je le veux (Ce n'est qu'un morceau de code) c'est a dire que le rapport cyclique va de 0 a 35% de rapport cyclique puis recommence éternellement. Mais lorsque j’enlève la ligne en rouge ( Qui pourtant n'est appelée nulle part dans le programme) ; Et bien le programme ne fonctionne plus!

    Je pense que c'est encore du a une mauvaise adresse, que le compilateur commence a mettre les variables la ou il ne faut pas mais comment en être sûr? Et surtout comment connaitre l'adresse exacte ou il doit commencer et comment lui indiquer?

    Parce que je ne sais pas ou est la variable "rcycl" dans le PIC mais je parie quelle est pas au bon endroit

    Enfin, c'est mon hypothèse, si quelqu'un en a d'autre je me ferais un plaisir de le lire

    Merci beaucoup pour la participation

    Code:
    #include <12HV615.h>
    #fuses INTRC_IO,NOWDT,PUT,MCLR,NOPROTECT,IOSC8
    #use delay(clock=8000000)
    
    
    #byte CCPR1L = 0x13
    #byte CCP1CON = 0x15
    
    
    
    int rcycl; 
    int i = 0;
    
    void main ()
    {
    	set_tris_a (0b00000000);
    	setup_adc_ports (ADC_OFF);	
    	CCP1CON = CCP_PWM;
    	setup_timer_2 (T2_DIV_BY_16,255,1);
    
    	
    	while (TRUE)
    	{
    		//*********Allumage***************
    		
    		for (i=0;i<85;i++) 
    		{
    			CCPR1L = i;
    			delay_ms (200);
    		}
            }
    }

    -----

  2. #2
    punky591

    Re : La magie de CCS

    Bonjour,

    J'ai trouvé
    Code:
    #ORG
    mais quelle que soit la valeur que je mette ca ne compile pas ;
    Faudrait-il peut être que je mette des #ORG a chaque partie du programme?

    Thanks

  3. #3
    umfred

    Re : La magie de CCS

    est-ce que tu as essayé de mettre #ORG 0x400 ?
    d'après la page 4 de la doc du pic, il semblerai que ce soit le début de la zone de programme

  4. #4
    punky591

    Re : La magie de CCS

    Bonjour umfred,

    merci d'avoir repondu

    Je n'avais pas essayé #ORG 0x400 mais quoi que je mette ca ne veut pas compiler, j'ai cette erreur a chaque fois :

    Code:
    Info : Segment at 00000-003FF (0000 used)
    Info : Attempted to create 00400-00000 for #org
    Error : Invalid ORG range
    Je pense qu'il faut mettre des #org partout non? Mais comme je ne sais pas ou ni quelle valeur mettre, je crois la variable rcycl va rester!

  5. A voir en vidéo sur Futura
  6. #5
    umfred

    Re : La magie de CCS

    je viens de tester la compilation de ton code initial:
    - avec la variable rcycl, la compilation se passe bien, mais avec un warning m'indiquant que cette variable n'est pas utilisée.
    - sans la variable rcycl, la compilation se passe bien sans message d'erreur
    - avec le #org, j'ai le même problème que toi mais au final je pense qu'il sert à rien ici

    Tu peux confirmer que la compilation se passe comme ça ?

Discussions similaires

  1. la magie
    Par chemsse dans le forum Chimie
    Réponses: 2
    Dernier message: 12/02/2011, 21h04
  2. Projet Magie
    Par invite1940d88a dans le forum Électronique
    Réponses: 3
    Dernier message: 19/04/2009, 07h08
  3. Magie et mathématiques
    Par invite5119e3ea dans le forum Mathématiques du supérieur
    Réponses: 7
    Dernier message: 12/02/2007, 08h23
  4. De la magie ou de la biologie ? De la magie biologique !!!
    Par invite403e37bb dans le forum Biologie
    Réponses: 4
    Dernier message: 03/11/2006, 21h57
Découvrez nos comparatifs produits sur l'informatique et les technologies.