Advertisement
electronicosembebido

Modulo EUSART PIC16F1827

Jul 29th, 2017
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;*******************************************************************************
  2. ;                                                                              *
  3. ;    Filename:  Proyecto USART                                                 *
  4. ;    Date:      29/07/2017                                                     *
  5. ;    File Version:   0.01                                                      *
  6. ;    Author:    Mariano Rocha                                                  *
  7. ;    Company:   Electronicos embebidos                                         *
  8. ;    Description: TX USART                                                     *
  9. ;                                                                              *
  10. ;*******************************************************************************
  11. LIST P=16f1827
  12. RADIX HEX
  13. include  P16f1827.inc
  14. __CONFIG _CONFIG1, _FOSC_XT & _WDTE_OFF & _PWRTE_ON & _MCLRE_OFF & _CP_OFF & _CPD_OFF & _BOREN_ON & _CLKOUTEN_OFF & _IESO_ON & _FCMEN_ON    
  15. __CONFIG _CONFIG2, _WRT_OFF & _PLLEN_OFF & _STVREN_ON & _BORV_LO & _LVP_ON
  16.    
  17.    
  18. CBLOCK 0X20
  19. Text,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15
  20. ENDC    
  21.          
  22.  
  23.     ORG        0
  24.     goto       INICIO
  25.    
  26. CONFIG_USART_9600:
  27.     BANKSEL    TXSTA
  28.     movlw      B'10100100'
  29.     movwf      TXSTA
  30.     movlw      .25
  31.     movwf      SPBRGL
  32.     clrf       SPBRGH
  33.     BANKSEL    RCSTA
  34.     movlw      B'10000000'    
  35.     movwf      RCSTA
  36.     BANKSEL    TXSTA
  37.     bsf        TXSTA,TXEN
  38.     BANKSEL    RCSTA
  39.     bsf        RCSTA,CREN
  40.     BANKSEL    PIR1
  41.     bsf        PIR1,TXIF
  42.     BANKSEL    TRISB
  43.     bcf        TRISB,2
  44.     BANKSEL    BAUDCON
  45.     movlw      B'00000000'
  46.     movwf      BAUDCON
  47.     BANKSEL    0
  48.     return
  49.  
  50. UART_WRITE:
  51.     BANKSEL   TXREG
  52.     movwf     TXREG
  53.     BANKSEL   PIR1
  54.     btfss     PIR1,TXIF
  55.     goto      $-1
  56.     return
  57.    
  58. UART_WRITE_STRING:    
  59.      movwf     FSR0
  60. UART_1:
  61.      movf      INDF0,w
  62.      btfsc     STATUS,Z
  63.      return
  64.      call      UART_WRITE
  65.      incf      FSR0,f
  66.      BANKSEL   0
  67.      goto      UART_1
  68.    
  69. INICIO:
  70.     BANKSEL   ANSELB
  71.     clrf      ANSELB    
  72.     BANKSEL   0
  73.     call      CONFIG_USART_9600
  74.    
  75. MAIN:
  76.      movlw     'P'
  77.      movwf     Text
  78.      movlw     'R'
  79.      movwf     t1
  80.      movlw     'O'
  81.      movwf     t2
  82.      movlw     'G'
  83.      movwf     t3
  84.      movlw     'R'
  85.      movwf     t4
  86.      movlw     'A'
  87.      movwf     t5
  88.      movlw     'M'
  89.      movwf     t6
  90.      movlw     'A'
  91.      movwf     t7
  92.      movlw     'N'
  93.      movwf     t8
  94.      movlw     'D'
  95.      movwf     t9
  96.      movlw     'O'
  97.      movwf     t10
  98.      movlw     'P'
  99.      movwf     t11
  100.      movlw     'I'
  101.      movwf     t12
  102.      movlw     'C'
  103.      movwf     t13
  104.      movlw     's'
  105.      movwf     t14  
  106.      movlw     0
  107.      movwf     t15
  108.      
  109.      movlw     Text
  110.      call      UART_WRITE_STRING
  111.      goto      $
  112.  
  113.      
  114. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement