Codigo fuente en ASM
Codigo prinsipal.
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: RX-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 UART_READ: 70 bsf STATUS,Z 71 BANKSEL PIR1 72 btfss PIR1,RCIF 73 return 74 BANKSEL RCREG 75 movf RCREG,W 76 return 77 78 79 INICIO: 80 BANKSEL ANSELB 81 clrf ANSELB 82 BANKSEL 0 83 call CONFIG_USART_9600 84 movlw 'I' 85 call UART_WRITE 86 movlw 'N' 87 call UART_WRITE 88 movlw ':' 89 call UART_WRITE 90 91 MAIN: 92 call UART_READ 93 btfsc STATUS,Z 94 goto MAIN 95 call UART_WRITE 96 goto MAIN 97 98 goto $ 99 100 end;
Esquematico
Version CCS del mismo proyecto
Descargar las verciones ASM y CCS de este ejercicio.
https://twitter.com/Mariano56917789
No hay comentarios:
Publicar un comentario