ervinne

Micro Sys. Lab 6 Ex. 02 - Simple Input

Sep 30th, 2012
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MPASM 0.97 KB | None | 0 0
  1.     #INCLUDE "P16F84A.INC"
  2.  
  3.     __CONFIG _XT_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF
  4.  
  5.     ERRORLEVEL -302
  6.  
  7.     ORG 0x00
  8.     GOTO START
  9.  
  10.     ORG 0x04
  11.     GOTO START
  12.  
  13. START
  14.     ;----------------------------------------------------------
  15.     ;   register configurations
  16.     BSF STATUS, RP0
  17.     MOVLW 0xFF
  18.     MOVWF TRISA
  19.     MOVLW 0x00
  20.     MOVWF TRISB
  21.  
  22.     MOVLW 0x07
  23.     MOVWF OPTION_REG
  24.  
  25.     BCF STATUS, RP0
  26.     CLRF PORTA
  27.     CLRF PORTB
  28.  
  29. MAIN
  30.     MOVLW B'11111111'
  31.     MOVWF PORTB
  32.  
  33. S1
  34.     BTFSC PORTA, 0
  35.     GOTO MAIN
  36.     GOTO L2
  37.  
  38. S2
  39.     BTFSC PORTA, 1
  40.     GOTO S1
  41.     BTFSC PORTA, 0
  42.     GOTO MAIN
  43.     GOTO L4
  44.  
  45. S3
  46.     BTFSC PORTA, 2
  47.     GOTO S2
  48.     BTFSC PORTA, 1
  49.     GOTO S1
  50.     BTFSC PORTA, 0
  51.     GOTO MAIN
  52.     GOTO L6
  53.  
  54. S4
  55.     BTFSC PORTA, 3
  56.     GOTO S3
  57.     BTFSC PORTA, 2
  58.     GOTO S2
  59.     BTFSC PORTA, 1
  60.     GOTO S1
  61.     BTFSC PORTA, 0
  62.     GOTO S1
  63.     GOTO L8
  64.  
  65. L2
  66.     MOVLW B'11111100'
  67.     MOVWF PORTB
  68.     GOTO S2
  69.  
  70. L4
  71.     MOVLW B'11110000'
  72.     MOVWF PORTB
  73.     GOTO S3
  74.  
  75. L6
  76.     MOVLW B'11000000'
  77.     MOVWF PORTB
  78.     GOTO S4
  79.  
  80. L8
  81.     MOVLW B'00000000'
  82.     MOVWF PORTB
  83.     GOTO S4
  84.  
  85.     END
Advertisement
Add Comment
Please, Sign In to add comment