Professional Documents
Culture Documents
Usart Sincrona
Usart Sincrona
Usart Sincrona
#include "p16f877a.inc"
; CONFIG
; __config 0xFF32
__CONFIG _FOSC_HS & _WDTE_OFF & _PWRTE_ON & _BOREN_OFF & _LVP_OFF & _CPD_OFF &
_WRT_OFF & _CP_OFF
CBLOCK 0X20
REG1
REG2
REG3
GUARDA_W
GUARDA_S
CUENTA
ENDC
ORG 00
GOTO INICIO
ORG 04
INTERRUPCION
MOVWF GUARDA_W
SWAPF STATUS,W
MOVWF GUARDA_S
GOTO FIN_I
FIN_I
SWAPF GUARDA_S,W
MOVWF STATUS
SWAPF GUARDA_W,F
SWAPF GUARDA_W,W
RETFIE
;***********************************
INICIO
bsf STATUS,RP0
movlw b'10110010'
MOVWF TXSTA
MOVLW .31
MOVWF SPBRG ;DETERMINA VELOCIDAD DE BAUDIO
bCf STATUS,RP0
movlw b'10000000'
MOVWF RCSTA
MOVLW 'A'
MOVWF CUENTA
BCF PIR1,TXIF
MOVF CUENTA,W
MOVWF TXREG
BTFSS PIR1,TXIF
GOTO $-1
;INCF CUENTA,F
GOTO BUCLE
; MOVLW B'10100000'
; MOVWF INTCON
;*******rutina de retardo**********************
RETARDO
MOVLW .16
MOVWF REG3
RETBUCL3
MOVLW .100
MOVWF REG2
RETBUCL2
MOVLW .100
MOVWF REG1
RETBUCL
DECFSZ REG1,F
GOTO RETBUCL
DECFSZ REG2,F
GOTO RETBUCL2
DECFSZ REG3,F
GOTO RETBUCL3
RETURN
END