;При нажатии на кнопку-светодиод начинает мигать,если отпустить-тухнет.
LIST P=16F628A
INCLUDE P16F628A.INC
__CONFIG _INTOSC_OSC_NOCLKOUT&_WDT_OFF&_PWRTE_ON&_MCLRE_OFF&_LVP_OFF
ERRORLEVEL -302
CBLOCK 20H
J
K
ENDC
BANK0 MACRO
BCF STATUS,RP0
BCF STATUS,RP1
ENDM
BANK1 MACRO
BSF STATUS,RP0
BCF STATUS,RP1
ENDM
ORG 0
GOTO START
ORG 4
GOTO ISR
START MOVLW 7
MOVWF CMCON
BANK1
BSF TRISB,0 ;Порт Б бит 0-вход
BCF TRISA,0 ;Порт А бит 0-выход
BCF OPTION_REG,NOT_RBPU;Вкл. pullup
BANK0
MAIN BSF PORTA,0 ;Выкл.светодиод
BTFSC PORTB,0 ;Кнопка нажата?
GOTO MAIN ;Нет
BCF PORTA,0 ;Да.Вкл.светодиод
CALL DELAY ;Задержка
BSF PORTA,0
CALL DELAY
GOTO MAIN
GOTO MAIN
DELAY MOVLW .100
MOVWF J
LOOPJ MOVLW .255
MOVWF K
LOOPK DECFSZ K,F ;Отнимаем 1-цу от К и сохраняем в К
GOTO LOOPK
DECFSZ J,F
GOTO LOOPJ
RETURN
ISR
RETFIE
END
НАЗАД Assembler AVR Си AVR ДАЛЬШЕ