Liaison série PIC16F877A - Hyperterminal
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Liaison série PIC16F877A - Hyperterminal



  1. #1
    invite895ec072

    Liaison série PIC16F877A - Hyperterminal


    ------

    Coucou tout le monde !

    J'ai tenté une liaison série tout l'après-midi mais en vain !!

    Je vous explique :
    Je souhaite faire communiquer l'hyperterminal de windows avec mon pic16f877a (bien-sûr avec comme interface, le transceiver MAX 232).
    J'utilise le compilateur HI-TECH sous MPLAB v8.02

    Le (trés simple : p) programme que j'ai écris est sencé envoyer le nombre 1 (0x31) à l'hyperterminal (vous trouverez en bas mon code)
    J'arrive à compiler le programme et l'executer en mode débugger mais rien ne se passe lorsque je me connecte à l'hyperterminal...

    Voici mes réglages au niveau de l'hyperterminal :
    Vitesse : 9600
    Bits de données : 8
    Parité : Aucun
    Bit d'arrêt : 1
    Contrôle de flux : Aucun

    Quelqu'un aurait une suggestion ? Je suis vraiment désespérée...


    Code:
    #include<stdio.h>
    #include<stdlib.h>
    #include<pic.h>
    
    void RS232_Init(void);
    
    void main(void)
    {
    	unsigned char data;
    
    	TRISC=0b10000000 ;
    	RS232_Init();
    	data=0x31;
    	while(!TXIF)
    	TXREG=data;
    	while(!TRMT);
    
    }
    	
    	
    void RS232_Init(void)
    {
    	RCSTA=0b10010000;
    	TXSTA=0b00100110;
    	PIR1=0b00001000;
    	SPBRG = 25;
    }

    -----

  2. #2
    invite2de7076a

    Re : Liaison série PIC16F877A - Hyperterminal

    Bonsoir Morgane!
    Citation Envoyé par Morgane89 Voir le message
    J'arrive à compiler le programme et l'executer en mode débugger
    Ca marche à ce moment là?

    D'après ton prog tu ne transmet qu'une seul fois (peut être rajouter un do{ }while(1))
    Avec un oscillo ensuite tu pourra voir un peu plus ce qui se passe ou ce qui ne se passe pas!

    C'est aussi dans mes projets perso de communiquer avec un pic a un PC. Cela grace a mon easy pic! Bientôt...

  3. #3
    invite03481543

    Re : Liaison série PIC16F877A - Hyperterminal

    Bonjour,
    quelques précisions:

    Code:
    void putch(unsigned char byte) {	// envoi d'un byte
                 TXREG = byte;
    	while(!TXIF)	
                 }
    
    void main(void)
    {
    unsigned char data;
    
                 GIE = 1;
                 SPBRG = 25  // 9600bds
                 TXSTA = 0x24;
                 RCSTA = 0x90;
                 RCIE = 1;	
    	    TRISC=0b10000000 ;
    	  data=0x31;
                 putch(0x31);
                 while(1){..........}
                         	
    
    }
    Dernière modification par HULK28 ; 21/03/2009 à 08h51.

  4. #4
    invite03481543

    Re : Liaison série PIC16F877A - Hyperterminal

    On peut enrichir la fonction d'envoi avec quelques améliorations:

    Code:
    void putchar(unsigned byte)   // Emission de donnée sur le port série
    	{
    	while(!TXIF);	// si le registre d'émission est vide, on sort de la boucle 
                 continue;                	
    	TXREG=byte;	// On met le caractère byte à envoyer dans le registre TXREG
    	while(!TRMT);	// quand TRMT passe à 1 TXREG recoit la data byte à transmettre                         
    	}
    @+

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

    Re : Liaison série PIC16F877A - Hyperterminal

    Merci pour vos réponses !

    Et non, ça ne marche toujours pas !

    La boucle do while de maximilien : ça ne marche tjr pas!

    La proposition de hulk : le programme compile et fonctionne dans le mode déguger (grâce à la fonction "watch" j'observe TXREG qui prend bien la valeur "0x31") mais toujours rien quand je lance l'hyperterminal.

    A l'oscillo j'ai 5V sur la broche TX du PIC ; pareil pour la broche RX.

    A bientôt!

  7. #6
    invite03481543

    Re : Liaison série PIC16F877A - Hyperterminal

    Pouvez-vous poster le schéma de câblage?

Discussions similaires

  1. Repose liaison série µc
    Par thomasalbert1993 dans le forum Électronique
    Réponses: 3
    Dernier message: 16/07/2008, 09h42
  2. Liaison série entre un PIC18F4520 et un PC avec hyperterminal
    Par inviteadb2df5e dans le forum Électronique
    Réponses: 18
    Dernier message: 03/06/2008, 13h10
  3. Liaison Pocket PC-HyperTerminal-MicroC
    Par Padrino dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 22/04/2008, 13h54
  4. Liaison Serie
    Par invite0ff982b6 dans le forum Électronique
    Réponses: 0
    Dernier message: 03/06/2007, 09h53
  5. Multiplexeur de liaison serie ...
    Par Seb.26 dans le forum Électronique
    Réponses: 59
    Dernier message: 24/09/2006, 00h48
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...