


;---------------------------------FUTÓFÉNYPROGRAM PIC16F84-RE-------------------------------------

;---------------------------------XT OSZCILLÁTOR; WDT;CP KIKAPCS----------------------------------

;--------------------------------4DB REGISZTER: TIME1-TIME4---------------------------------------

;--------------------------------FORGATÁSSAL VAN MEGOLDVA A FUTÁS---------------------------------

;--------------------------------4DB KÉTSZINŰ LED PORTB-RE KÖTVE----------------------------------

;--------------------------------PORTA NINCS HASZNÁLVA--------------------------------------------

;--------------------------------MEGSZAKÍTÁS NINCS ENGEDÉLYEZVE-----------------------------------

;--------------------------------A PROGRAM FIGYELI A CARRYT--------------------------------------

;--------------------------------VÁRAKOZÁSI CIKLUS: DELAY---------------------------------------



	LIST P=16F84				;PIC TIPUS MEGHATÁROZÁSA
	#INCLUDE "P16F84.INC"			;INCLUDE FILE (ELÉRÉSI ÚTTAL)
	__CONFIG _XT_OSC&_CP_OFF&_WDT_OFF	;KONFIGURÁCIÓS BITEK BEÁLLÍTÁSA

	CBLOCK 0X0C				;SAJÁT REGISZTEREK DEKLARÁLÁSA
	TIME1
	TIME2
	TIME3
	TIME4
	ENDC					;REGISZTERBLOCK VÉGE

	ORG	0				;KEZDŐCÍM
	GOTO	START
	ORG	4				;MEGSZAKÍTÁSI VEKTOR
	RETFIE					;NEM KÍVÁNT MEGSZAKÍTÁS ESETÉN VISSZATÉR


START	BSF	STATUS,RP0			;BANK1

	MOVLW	B'00011111'	
	MOVWF	TRISA				;A-PORT IRÁNYÁNAK BEÁLLÍTÁSA

	MOVLW	B'00000000'	
	MOVWF	TRISB				;B-PORT IRÁNYÁNAK BEÁLLÍTÁSA

	BCF	STATUS,RP0			;BANK0
;___________________________________________________________________________

	CLRF	PORTB				;PORTB TÖRLÉSE 
	MOVLW	B'10000000'
	MOVWF	PORTB				;KIMENETRE: 1	
	
	CALL	DELAY				;VÁRAKOZÁS


MAIN	MOVLW	.3
	MOVWF	TIME3				;TIME3;TIME4-BE 3 BETÖLTÉSE
	MOVWF	TIME4
	
FORG	BCF	STATUS,C			;CARRY TÖRLÉSE

	RRF	PORTB				;KÉTSZERES FORGATÁS A BITEKEN JOBBRA
	RRF	PORTB

	CALL	DELAY				;VÁRAKOZÁS

	DECFSZ	TIME3				;TIME 3 CSÖKKENTÉSE UGRÁS FORG1-RE, HA 0
	GOTO	FORG
		
FORG1	BCF	STATUS,C			;CARRY TÖRLÉSE

	RLF	PORTB				;KÉTSZERES FORGATÁS A BITEKEN BALRA
	RLF	PORTB

	CALL	DELAY				;VÁRAKOZÁS

	DECFSZ	TIME4				;TIME4 CSÖKKENTÉSE, HA 0 IRÁNY: MAIN
	GOTO	FORG1
	GOTO	MAIN
;____________________________________________________________________________	

DELAY						;VÁRAKOZÁSI CIKLUS
;	RETURN					;TESZTELÉSHEZ RÖVIDÍTETT RUTIN
	MOVLW .255
	MOVLW TIME2
DELAY2	MOVLW .255
	MOVWF TIME1				;TIME1;TIME2 FELTÖLTÉSE FF-RE
DELAY1	NOP
	NOP
	NOP					;3-SZOR SEMMI
	DECFSZ	TIME1				;TIME1 CSÖKKENTÉSE, HA 0 TIME2 CSÖKKENTÉSE
	GOTO	DELAY1
	DECFSZ	TIME2				;HA TIME2 0: VISSZATÉRÉS SZUBRUTINBÓL	
	GOTO	DELAY2	
	RETURN
;____________________________________________________________________________	

	END					;PROGRAM VÉGE
