;------------------------------------------------------------
; Código assembler 
; Proyecto: Rutinas para Nextion
; Autor: Esteban Mariano Folcher Cividini
; Colaboración; KILLERJC de todopic
;		Pinonillo 16 de todopic
;	
; Fecha: 27/08/2018
; PIC: 16F877A
; Velocidad de reloj: 4 Mhz
;------------------------------------------------------------
	list		p=16f877A,f=inhx32
	#include	<p16f877A.inc>	 
	#define	Fosc 4000000
	__CONFIG _HS_OSC & _WDTE_OFF & _PWRTE_ON & _BOREN_ON & _LVP_ON & _CPD_OFF & _WRT_OFF & _CP_OFF
    
STAR		    ORG		0x00	    ;DIRECCION DE VECTOR RESET
		    GOTO	COMIENZO
		    ORG		0x05
    INCLUDE	<Delay.inc>
    INCLUDE	<MACROS_NEX.inc>
Mensajes_Nextion    MOVWF   PCL
MENSAJE_NEX_1	    DT	"PROBANDO LOS MACROS",0x00
MENSAJE_NEX_2	    DT	"MENSAJE 2",0x00
MENSAJE_NEX_3	    DT	"MENSAJE 3",0x00
MENSAJE_NEX_4	    DT	"MENSAJE 4",0x00    

COMIENZO	CALL	Configura_USART  
PRINCIPAL
;--------------------TEXTO------------------------------------------------------	    
	;SINTAXIS: NUMERO DE OBJETO, MESAJE USUARIO
		;Nex_Envia_Texto		d'0',MENSAJE_NEX_1
		;Nex_Envia_Texto		d'1',MENSAJE_NEX_2
		;Nex_Envia_Texto		d'2',MENSAJE_NEX_3
		;Nex_Envia_Texto		d'3',MENSAJE_NEX_4
		
	;SINTAXIS: NUMERO DE OBJETO, ESPACIO NULO
		;Nex_Borra_Texto		d'3',d'0'
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (EN ESTE CASO EL COLOR)
		;Nex_Color_Fondo_Texto		d'0',d'60000'
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (EN ESTE CASO EL COLOR)
		;Nex_Color_Fuente_Texto		d'1',d'50000'
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=DERECHA,1=CENTRO,2=IZQUIERDA)
		;Nex_Centrado_X_Texto		d'2',d'0' 
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=ARIBA,1=CENTRO,2=ABAJO)
		;Nex_Centrado_Y_Texto		d'2',d'2'
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=OFF,1=ON)
		;Nex_Password_Texto		d'3',d'1'
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=OFF,1=ON)
	; este macro no sé cuál sería el nombre más apropiado.
	; su función es, cuando el mensaje es más largo que el ancho del
	; recuadro, si está a cero el mensaje sigue viéndose en una línea
	; si está a uno el mensa se escribe hasta el límite derecho y continua 
	; en la línea de abajo
	; se acepta sugerencias

		;Nex_Linea_Texto		d'3',d'1'
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (NUMERO DE FUENTE. DEPENDERA DE LAS FUENTES CARGADAS EN NEXTION)
		;Nex_Fuente_Texto		d'2',d'1'
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (NUMERO DE IMAGEN DEPENDE LA LAS QUE TENGAMOS CARGADAS EN NEXTION)
		;Nex_Imagen_Texto		d'2',d'0' ;PARA UTILISAR ESTA FUNCION TENEMOS QUE TENER ATIVADO 
							  ;sta imagen (por defecto aparese sta solid color
		
		
;-------------------------TEXTO SCROLLING---------------------------------------
		
	;SINTAXIS: NUMERO DE OBJETO, MESAJE USUARIO
		;Nex_Envia_S_Texto		d'0',MENSAJE_NEX_1
		;Delay   1000 Milis
	
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (NUMERO DE FUENTE. DEPENDERA DE LAS FUENTES CARGADAS EN NEXTION)	
		;Nex_Fuente_S_Texto		d'0',d'1'
		;Delay   1000 Milis
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (EN ESTE CASO EL COLOR)
		;Nex_Color_Fondo_S_Texto	d'0',d'60000'
		;Delay   1000 Milis  
	
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (EN ESTE CASO EL COLOR)
		;Nex_Color_Fuente_S_Texto	d'1',d'50000'	
		;Delay   1000 Milis
	;;SINTAXIS: NUMERO DE OBJETO, ESPACIO NULO
		;Nex_Borra_S_Texto		d'1',d'0'	
		;Delay   1000 Milis
	
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=DERECHA,1=CENTRO,2=IZQUIERDA)
		;Nex_Centrado_X_S_Texto		d'1',d'0' 
		;Delay   1000 Milis
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=ARIBA,1=CENTRO,2=ABAJO)
		;Nex_Centrado_Y_S_Texto		d'1',d'2'
		;Delay   1000 Milis
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=OFF,1=ON)	
		;Nex_Linea_S_Texto		d'0',d'1'
		;Delay   1000 Milis
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (0=A LA IZQ. 1=A LA DER. 2=ABJO 3=ARIBA	
		;Nex_Direccion_Texto		d'1',d'0'
		;Delay   1000 Milis
		
	;SINTAXIS; NUMERO DE OBJETO, VARIABLE DECIMAL (MIN=80 MAX=65534)
		;Nex_Tiempo_S_Texto		d'0',d'80'
		;Delay   1000 Milis
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (MIN=2 MAX=50)	
		;Nex_Distancia_S_Texto		d'0',d'50'
		;Delay   1000 Milis
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (SCROLLING OFF=0 	SCROLLING ON=1)
		;Nex_ScrolLing_S_Texto		d'0',d'0'
		;Delay   1000 Milis
		
	;SINTAXIS: NUMERO DE OBJETO, VARIABLE DECIMAL (NUMERO DE IMAGEN DEPENDE LA LAS QUE TENGAMOS CARGADAS EN NEXTION)
		;Nex_Imagen_S_Texto		d'0',d'0' ;PARA UTILISAR ESTA FUNCION TENEMOS QUE TENER ATIVADO 
							  ;sta imagen (POR DEFECTO ESTA (sta solid color)
		
		
		
		GOTO	PRINCIPAL
		INCLUDE	NEXTION_SUB_5.INC
		END




			





		    
		    
		    
		    
		    
		