; ; By Tomastell OScilador interno on WDT on ; para 16f84 ******programado como oscilador interno****** ; no tiene cristal de 4.00 Mhz para simplificar el circuito ;******************************************************************************************* LIST P=16f84a;f=inhx8m w equ 0 f equ 1 same equ 1 z equ 2 zero equ 2 c equ 0 carry equ 0 count1 equ 0C count2 equ 0D portb equ 06 porta equ 05 status equ 03 time equ .30 org 0 init movlw 0 tris portb movwf portb movlw B'00000001' tris porta bcf porta,0 start goto pulsa ;* ESCRIBE EL MENSAGE AQUI * fila1 call lh call lo call ll call la call space1 call lm call lu call ln call ld call lo goto pulsa ;* fin del mensage * pulsa bcf status,1 movf porta,w movwf status btfsc status,0 goto pulsa goto fila1 ;*RUTINA PARA SACAR LOS CARACTERES A LOS LED'S EN EL PUERTO B (PORTB)* la call wait movlw B'01111111' movwf portb ;01111111 call wait ;10001000 movlw B'10001000' ;10001000 movwf portb ;10001000 call wait ;10001000 movlw B'10001000' ;10001000 movwf portb ;01111111 call wait ;00000000 movlw B'10001000' movwf portb call wait movlw B'10001000' movwf portb call wait movlw B'10001000' movwf portb call wait movlw B'01111111' movwf portb call wait movlw B'00000000' movwf portb call space1 return ld call wait movlw B'11111111' movwf portb ;11111111 call wait ;10000001 movlw B'10000001' ;10000001 movwf portb ;10000001 call wait ;10000001 movlw B'10000001' ;10000001 movwf portb ;01111110 call wait ;00000000 movlw B'10000001' movwf portb call wait movlw B'10000001' movwf portb call wait movlw B'10000001' movwf portb call wait movlw B'01111110' movwf portb call wait movlw B'00000000' movwf portb call space1 return ll call wait movlw B'10000001' movwf portb ;10000001 call wait ;11111111 movlw B'11111111' ;10000001 movwf portb ;00000001 call wait ;00000001 movlw B'10000001' ;00000001 movwf portb ;00000001 call wait ;00000000 movlw B'00000001' movwf portb call wait movlw B'00000001' movwf portb call wait movlw B'00000001' movwf portb call wait movlw B'00000001' movwf portb call wait movlw B'00000000' movwf portb call space1 return lm call wait movlw B'11111111' movwf portb ;11111111 call wait ;01000000 movlw B'01000000' ;00100000 movwf portb ;00010000 call wait ;00100000 movlw B'00010000' ;01000000 movwf portb ;11111111 call wait ;00000000 movlw B'00010000' movwf portb call wait movlw B'00100000' movwf portb call wait movlw B'01000000' movwf portb call wait movlw B'11111111' movwf portb call wait movlw B'00000000' movwf portb call space1 return ln call wait movlw B'11111111' movwf portb ;11111111 call wait ;01000000 movlw B'01000000' ;00100000 movwf portb ;00010000 call wait ;00001000 movlw B'00100000' ;00000100 movwf portb ;11111111 call wait ;00000000 movlw B'00010000' movwf portb call wait movlw B'00001000' movwf portb call wait movlw B'00000100' movwf portb call wait movlw B'11111111' movwf portb call wait movlw B'00000000' movwf portb call space1 return lo call wait movlw B'01111110' movwf portb ;01111110 call wait ;10000001 movlw B'10000001' ;10000001 movwf portb ;10000001 call wait ;10000001 movlw B'10000001' ;10000001 movwf portb ;01111110 call wait ;00000000 movlw B'10000001' movwf portb call wait movlw B'10000001' movwf portb call wait movlw B'10000001' movwf portb call wait movlw B'01111110' movwf portb call wait movlw B'00000000' movwf portb call space1 return lu call wait movlw B'11111110' movwf portb ;11111110 call wait ;00000001 movlw B'00000001' ;00000001 movwf portb ;00000001 call wait ;00000001 movlw B'00000001' ;00000001 movwf portb ;11111110 call wait ;00000000 movlw B'00000001' movwf portb call wait movlw B'00000001' movwf portb call wait movlw B'00000001' movwf portb call wait movlw B'11111110' movwf portb call wait movlw B'00000000' movwf portb call space1 return space1 movlw B'00000000' call wait movlw B'00000000' movwf portb movlw B'00000000' return wait movlw time movwf count1 d1 movlw time movwf count2 d2 decfsz count2,same goto d2 decfsz count1 goto d1 retlw 00 END