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

Protocole RS232 PIC16LF1823



  1. #1
    Pierreafeu1305

    Protocole RS232 PIC16LF1823


    ------

    Bonjour tout le monde, je travaille actuellement sur un projet utilisant un PIC16LF1823 et j'ai besoin d'utiliser le protocole RS232

    Le signal devra ensuite être modulé, pour l'instant il s'agit uniquement de tests pour voir si le protocole marche bien, je ferai la modulation plus tard.


    Je pensais utiliser le pin 5 pour la transmission d'informations


    J'ai lu la datasheet pour voir comment utiliser le module EUSART du PIC.


    Le programme compile sans erreurs, normalement je pense qu'on peut voir le signal sur un oscillo par exemple pour voir que les infos transmises sont bonnes mais je ne vois rien dessus...


    J'ai suivi le set-up expliqué dans la datasheet, je vous joint mon code, savoir si il manque des registres à initialiser ou des erreurs...

    J'ai essayé de trouver des exemples mais pas grand chose d'exploitable, je sais que vous allez me dire qu'il doit y avoir tout sur internet



    #include <htc.h>

    #define _XTAL_FREQ 4000000



    void main(void)

    {

    OSCCON=0b11101000; // set OSC freq to 4000kHz using OSCCON register
    TRISC4=0;
    TRISC3=0;
    TXCKSEL=0;

    SPBRGL=0xCF;

    BRGH=0;
    BRG16=0;

    TX9=0;

    SYNC=0;
    SPEN=0;
    TXEN=1;

    while(1)
    {
    TXREG=0b10001000;
    __delay_ms(1000);

    if(TXREG==0b10001000)
    {
    RC3=1;
    __delay_ms(100);
    RC3=0;
    __delay_ms(100);
    }

    }

    }



    au niveau configuration, je suis parti sur 8bits, asynchrone, 300bauds


    je voulais savoir par exemple si on est obligés de mettre un récepteur pour visualiser quelque chose.



    J'espère que vous pourrez me dépanner et que je passe pas trop pour un boulet, je n'avais jamais programmé un pic, ni utiliser le I2C, j'ai pas mal galéré avec l'I2C mais là ça marche


    Merci d'avance et si vous désirez des précisions n'hésitez pas

    -----

  2. #2
    Pierreafeu1305

    Re : Protocole RS232 PIC16LF1823

    bon pas de réponse... :'(

    j'ai néanmoins trouvé pourquoi ça fonctionnait pas, comme un con j'avais mis le bit SPEN à 0 alors que j'avais marqué sur ma feuille qu'il fallait que je le mette à 1 donc maintenant c'est bon ça marche ^^


    juste un petit soucis concernant les delay :
    dans mon while(1) j'ai mis :

    TXREG=0b01000000;
    __delay_ms(100);
    TXREG=0b00010000;
    __delay_ms(100);


    mais quand je regarde à l'oscillo le délai ne dure que 70ms à peu près et si je change la durée du delay, ça me bouffe toujours 30ms, et bizarrement le temps de transmission de la data est de 30ms...

    c'est pas super important dans l'application que je veux faire mais j'aimerais savoir d'où vient ce décalage...


    merci

  3. #3
    vincent66

    Re : Protocole RS232 PIC16LF1823

    Bonjour
    La gestion des timings est le point faible de bien des compilateurs..!
    Si il y a un conflit de resources matérielles ça peut vite virer au nimportwalac...
    Vincent
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

Discussions similaires

  1. protocole RS232
    Par aiguth dans le forum Électronique
    Réponses: 3
    Dernier message: 25/11/2010, 16h59
  2. protocole normal vs protocole prioritaire
    Par invite9865321 dans le forum Électronique
    Réponses: 0
    Dernier message: 13/01/2010, 12h31
  3. protocole pic 16f877a et pc (liaison rs232)
    Par mekki31 dans le forum Électronique
    Réponses: 1
    Dernier message: 19/03/2009, 08h20
  4. Le protocole CAN....
    Par Nithael dans le forum Électronique
    Réponses: 15
    Dernier message: 04/01/2009, 04h43
  5. protocole
    Par t.m dans le forum TPE / TIPE et autres travaux
    Réponses: 1
    Dernier message: 10/04/2006, 11h28
Découvrez nos comparatifs produits sur l'informatique et les technologies.