如何修复Alarm子例程以在Assembly中工作以在PIC微控制器中工作

时间:2019-03-27 17:27:18

标签: assembly pic microchip

我有一个要完成的项目,几乎完成了,只是如果输入了错误的密码,警报不会嗡嗡作响。这是我的警报子程序。

这将用于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 :(得分:0)

子例程BEEP是一个无限循环,永远不会到达RETURN语句。

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