Advertisement
Guest User

Untitled

a guest
Nov 14th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #INCLUDE     <P16F887.INC>                
  2. __CONFIG    _CONFIG1,_INTOSCIO&_WDT_OFF&_PWRTE_ON&_MCLRE_ON&_CP_OFF&_DEBUG_OFF&_LVP_OFF                
  3. __CONFIG    _CONFIG2,_WRT_OFF
  4.  
  5.  
  6.  
  7.  
  8.         BSF     STATUS,5  ; RP1=0 E RP0=1 MUDA PARA BANCO 1 PARA ACESSAR TRIS
  9.         MOVLW   B'00000000'
  10.         MOVWF   TRISA
  11.         MOVLW   B'10000000'
  12.         MOVWF   TRISB  
  13.         MOVLW   B'00000000'
  14.         MOVWF   TRISC  
  15.         MOVLW   B'00001111'
  16.         MOVWF   TRISD
  17.  
  18.    
  19.         BSF     STATUS,6 ; RP1=1 E RP0=1 MUDA PARA BANCO 1 PARA ACESSAR ANSEL  E ANSELH
  20.         MOVLW   0X00
  21.         MOVWF   ANSEL
  22.         MOVWF   ANSELH
  23.         MOVLW   B'01000101'
  24.         MOVWF   OSCCON
  25.  
  26.         BCF     STATUS,5; RP1=0 E RP0=0 MUDA PARA BANCO 0 PARA INICIAR PROGRAMAÇÃO
  27.         BCF     STATUS,6
  28.        
  29.         CLRF    PORTA
  30.         CLRF    PORTC
  31.         CLRF    PORTD
  32.         CLRF    PORTB
  33.  
  34.  
  35. INICIO
  36.  
  37.     MOVLW .255
  38.     MOVWF 0X20
  39.     MOVWF 0X21
  40.     MOVLW .5
  41.     MOVWF 0X22
  42.     MOVWF 0X23
  43.     ;MOVLW .1
  44.     ;MOVWF 0X26
  45.    
  46.     CALL TEMPO
  47.     BSF PORTB,1
  48.  
  49. VERIFICA_SENSOR
  50.  
  51. ;BCF PORTB,1
  52. ;BSF PORTB,0
  53. GOTO BT2
  54.  
  55. BT2
  56.     COLUNA1_BT2
  57.     MOVLW   B'11101111' ;NV1 COLUNA 147*
  58.     MOVWF   PORTD
  59.     BTFSS   PORTD,0
  60.     GOTO ALARME
  61.     BTFSS   PORTD,1
  62.     GOTO ALARME
  63.     BTFSS   PORTD,2
  64.     GOTO ALARME
  65.    
  66.     COLUNA2_BT2
  67.     MOVLW   B'11011111' ;NV1 COLUNA 2580
  68.     MOVWF   PORTD
  69.     BTFSS   PORTD,0
  70.     GOTO BT2_TRAVA
  71.     BTFSS   PORTD,1
  72.     GOTO ALARME
  73.     BTFSS   PORTD,2
  74.     GOTO ALARME
  75.    
  76.     COLUNA3_BT2
  77.     MOVLW   B'10111111' ;NV1 COLUNA 369#
  78.     MOVWF   PORTD
  79.     BTFSS   PORTD,0
  80.     GOTO ALARME
  81.     BTFSS   PORTD,1
  82.     GOTO ALARME
  83.     BTFSS   PORTD,2
  84.     GOTO ALARME
  85.     CALL TIMER
  86.     GOTO BT2
  87.  
  88.         BT2_TRAVA
  89.             BTFSC PORTD,0
  90.             GOTO BT4
  91.             GOTO BT2_TRAVA
  92.  
  93. ;   BT2_TRAVA
  94. ;       BTFSC PORTD,2
  95. ;       GOTO BT2_TRAVA
  96. ;       BTFSS PORTD,2
  97. ;       GOTO BT2_TRAVA
  98. ;       GOTO BT4
  99.  
  100.     ;BT2_TRAVA
  101.     ;CALL TEMPO
  102.     ;BSF PORTB,1
  103.     ;CALL TEMPO
  104.     ;DECFSZ 0X26
  105.     ;GOTO BT2_TRAVA
  106.     ;GOTO BT4
  107.  
  108.  
  109. BT4
  110.     COLUNA1_BT4
  111.     MOVLW   B'11101111' ;NV1 COLUNA 147*
  112.     MOVWF   PORTD
  113.     BTFSS   PORTD,0
  114.     GOTO ALARME
  115.     BTFSS   PORTD,1
  116.     GOTO BT4_TRAVA
  117.     BTFSS   PORTD,2
  118.     GOTO ALARME
  119.    
  120.     COLUNA2_BT4
  121.     MOVLW   B'11011111' ;NV1 COLUNA 2580
  122.     MOVWF   PORTD
  123.     BTFSS   PORTD,0
  124.     GOTO ALARME
  125.     BTFSS   PORTD,1
  126.     GOTO ALARME
  127.     BTFSS   PORTD,2
  128.     GOTO ALARME
  129.    
  130.     COLUNA3_BT4
  131.     MOVLW   B'10111111' ;NV1 COLUNA 369#
  132.     MOVWF   PORTD
  133.     BTFSS   PORTD,0
  134.     GOTO ALARME
  135.     BTFSS   PORTD,1
  136.     GOTO ALARME
  137.     BTFSS   PORTD,2
  138.     GOTO ALARME
  139.     CALL TIMER
  140.     GOTO BT4
  141.  
  142.     BT4_TRAVA
  143.         BTFSC PORTD,1
  144.         GOTO BT3
  145.         GOTO BT4_TRAVA
  146.  
  147. BT3
  148.     COLUNA1_BT3
  149.     MOVLW   B'11101111' ;NV1 COLUNA 147*
  150.     MOVWF   PORTD
  151.     BTFSS   PORTD,0
  152.     GOTO ALARME
  153.     BTFSS   PORTD,1
  154.     GOTO ALARME
  155.     BTFSS   PORTD,2
  156.     GOTO ALARME
  157.    
  158.     COLUNA2_BT3
  159.     MOVLW   B'11011111' ;NV1 COLUNA 2580
  160.     MOVWF   PORTD
  161.     BTFSS   PORTD,0
  162.     GOTO ALARME
  163.     BTFSS   PORTD,1
  164.     GOTO ALARME
  165.     BTFSS   PORTD,2
  166.     GOTO ALARME
  167.    
  168.     COLUNA3_BT3
  169.     MOVLW   B'10111111' ;NV1 COLUNA 369#
  170.     MOVWF   PORTD
  171.     BTFSS   PORTD,0
  172.     GOTO BT3_TRAVA
  173.     BTFSS   PORTD,1
  174.     GOTO ALARME
  175.     BTFSS   PORTD,2
  176.     GOTO ALARME
  177.     CALL TIMER
  178.     GOTO BT4
  179.  
  180.     BT3_TRAVA
  181.         BTFSC PORTD,0
  182.         GOTO BT1
  183.         GOTO BT3_TRAVA 
  184.  
  185. BT1
  186.     COLUNA1_BT1
  187.     MOVLW   B'11101111' ;NV1 COLUNA 147*
  188.     MOVWF   PORTD
  189.     BTFSS   PORTD,0
  190.     GOTO BT1_TRAVA
  191.     BTFSS   PORTD,1
  192.     GOTO ALARME
  193.     BTFSS   PORTD,2
  194.     GOTO ALARME
  195.    
  196.     COLUNA2_BT1
  197.     MOVLW   B'11011111' ;NV1 COLUNA 2580
  198.     MOVWF   PORTD
  199.     BTFSS   PORTD,0
  200.     GOTO ALARME
  201.     BTFSS   PORTD,1
  202.     GOTO ALARME
  203.     BTFSS   PORTD,2
  204.     GOTO ALARME
  205.    
  206.     COLUNA3_BT1
  207.     MOVLW   B'10111111' ;NV1 COLUNA 369#
  208.     MOVWF   PORTD
  209.     BTFSS   PORTD,0
  210.     GOTO ALARME
  211.     BTFSS   PORTD,1
  212.     GOTO ALARME
  213.     BTFSS   PORTD,2
  214.     GOTO ALARME
  215.     CALL TIMER
  216.     GOTO BT4
  217.  
  218.     BT1_TRAVA
  219.         BTFSC PORTD,0
  220.         GOTO SENHA_CORRETA
  221.         GOTO BT1_TRAVA 
  222.  
  223. SENHA_CORRETA
  224. BCF PORTB,6
  225. BCF PORTB,0
  226. BSF PORTB,1
  227. CALL TEMPO
  228. BCF PORTB,1
  229. CALL TEMPO
  230. DECFSZ 0X23
  231. GOTO SENHA_CORRETA
  232. GOTO FIM
  233.  
  234. ALARME
  235. BSF PORTB,6
  236. CALL TEMPO
  237. BCF PORTB,0
  238. CALL TEMPO
  239. BSF PORTB,1
  240. MOVLW .2
  241. MOVWF 0X27
  242. DECFSZ 0X27
  243. GOTO ALARME
  244. GOTO FIM
  245.  
  246. TIMER
  247. DECFSZ 0X20
  248. RETURN
  249. DECFSZ 0X21
  250. RETURN
  251. DECFSZ 0X22
  252. RETURN
  253. GOTO ALARME
  254.  
  255. TEMPO
  256. MOVLW .200
  257. MOVWF 0X24
  258. MOVWF 0X25
  259.     LOOP
  260.     DECFSZ 0X24
  261.     GOTO LOOP
  262.     MOVWF 0X24
  263.     DECFSZ 0X25
  264.     GOTO LOOP
  265.     RETURN
  266.  
  267. FIM
  268.     MOVLW B'00000000'
  269.     MOVWF PORTB
  270.     END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement