begin process at 2012 05 25 04:10:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

Les PIC

 > 

Flags dans le registre INTCON


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Flags dans le registre INTCON

samedi 7 mai 2005 à 13:19:53 | Flags dans le registre INTCON

tahiti_bob

Membre Club
Bonjour,

J'ai  trouvé sur cette page une excellente routine de communication RS232 entre un PIC et un PC.
[ Lien ]

Seulement, cette routine est faite pour un PIC16F84. Je souhaiterais la modifier pour un PIC16F876.
Il faut donc retoucher les lignes suivantes :

 #define TXport PORTA,0x00          ; RS232 output port, could be
 #define TXtris TRISA,0x00             ; any active push/pull port

 #define RXport PORTB,0x00         ; Needs to be an interrupt supervised
 #define RXtris TRISB,0x00             ; port! When modify, set adequate
                                                        ; flags in INTCON register.

Ici, les ports correspondants sont ra0 pour TX et rbO pour RX
Je voudrais donc y passer TX à la broche rc6 et RX pour la broche rc7
Est ce quelqu'un connait l'équivalent "flag dans le registre INTCON" pour ces broches ??

Merci d'avance de vos réponses
@++ Tahiti_bob
samedi 7 mai 2005 à 16:31:21 | Re : Flags dans le registre INTCON

tahiti_bob

Membre Club

En fait, pour faire simple, "PORTA,0x00" correspond à la broche RA0 du pic, "PORTB,0x00" correspond à RB0,...
Je cherche l'équivalent pour les broches RC6 et RC7

Merci
@++ Tahiti_bob

samedi 7 mai 2005 à 19:30:14 | Re : Flags dans le registre INTCON

phenojeff

allo   tahiti_bob ca va pas ca le 16f84 na pas de usart il faut le faire,
mais avec un 16F876 tu as un usart interne la routine est pas la meme.
il faut faire le init du usart pour commencer

;//////////////// CALCUL DE LA VITESSE DU PORT COMM //////////////////////
#define FOSC D'20000000'  ; <<< frequence du quartz[Hz], max. 20 MHz
#define BAUD D'19200'   ; <<< vitesse du port serie [bit/sec]
#define BRGVAL (FOSC/(D'16' * BAUD))-1
; Pin RC6 (TX) & RC7 (RX)
            ;initialiser le usart
            ;----------------
init_usart
   bsf STATUS,RP0 ; passer banque 1
   bsf INTCON,PEIE ; autoriser interruptions périphériques

   movlw B'00000100' ;  mode haute vitesse
   movwf TXSTA  ; dans registre de contrôle
   movlw BRGVAL  ; valeur pour baud rate generator
   movwf SPBRG  ; dans SPBRG
   bcf STATUS,RP0 ; passer banque 0
   movlw B'10000000' ; module USART en service
   movwf RCSTA  ; dans registre de contrôle

Rx_Rs232_Sans_Int
Attend_Rx
             btfss PIR1,RCIF ; on attend ce bit soit a 1 , ce qui signale une reception    
             goto Attend_Rx
             movf RCREG,W
             

Transmet_Rs232 ; ce qui as ete recu va etre envoyer
       movwf TXREG
       bsf STATUS,RP0
       bsf TXSTA,TXEN
Attend_Fin_Octet
       btfss TXSTA,TRMT
       goto Attend_Fin_Octet
       bcf STATUS,RP0
       goto RX_RS232_Sans_Int
;ca peu etre comme ca , ce que je fait j attend un octet et je le renvoi
jai pas faite de test en mplab mais je doit pas etre loin

dimanche 8 mai 2005 à 10:14:20 | Re : Flags dans le registre INTCON

tahiti_bob

Membre Club
Merci phenojeff de ta réponse.
Par contre, est ce que je suis obligé d'utiliser l'USART interne si le PIC en dispose d'un ? Je ne peux pas en "simuler" un avec le programme sur d'autres broches ?

Merci
@++ Tahiti_bob
dimanche 8 mai 2005 à 18:10:40 | Re : Flags dans le registre INTCON

phenojeff

re allo 

oui tu peu faire ca
mais ca demande un peu plus de présition dans le calcul de tes routines

#define RXport PORTC,6        
 #define TXport PORTC,7       
#define SET_RXport  TRISC,6
#define SET_TXport  TRISC,7    


a++


Cette discussion est classée dans : registre, define, flags, 0x00, intcon


Répondre à ce message

Sujets en rapport avec ce message

exercice [ par susur2002 ] afficher le contenu du registre du didact 68000 sous forme de 1 et de 0 sur l'ecran du pc en utilisant le port 3 du didact.on utilisera ce registre di Base de Registre [ par VBrifi ] bon ma question a un rapport avec l'assembleur -j'ai cracké un vieux petit programme qui demande un numéro de série pour s'enregistrer : un jne rempl Placer là "partie basse" d'un registre 32 bits dans un registre 16 bits ??? [ par Otaku ] Salut, tout est dans le titre, comment faire pour placer la partie basse (LOWWORD) d'une valeur stockée dans le registre EAX dans un registre 16 bits affichage lcd et calculatrice [ par lefrans ] bojour a tous voila mon probleme je doit tj faire cette calculatrice et je suis bloqué, je narrive pas a afficher plusieur chiffre ala suite sur mon l Petite question... [ par did2604 ] Bonsoir,Que signifie exactement la notation crochet en assembleur ? Je m'explique, par exemple : mov cl,[bx], je suppose que ce n'est pas un move ordi affichage du contenu d'un registre général [ par did2604 ] Bonsoir,Quel est le code qui permet d'afficher le contenu d'un registre général (bx par exemple). Exemple, le registre BX contient la valeur 3F8 et j' Problème d'IRQ avec un PIC18F442 [ par snoopyweb68 ] Dans le cadre d'un stage, je suis amené à établir une communication entre deux PICs (un 16F627 et un 18F442). J'ai choisi de la faire via un port de c Décaler les octets d'un registre [ par Kephuro2 ] Bonjour à tous !Je m'adresse à vous car j'ai un petit souci !Je vous explique vite fait. Donc j'ai un registre (eax) qui a pour valeur : 0000825C, j'a Pb de compilation ressource [ par AlexMAN ] BruNews, ca fait une heure ke je texte ton bat, ca me compile bien mon exe, il est fonctionnel mais ne m'affiche pas ma dialog box ! Voila le code de bits de registres [ par vecchio56 ] Salut,Je cherche le moyen le plus rapide de-connaitre le bit numero n d'un registre-mettre à b le bit numero n d'un registre(Ou si c'est possible mett


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,404 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales