Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1643 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [C] PIC18F2580 problème sortie inversée

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C] PIC18F2580 problème sortie inversée

n°2163354
swissforev​er
i7 Inside
Posté le 10-11-2012 à 11:05:38  profilanswer
 

Hello,
 
J'ai un soucis, je suis pas à mon premier programme en C sur les PIC18F, j'ai fais quelques bricolages... mais là je sèche...
 
J'utilise le mode compare/capture pour mesurer le temps d'un signal d'un récepteur IR, là tout va bien
 
J'utilise aussi le timer0 pour faire une tempo de 1us pour la réutiliser après pour faire moi même un signal pour envoyer sur une led IR...
 
Le problème c'est que quand j'envoie le bit de start (9ms à 1, 4.5ms à 0) la sortie s'inverse dès le début des 9ms, puis tout le signal est intégralement inversé!
 
J'ai essayé de changer de sortir passé de RC4 à RA0 (avec config en digital et non analog pour les E/S) mais idem...
 
Je pense que cela vient d'une de mes initialisations ou je ne sais quoi?!
 
Voici les initialisations du code...
 

Code :
  1. TRISA = 0x00;    // En Sortie
  2. TRISB = 0b00001111;   // En sortie-entrée
  3. TRISC = 0;     // En sortie
  4. ADCON1 = 0b00001111;
  5. // configure le TIMER0
  6. T0CONbits.TMR0ON = 0; // Timer 0 = off
  7. T0CONbits.T08BIT = 0; // Timer 8bits = 1, 16bits = 0
  8. T0CONbits.T0CS = 0;  // 0 = clock interne, 1 = pin T0CKI
  9. T0CONbits.T0SE = 0;  // Flance montant ou descendant pour la T0CKI
  10. T0CONbits.PSA = 0;  // 0 = prescalaire, 1 = bypass
  11. T0CONbits.T0PS0 = 0; // Préscalaire, pas utilisé si 1 en dessus
  12. T0CONbits.T0PS1 = 0;
  13. T0CONbits.T0PS2 = 0;
  14. // configure PORTC CCP1
  15. DDRCbits.RC2=1; // RC2/CCP1 en entree
  16. // configure le TIMER1
  17. T1CONbits.RD16=0;  // TMR1 mode simple (pas de RW)
  18. T1CONbits.TMR1CS=0;  // compte les impulsions sur internal clock
  19. T1CONbits.T1CKPS1=0; // prédiviseur =1 periode sortie = 64uS
  20. T1CONbits.T1CKPS0=1;
  21. T1CONbits.T1SYNC=1;  // pas de synchronisation sur sleep/Reset  
  22. T1CONbits.TMR1ON=1;  // TMR1 Activé+
  23. // configure le mode capture sur le TIMER1 avec IT sur CCP1  
  24. T3CONbits.T3CCP2=0;  // mode comparaison entre TMR1 et CCPR1
  25. CCP1CON=0x05;   // 0x04 capture mode sur fronts descendant CCP1CON=0x05; // capture mode sur fronts montant
  26. PIE1bits.CCP1IE=1;  // active IT sur mode capture/comparaison CCP1
  27. RCONbits.IPEN=1;  // Interruption prioritaires activées
  28. INTCONbits.GIE=1;  // Toutes les IT démasquées autorisées
  29. TMR1H=0;
  30. TMR1L=0;
  31. PORTAbits.RA0 = 0;  // Init de la sortie


 
La config du Capture Compare mode, je me suis inspiré d'un bout de code du net...
 
Merci d'avance de votre aide :P
 
edit :
 
Voici le screenshot de l'oscillo avec signal 1 en haut : trame envoyée, signal 2 en bas, trame reçue par le pic
 
http://www.kirikoo.net/images/tn/tn_forum_7Swisscore-1-20121110-111430.png


Message édité par swissforever le 10-11-2012 à 11:09:58

---------------
Swisscore
mood
Publicité
Posté le 10-11-2012 à 11:05:38  profilanswer
 

n°2163471
swissforev​er
i7 Inside
Posté le 11-11-2012 à 18:52:13  profilanswer
 

Personne ne programme des pics?


---------------
Swisscore
n°2165716
ABMben
Posté le 28-11-2012 à 00:00:26  profilanswer
 

Bonjour,
 
pour moi ce signale n'est pas inversé il est juste déphasé, si tu translate le signale du bas vers la droite tu va trouver celui du haut  mais en juste l'etat qui precede le start bit qui differt,
et ca peut etre du al'electronique de ta carte c'est peut etre la pine du reception du pic est forcée a l'etat haut.
jette comme sur la schematique de carte avant tt.
 
Cordialement,

n°2169007
swissforev​er
i7 Inside
Posté le 22-12-2012 à 15:27:05  profilanswer
 

Ah oui maintenant que tu le dis, je vais explorer cette piste!
 
Merci de ton aide


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [C] PIC18F2580 problème sortie inversée

 

Sujets relatifs
[C] Fonction gotoligcolProblème VBA/VBS
probleme avec fgets()Probléme syntaxe macro excel 4
Problème RobotProg[C/Reseau] Protocole FTP/ mode passif/ LIST&GET
Probleme avec une ligne,dont je ne comprend pasProblème affichage tableau de taille variable
Problème Connection MySQL sur mon VPSprobleme lecture swf flash cs6
Plus de sujets relatifs à : [C] PIC18F2580 problème sortie inversée


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR