;-------------------------------------------------------
;
;	        =================================  ====
;	        =         ======  ===  =   = ==== =    =
;	        =  =====       = =   = = = = =    ===  
;               =====  =       = ===== =   = ===     ===
;                      =  =    = =   = =   = =    =    =     
;=======================   ====  =   = =   = ====  ====
;
; Project: 	
; Program:	
; Version:	
;-------------------------------------------------------
list	p=16f628, R=DEC
;-------------------------------------------------------
;	DEKLARACE PROMENNYCH
;-------------------------------------------------------
tmr	equ	0x01
opt	equ	0x81
status	equ	0x03
porta	equ	0x05
trisa	equ	0x85
portb	equ	0x06
trisb	equ	0x86
int	equ	0x0B
cmcon	equ	0x1f
z1	equ	0x20
z2	equ	0x21
pcon	equ	0x8E
pir1	equ	0x0C
rcsta	equ	0x18
txreg	equ	0x19
rcreg	equ	0x1A
pie1	equ	0x8C
txsta	equ	0x98
spbrg	equ	0x99
;-------------------------------------------------------
;	NASTAVENI PORTU a TIMERU
;-------------------------------------------------------
INIT:
	bsf	status,5	;banka registrů 1
	;-----------------------------------------------
	clrf	trisa		;nastavení port A
	;-----------------------------------------------
	movlw	11111111b	;nastavení port B
	movwf	trisb		
	;-----------------------------------------------
	movlw	12D		;nastaveni BRG
	movwf	spbrg
	;-----------------------------------------------
	movlw	00100110b	;nastaveni TX STA
	movwf	txsta	
	;-----------------------------------------------
	bcf	status,5	;banka registrů 0
	;-----------------------------------------------
	movlw	0x07		;vypnutí komparátorů
	movwf	cmcon
	;-----------------------------------------------
	movlw	10000000b	;povolení příjmu
	movwf	rcsta
	;-----------------------------------------------
	bcf	pir1,5
	;-----------------------------------------------
	;NASTAVENO:
	;
	;	Baud Rate:	19200
	;	Parita:		Žádná
	;	Délka slova:	8 bitů
;-------------------------------------------------------
;	HLAVNI PROGRAM
;-------------------------------------------------------
start:	bcf	porta,2
	bsf	rcsta,4		;Spuštění příjmu
	;-----------------------------------------------
cekej:	btfss	pir1,5		;kontrola příznaku přijetí zprávy
	goto 	cekej		;zpět na kontrolu
	;-----------------------------------------------
	bcf	rcsta,4		;ukončení příjmu
	bcf	pir1,5		;nulovaní příznaku přijetí zprávy
	;-----------------------------------------------
	movf	rcreg,0		;kontrola, zda je přijatá zpráva
	sublw	65D		;65 desítkových
	btfss	status,2	;pokud ano, skok na blikani
	goto	INIT		;pokud ne, zpet na uplny zacatek
	;-----------------------------------------------
	bsf 	porta,2		;blikani LEDkou
	call	wait
	call	wait
	call	wait
	call	wait
	bcf	porta,2
	call	wait
	call	wait
	call	wait
	call	wait
	bsf 	porta,2
	call	wait
	call	wait
	call	wait
	call	wait
	bcf	porta,2
	call	wait
	call	wait
	call	wait
	call	wait
	bsf 	porta,2
	call	wait
	call	wait
	call	wait
	call	wait
	bcf	porta,2
	call	wait
	call	wait
	call	wait
	call	wait
	bsf 	porta,2
	call	wait
	call	wait
	call	wait
	call	wait
	bcf	porta,2
	;-----------------------------------------------
	goto	INIT		;zpet na uplny zacatek
;-------------------------------------------------------
;	PODPROGRAM WAIT
;-------------------------------------------------------
wait:	movlw	255D
	movwf	z1
zn1:	movlw	255D
	movwf	z2
zn2:	decfsz	z2,1
	goto	zn2
	decfsz	z1,1
	goto	zn1
	return	
;-------------------------------------------------------
;	KONEC PROGRAMU
;-------------------------------------------------------
end
