Как исправить подпрограмму Alarm для работы в Assembly для работы в PIC микроконтроллере - PullRequest
1 голос
/ 27 марта 2019

У меня есть проект для завершения, который почти завершен, только сигнал тревоги не гудит, если введен неправильный пароль. Это моя подпрограмма тревоги.

Это будет использоваться для PIC16F877


HOT:
     BTFSC PORTA,7
     CALL  BEEP
     BTFSC PORTA,6
     CALL  BEEP
     BTFSC PORTA,5
     CALL  BEEP
     BTFSC PORTA,4
     CALL  BEEP
     BCF   STATUS, 2     ;Return to menu check
     CALL  GETPW
     XORLW '#'
     BTFSS STATUS, 2
     GOTO  HOT
     BCF   STATUS, 2
     RETURN

     BEEP:  
     MOVLW B'11111111' 
     MOVWF PORTC
     CLRF PORTB 
     GOTO BEEP
     RETURN

1 Ответ

0 голосов
/ 28 марта 2019

Подпрограмма BEEP представляет собой бесконечный цикл и никогда не достигнет оператора RETURN.

 BEEP:  
 MOVLW B'11111111' 
 MOVWF PORTC
 CLRF PORTB 
 GOTO BEEP        ;jump back to BEEP label -> endlessloop 
 RETURN
...