diff options
author | thing1 <thing1@seacrossedlovers.xyz> | 2024-10-07 13:01:30 +0100 |
---|---|---|
committer | thing1 <thing1@seacrossedlovers.xyz> | 2024-10-07 13:01:30 +0100 |
commit | 3564e513623bb3fc4d528d3d29df9aa91dae1396 (patch) | |
tree | 17d60d15b9c21db957ef966fc3eb763fd11fd244 /electronics/asm/5.asm | |
parent | ce61e41c6a14b84808aceb37d5118f23e3affaa0 (diff) |
did some electronics and comp sci work
Diffstat (limited to 'electronics/asm/5.asm')
-rw-r--r-- | electronics/asm/5.asm | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/electronics/asm/5.asm b/electronics/asm/5.asm new file mode 100644 index 0000000..5455ded --- /dev/null +++ b/electronics/asm/5.asm @@ -0,0 +1,45 @@ +start: +init: + clrf PORTA ; make sure port A output latches are low + clrf PORTB ; make sure port B output latches are low + bsf STATUS,RP0 ; select memory bank 1 + movlw b'11111111' ; set port A data direction to inputs + movwf TRISA + movlw b'00000000' ; set port B data direction to outputs + movwf TRISB + bcf STATUS,RP0 ; select memory bank 0 + goto main + +main: + btfsc PORTA, 0 + goto led0 + + btfsc PORTA, 1 + goto led1 + + btfsc PORTA, 2 + goto led2 + + call wait1000ms + call wait1000ms + + movlw b'00000000' + movwf PORTB + goto main + +led0: + movlw b'00000001' + movwf PORTB + goto main + +led1: + movlw b'00000010' + movwf PORTB + goto main + +led2: + movlw b'00000100' + movwf PORTB + goto main + + end ; ends the program |