mimogauss
Messages postés3Date d'inscriptionmardi 6 mars 2012StatutMembreDernière intervention19 mars 2012
-
6 mars 2012 à 20:06
MEZZIMARIEM
Messages postés7Date d'inscriptionmercredi 28 mars 2012StatutMembreDernière intervention21 avril 2012
-
21 avril 2012 à 11:32
s'il vous plait j'ai besoin de votre aide concernant la communication rs232 et la pic 16F84A comme vous savez cette pic n'admet pas un UART donc j'ai pas pu programmer une interface RS232 aidez moi SVP.
mimogauss
Messages postés3Date d'inscriptionmardi 6 mars 2012StatutMembreDernière intervention19 mars 2012 19 mars 2012 à 11:31
Merci monsieur; oui je veux programmer sur Mplab et je voudrais faire une recaption des donnés emises par une carter electronique pour l'afficher sur un PC via une interface RS232 mais commej'ai dit le probléme que la pic 16f84A n'admet pas un Uart donc il faut le programmer virtuellement.
;***************************************************************
;envoyer un Bytes, qui se trouve dans W
Send_RS
movwf Byte
movlw 8
movwf cycl_1
bcf PORTA, out
call Warte_s
bsf PORTA, out
call Warte_s
Send_1 rrf Byte, f
btfsc STATUS, C
bcf PORTA, out
btfss STATUS, C
bsf PORTA, out
call Warte_s
decfsz cycl_1, f
goto Send_1
bcf PORTA, out
call Warte_s
return
mimogauss
Messages postés3Date d'inscriptionmardi 6 mars 2012StatutMembreDernière intervention19 mars 2012 19 mars 2012 à 14:23
Merci baucoups Monsieur c'est trés gentil de votre part. Mais monsieur comment je peut adapter mes donnés à envoyer à ce programme ,aidez moi svp pour mieux comprendre.
A+
joko1967
Messages postés5Date d'inscriptionjeudi 20 septembre 2007StatutMembreDernière intervention19 mars 2012 19 mars 2012 à 11:12
Rebonjour,
voilà déjà un listing pour la réception:
list p=16f84
;**************************************************************
; Réception via RS-232
; input : RA3 (sans booster 232,seulement resistance 22kR en serie)
;
; XTAL : 4 MHz
;
; Le Byte recu sera transmis au port B
;
;**************************************************************
; Includefile pour le 16F84
#include
; Configuration du PIC
;max 4 MHz: Power on Timer, sans Watchdog, XT-Oscillator
cycl_1 Equ 0x20 ; compteur
cycl_2 Equ 0x21 ; compteur
rs232in Equ 0x22
Byte Equ 0x23
Temp Equ 0x24
in Equ 3 ;RS-232 in on Port RA3
;**************************************************************
; le Programme
; Port B en mode sortie
Init
bsf STATUS, RP0 ; Bank 1
movlw B'00000000' ; PortB output
movwf TRISB
bcf STATUS, RP0 ; Bank 0
clrf PORTA ;
clrf PORTB ; étindre les LEDs du port B
;Réception et transmettre au PORTB
Loop
call ser_RX ; réception RS232
movfw rs232in ;
movwf PORTB ; envoyer au PORTB LEDs)
goto Loop
;**********************************************************
;lire un Byte et envoyer vers 'byte', 'rs232in' et w
ser_RX clrf Byte ;! reset Byte
movlw 8
movwf cycl_1 ; 8 fois
btfss PORTA, in ; attendre le Startbit
goto ser_RX
call Pause ; delay 1/2 Bit
btfss PORTA, in
goto ser_RX
RX_2 call Wait ; delay 1 Bit
btfsc PORTA, in ;
bcf STATUS, C ; high -> 0
btfss PORTA, in ;
bsf STATUS, C ; low -> 1
;
rrf Byte, f ;
decfsz cycl_1, f ;
goto RX_2 ; 8 fois
call Wait ; delay 1 bit
btfsc PORTA, in ; Stop-Bit 1
goto ser_RX ; si pas de StopBit 1