;------------------------------------------------------- ; ; ================================= ==== ; = ====== === = = ==== = = ; = ===== = = = = = = = === ; ===== = = ===== = = === === ; = = = = = = = = = = ;======================= ==== = = = = ==== ==== ; ; 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