Rock (8 / 8 steg)

Steg 8: Microcontroller programkod

;***************FINAL********************************

lista över p = 16f877
inkluderar < P16F877. INC >
radix dec
idlocs "V" << 8 | "1" ; Versionsnr
config _CP_OFF & _PWRTE_OFF & _WDT_OFF & _XT_OSC

; *** huvudsakliga variabeln ***

cblock 0x20; start bank 0 ram område
INPUT_VAR
L1
L2
X
SPEED11
SPEED12
SPEED21
SPEED22
MSTOP
LDET
LR1
LR2

endc

; *** start av huvudprogrammet ***

Start

BSF STATUS, RP0
BCF STATUS, RP1

MOVLW 0X40
MOVWF ADCON1
MOVLW 0XFF; PORT A ÄR JAG
MOVWF TRISA

MOVLW 0X00; PORT B ÄR O
MOVWF TRISB

MOVLW 0XF0; PORT C ÄR I/O
MOVWF TRISC

MOVLW 0XF0; PORT D ÄR I/O
MOVWF TRISD

MOVLW 0X07; PORT E ÄR JAG
MOVWF TRISE

BANKSEL OPTION_REG
BCF OPTION_REG, T0CS

BCF STATUS, RP1
BCF STATUS, RP0

;*******************************************
;*******************************************

Vänta
BCF PORTB, 1
BCF PORTB, 2
BCF PORTB, 6
KALLA PWM1OFF
KALLA PWM2OFF
BCF PORTD, 0
BCF PORTD, 1
BCF PORTD, 2
BCF PORTD, 3
BTFSS LDET, 0
BCF PORTB, 7

MOVLW 0X00
MOVF MSTOP
MOVF LDET

BANKSEL INTCON
BCF INTCON, GIE

BANKSEL TXSTA
BSF TXSTA, BRGH
MOVLW 0X40
MOVWF SPBRG

BCF TXSTA, SYNC
BANKSEL RCSTA
BSF RCSTA, SPEN

BTFSC RCSTA, OERR
GÅ TILL CLROE

BANKSEL PIE1
BSF PIE1, RCIE

BANKSEL RCSTA
BCF RCSTA, RX9

BSF RCSTA, CR

WAIT1
BANKSEL PORTB
BSF PORTB, 3
BSF PORTB, 4

BANKSEL PIR1
BTFSS PIR1, RCIF
GÅ TILL WAIT1

BCF MSTOP, 0

BCF PORTB, 3
BCF PORTB, 4

KALLA PWM1OFF
KALLA PWM2OFF
RING DARKLIGHT
BTFSC LDET, 0
BSF PORTB, 7

RXDATA
; BANKSEL RCSTA
; BTFSC RCSTA, OERR
; GÅ TILL STOPP

KALLA PWM1OFF
KALLA PWM2OFF
RING DARKLIGHT
BTFSC LDET, 0
BSF PORTB, 7

BANKSEL PIR1
BCF PIR1, RCIF

BANKSEL RCREG
MOVF RCREG, 0

;*******************************************
;*******************************************

MOVWF INPUT_VAR
MOVLW 0X00
MOVWF RCREG

BCF STATUS, RP0
BCF STATUS, RP1

MOVF INPUT_VAR, 0; Stanna
SUBLW 0X53
BTFSC STATUS, Z
GÅ TILL STOPP

MOVF INPUT_VAR, 0; LJUS PÅ
SUBLW 0X4E
BTFSC STATUS, Z
GÅ TILL LON

MOVF INPUT_VAR, 0; LJUS AV
SUBLW 0X51
BTFSC STATUS, Z
GÅ TILL LOFF

MOVF INPUT_VAR, 0; GÅ LÅNGSAMT FRAMÅT
SUBLW 0X66
BTFSC STATUS, Z
GÅ TILL FSLOW

MOVF INPUT_VAR, 0; FLYTTA HÖGER LÅNGSAMT
SUBLW 0X72
BTFSC STATUS, Z
GÅ TILL RSLOW

MOVF INPUT_VAR, 0; FLYTTA VÄNSTER LÅNGSAM
SUBLW 0X6C
BTFSC STATUS, Z
GÅ TILL LSLOW

MOVF INPUT_VAR, 0; FLYTTA BAKÅT LÅNGSAMT
SUBLW 0X62
BTFSC STATUS, Z
GÅ TILL ASEN

MOVF INPUT_VAR, 0; FLYTTA FRAMÅT MEDIUM
SUBLW 0X46
BTFSC STATUS, Z
GÅ TILL FMED

MOVF INPUT_VAR, 0; FLYTTA HÖGER MEDIUM
SUBLW 0X52
BTFSC STATUS, Z
GÅ TILL BEKRÄFTAT

MOVF INPUT_VAR, 0; FLYTTA VÄNSTER MEDIUM
SUBLW 0X4C
BTFSC STATUS, Z
GÅ TILL IN

MOVF INPUT_VAR, 0; FLYTTA BAKÅT MEDIUM
SUBLW 0X42
BTFSC STATUS, Z
GÅ TILL BMED

MOVF INPUT_VAR, 0; GÅ FRAMÅT SNABBT
SUBLW 0X55
BTFSC STATUS, Z
GÅ TILL FFAST

MOVF INPUT_VAR, 0; GÅ RÄTT SNABBT
SUBLW 0X57
BTFSC STATUS, Z
GÅ TILL RFAST

MOVF INPUT_VAR, 0; FLYTTA TILL VÄNSTER SNABBT
SUBLW 0X56
BTFSC STATUS, Z
GÅ TILL LFAST

MOVF INPUT_VAR, 0; FLYTTA BAKÅT FAST
SUBLW 0X58
BTFSC STATUS, Z
GÅ TILL BFAST

MOVF INPUT_VAR, 0; HAND NÄRA
SUBLW 0X43
BTFSC STATUS, Z
GÅ TILL HCLOSE

MOVF INPUT_VAR, 0; HAND ÖPPEN
SUBLW 0X4F
BTFSC STATUS, Z
GÅ TILL HOPEN

MOVF INPUT_VAR, 0; HAND UPP
SUBLW 0X75
BTFSC STATUS, Z
GÅ TILL HUP

MOVF INPUT_VAR, 0; HANDEN NER
SUBLW 0X64
BTFSC STATUS, Z
GÅ TILL HDOWN

MOVF INPUT_VAR, 0; LJUS FOLOWER
SUBLW 0X54
BTFSC STATUS, Z
GÅ TILL LFOLLOW

;*******************************************
;*******************************************

GÅ TILL CLROE
FSLOW
; BANKSEL RCSTA
; BCF RCSTA, OERR
; BCF RCSTA, CR
; NOP
; BSF RCSTA, CR

BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
; BCF LDET, 0

; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT
BTFSC LDET, 0
; BSF PORTB, 7

NORMALSLOW

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X66
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X66
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
REP3

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP3

GÅ TILL CLROE
;*******************************************

LSLOW
BCF STATUS, RP0
BCF STATUS, RP1

; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0

RING DARKLIGHT
BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XCF
MOVWF SPEED21
MOVLW 0X66
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
REP4

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP4
GÅ TILL CLROE
;*******************************************
RSLOW
BCF STATUS, RP0
BCF STATUS, RP1

; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XCF
MOVWF SPEED11
MOVLW 0X66
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
REP35

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP35
GÅ TILL CLROE
;*****************************
ASEN
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XCF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XCF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2
REP5
BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP5

GÅ TILL CLROE
;*******************************************
FMED
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

NORMALMED

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
KALLA SDELAY
REP6
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
NOP
BTFSS PORTD, 7
GÅ TILL REP6

PLUSEMED

MOVLW 0XCF
MOVWF SPEED11
MOVLW 0XCC
MOVWF SPEED12
MOVLW 0XCF
MOVWF SPEED21
MOVLW 0XCC
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
KALLA SDELAY
REP7
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
BTFSS PORTD, 7
GÅ TILL NORMALMED
GÅ TILL REP7
GÅ TILL CLROE
;*******************************************
BEKRÄFTAT
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X66
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
REP8
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP8

GÅ TILL CLROE
;*******************************************
IN
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X66
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
REP9
; KALLA STALL1
; BTFSC MSTOP, 0
; GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP9
GÅ TILL CLROE
;*******************************************
BMED
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X7F
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X7F
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2
REP10
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP10
GÅ TILL CLROE
;*******************************************
FFAST
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
BSF MSTOP, 4

; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XEF
MOVWF SPEED11
MOVLW 0X7F
MOVWF SPEED12
MOVLW 0XEF
MOVWF SPEED21
MOVLW 0X7F
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2

KALLA SDELAY

NORMALFAST

MOVLW 0XCF
MOVWF SPEED11
MOVLW 0XCC
MOVWF SPEED12
MOVLW 0XCF
MOVWF SPEED21
MOVLW 0XCC
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BCF PORTD, 1

BTFSC LDET, 0
BSF PORTB, 7

BSF PORTB, 1
BSF PORTB, 2
REP11
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
NOP
BTFSS PORTD, 7
GÅ TILL REP11

PLUSEFAST

MOVLW 0XCF
MOVWF SPEED11
MOVLW 0XFF
MOVWF SPEED12
MOVLW 0XCF
MOVWF SPEED21
MOVLW 0XFF
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
REP12
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
BTFSS PORTD, 7
GÅ TILL NORMALFAST
GÅ TILL REP12
GÅ TILL CLROE
;*******************************************
RFAST
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X66
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
REP13
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP13
GÅ TILL CLROE
;*******************************************
LFAST
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X66
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2

KALLA SDELAY

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X4C
MOVWF SPEED12
MOVLW 0XEF
MOVWF SPEED21
MOVLW 0XB3
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
REP14
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP14
GÅ TILL CLROE
;*******************************************
BFAST
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

MOVLW 0XDF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XDF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2

KALLA SDELAY

MOVLW 0XEF
MOVWF SPEED11
MOVLW 0X66
MOVWF SPEED12
MOVLW 0XEF
MOVWF SPEED21
MOVLW 0X66
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2
REP15
KALLA STALL1
BTFSC MSTOP, 0
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP15
GÅ TILL CLROE
;*******************************************
HCLOSE
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTD, 5
GÅ TILL STOPP
BTFSC PORTD, 6
GÅ TILL STOPP

BSF PORTD, 2
BCF PORTD, 3

REP16
BTFSC PORTD, 5
GÅ TILL STOPP
BTFSC PORTD, 6
GÅ TILL STOPP
KALLA SDELAY
KALLA STALL2
BTFSC MSTOP, 2
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP16

GÅ TILL CLROE
;*******************************************
HOPEN
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTD, 4
GÅ TILL STOPP
BCF PORTD, 2
BSF PORTD, 3

REP17
BTFSC PORTD, 4
GÅ TILL STOPP
KALLA SDELAY
KALLA STALL2
BTFSC MSTOP, 2
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP17

GÅ TILL CLROE
;*******************************************
HUP

BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTC, 4
GÅ TILL STOPP
BCF PORTC, 0
BSF PORTC, 3

REP18
BTFSC PORTC, 4
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP18

GÅ TILL CLROE
;*******************************************
HDOWN

BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

RING DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTC, 5
GÅ TILL STOPP
BSF PORTC, 0
BCF PORTC, 3

REP19
BTFSC PORTC, 5
GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
GÅ TILL REP19

GÅ TILL CLROE
;*******************************************
LON

BSF PORTB, 7
BSF LDET, 0

GÅ TILL CLROE
;*******************************************
LOFF
BCF PORTB, 7
BCF LDET, 0

GÅ TILL CLROE
;*******************************************
LFOLLOW

BCF STATUS, RP0
BCF STATUS, RP1

BCF PORTB, 1
BCF PORTB, 2
BCF PORTB, 6
BCF PORTB, 7
KALLA PWM1OFF
KALLA PWM2OFF
BCF PORTD, 0
BCF PORTD, 1
BCF PORTD, 2
BCF PORTD, 3
BSF MSTOP, 6

REPLF
; BANKSEL OPTION_REG
; BSF OPTION_REG, 3
; BSF OPTION_REG, 3
; BSF OPTION_REG, 3
; BSF OPTION_REG, 3

; CLRFWDT
BCF STATUS, RP0
BCF STATUS, RP1

; BANKSEL INTCON
; BCF INTCON, T0IE
; BCF INTCON, T0IF
; BANKSEL PIE1
; BCF PIE1, 6
; BCF PIE1, 0
; BANKSEL INTCON
; BCF INTCON, GIE
BANKSEL PCON
BCF PCON, 0
BCF PCON, 1
NOP
BSF PCON, 0
BSF PCON, 1

BCF STATUS, RP0
BCF STATUS, RP1

MOVLW 0X00
MOVWF MSTOP

KALLA SDELAY

KALLA LFC1
NOP
KALLA LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GÅ TILL FRAMSIDAN
KALLA SDELAY
KALLA LFC1
NOP
KALLA LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, C
GÅ TILL LR2G

LR1G

BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP

; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X66
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
LR1GREP
; KALLA STALL1
; BTFSC MSTOP, 0
; GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA

KALLA LFC1
NOP
KALLA LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GÅ TILL REPLF
KALLA LFC1
NOP
KALLA LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSS STATUS, C
GÅ TILL LR1GREP
GÅ TILL REPLF

LR2G

BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP

; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X66
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
LR2GREP
; KALLA STALL1
; BTFSC MSTOP, 0
; GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA

KALLA LFC1
NOP
KALLA LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GÅ TILL REPLF
KALLA LFC1
NOP
KALLA LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, C
GÅ TILL LR2GREP
GÅ TILL REPLF

FRAMSIDAN
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP

; KALLA BUTTLEVEL
; BTFSC MSTOP, 1
; GÅ TILL STOPP

MOVLW 0XFF
MOVWF SPEED11
MOVLW 0X99
MOVWF SPEED12
MOVLW 0XFF
MOVWF SPEED21
MOVLW 0X99
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
KALLA SDELAY
FROREP
; KALLA STALL1
; BTFSC MSTOP, 0
; GÅ TILL STOPP

BANKSEL PIR1
BTFSC PIR1, RCIF
GÅ TILL RXDATA
; KALLA LDIN
; BTFSC MSTOP, 3
; GÅ TILL STOPP
KALLA LFC1
NOP
KALLA LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GÅ TILL FROREP
GÅ TILL REPLF

GÅ TILL CLROE
;*******************************************
HÅLLPLATSER

BTFSS MSTOP, 4
GÅ TILL STOPA

MOVLW 0XCF
MOVWF SPEED11
MOVLW 0XB3
MOVWF SPEED12
MOVLW 0XCF
MOVWF SPEED21
MOVLW 0XB3
MOVWF SPEED22
KALLA PWM1ON
KALLA PWM2ON
BCF PORTD, 0
BCF PORTD, 1
KALLA SDELAY
STOPA
BCF STATUS, RP0
BCF STATUS, RP1

BCF PORTB, 1
BCF PORTB, 2
BCF PORTB, 6
BTFSS LDET, 0
; BCF PORTB, 7
BCF PORTC, 0
BCF PORTC, 3
KALLA PWM1OFF
KALLA PWM2OFF
BCF PORTD, 0
BCF PORTD, 1
BCF PORTD, 2
BCF PORTD, 3
MOVLW 0X00
MOVWF MSTOP
;*******************************************
CLROE

BANKSEL RCSTA
BCF RCSTA, CR
BCF RCSTA, FERR
BCF RCSTA, OERR

BSF RCSTA, CR
BSF INTCON, GIE
BSF INTCON, PEIE

GÅ TILL WAIT1

;*******************************************
;*******************************************
;*******************************************

STALL1
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BANKSEL ADCON0
BCF ADCON0, 3
BCF ADCON0, 4
BCF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
RING KONVERTERA
MOVF ADRESH, 0
SUBLW 0X70
BTFSS STATUS, C
BSF MSTOP, 0
BCF STATUS, RP0
BCF STATUS, RP1
RETURNERA

STALL2
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BANKSEL ADCON0
BSF ADCON0, 3
BCF ADCON0, 4
BCF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
RING KONVERTERA
MOVF ADRESH, 0
SUBLW 0X40
BTFSS STATUS, C
BSF MSTOP, 2
BCF STATUS, RP0
BCF STATUS, RP1
RETURNERA

BUTTLEVEL
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BANKSEL ADCON0
BCF ADCON0, 3
BCF ADCON0, 4
BSF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
RING KONVERTERA
MOVF ADRESH, 0
SUBLW 0X7F
BTFSS STATUS, C
GÅ TILL BL1
GÅ TILL BL2

BL1
BSF MSTOP, 1
BSF PORTB, 6
BL2
RETURNERA

DARKLIGHT
BCF STATUS, RP0
BCF STATUS, RP1

BTFSC LDET, 0
GÅ TILL RETFDL
BANKSEL ADCON0
BCF ADCON0, 3
BSF ADCON0, 4
BCF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
RING KONVERTERA
MOVF ADRESH, 0
SUBLW 0XEE
BTFSS STATUS, C
BSF PORTB, 7
RETFDL
RETURNERA

KONVERTERA
MOVLW 0X49
BANKSEL ADCON1
MOVWF ADCON1
BANKSEL ADCON0
BCF ADCON0, 7
BSF ADCON0, 6
BSF ADCON0, 0
BSF ADCON0, GÅ
WAITADC
BTFSC ADCON0, GÅ
GÅ TILL WAITADC
BCF STATUS, RP1
BCF STATUS, RP0

RETURNERA

PWM1ON
BANKSEL PR2
MOVLW 0XFF
MOVWF PR2
BCF STATUS, RP0
BCF STATUS, RP1
MOVF SPEED11, 0
MOVWF CCP1CON
MOVF SPEED12, 0
MOVWF CCPR1L
BSF STATUS, RP0
BCF STATUS, RP1
MOVLW 0XF0
MOVWF TRISC
BCF STATUS, RP0
BCF STATUS, RP1
BCF T2CON, T2CKPS1
BCF T2CON, T2CKPS0
BSF T2CON, TMR2ON
BSF CCP1CON, 2
BSF CCP1CON, 3

RETURNERA

PWM2ON
BANKSEL PR2
MOVLW 0XFF
MOVWF PR2
BCF STATUS, RP0
BCF STATUS, RP1
MOVF SPEED21, 0
MOVWF CCP2CON
MOVF SPEED22, 0
MOVWF CCPR2L
BSF STATUS, RP0
BCF STATUS, RP1
MOVLW 0XF0
MOVWF TRISC
BCF STATUS, RP0
BCF STATUS, RP1
BCF T2CON, T2CKPS1
BCF T2CON, T2CKPS0
BSF T2CON, TMR2ON
BSF CCP2CON, 2
BSF CCP2CON, 3

RETURNERA

PWM1OFF
BCF CCP1CON, 2
BCF CCP1CON, 3
BSF T2CON, T2CKPS1
BSF T2CON, T2CKPS0
BCF T2CON, TMR2ON
MOVLW 0X00
MOVWF CCP1CON
MOVLW 0X00
MOVWF CCPR1L
BANKSEL PR2
MOVLW 0X00
MOVWF PR2
BCF STATUS, RP1
BCF STATUS, RP0

RETURNERA

PWM2OFF
BCF CCP2CON, 2
BCF CCP2CON, 3
BSF T2CON, T2CKPS1
BSF T2CON, T2CKPS0
BCF T2CON, TMR2ON
MOVLW 0X00
MOVWF CCP2CON
MOVLW 0X00
MOVWF CCPR2L
BANKSEL PR2
MOVLW 0X00
MOVWF PR2
BCF STATUS, RP1
BCF STATUS, RP0

RETURNERA

LFC1
BANKSEL ADCON0
BSF ADCON0, 3
BCF ADCON0, 4
BSF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
RING KONVERTERA
MOVF ADRESH, W
ANDLW 0XF0
MOVWF LR1
BCF STATUS, RP0
BCF STATUS, RP1
RETURNERA

LFC2
BANKSEL ADCON0
BCF ADCON0, 3
BSF ADCON0, 4
BSF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
RING KONVERTERA
MOVF ADRESH, 0
ANDLW 0XF0
MOVWF LR2
BCF STATUS, RP0
BCF STATUS, RP1
RETURNERA

LDIN
BANKSEL ADCON0
BCF ADCON0, 3
BSF ADCON0, 4
BCF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
RING KONVERTERA
MOVF ADRESH, 0
SUBLW 0X4C
BTFSC STATUS, C
GÅ TILL COMP4
BSF MSTOP, 3
COMP4
BCF STATUS, RP0
BCF STATUS, RP1
RETURNERA

SDELAY
CLRF L2
XL3
CLRF L1
XL2
CLRF TMR0
XL1
MOVLW 0XFF
SUBWF TMR0, W
BTFSS STATUS, C
GÅ TILL XL1

MOVLW 0X20
INCF L1
SUBWF L1, W
BTFSS STATUS, C
GÅ TILL XL2

MOVLW 0X10
INCF L2
SUBWF L2, W
BTFSS STATUS, C
GÅ TILL XL3
RETURNERA

NOP
NOP

SLUTET

Se Steg
Relaterade Ämnen

Champagne Cupcakes med gnistrande Rock Candy

Vad bättre sätt att börja det nya året än med festliga champagne cupcakes! Dessa söta cupcakes kommer att bli en hit på någon fest, eller bara göra för kul! Denna delikata dessert är infunderas med champagne, och även toppat med hemgjord rock candy!S...

Hur man fångar massor av bluegill och rock bas

Eldon spenderar lite tid på floden och fångar en röra av bluegill och rock bas - 50 av dem i fyra timmar....

Little Rock Star

här är hur man gör en liten rock stjärnan ur din son!PS SNÄLLA RÖSTA PÅ MIG!PPS ledsen om bilderna är dåliga. Jag försökte hålla cam fortfarande.Steg 1: Vad du behöver... Här är vad du behöver för den lilla killen...1. sexiga rock star tröja och byxo...

ARK Rocker

ARK vippan är konceptet att utforska gränslandet mellan modern tillverkningsteknik med tidlösa hantverk tekniker.Varje del av denna gungstol gjordes gjordes med digital tillverkning och modellering av programvara genom Autodesk och Pier 9 verkstaden....

En enkel Rock Garden

Vi har bott i hyrda hus och nu nyligen vi köpte hus och flyttade. Huset kom med en liten trädgård. Tyvärr på grund av träden skuggning marken var inte gräset växer.Träden var bra mestadels örter och frukter med träd.Våra rum var över, och det var int...

Svart Rock Shooter: Flaming ögat

jag hade tänkt att publicera detta instructable ett tag, men jag kunde inte hitta den hoppa driva med bilder. Tja jag nyligen hittade det så här är jag. Detta är min version av den flammande öga som tecken i anime OVA svart Rock Shooter har. Min fabr...

En Rock 'Em, strumpa 'Em Halloween

Steve och jag bestämde mig för detta Halloween vi skulle klä som älskade spelpjäs tecken Red Rocker och blå bombplan från Mattel's Rock 'Em, strumpa 'Em robotar.Kostymerna är tillverkade av kraftig kartong (ca 30 fot varje robot), pusslas samman med...

Hard Rock TV Väggfäste

under en vistelse på Hard Rock hotel i Las Vegas, märkte jag att TV i rummen var monterade med falska "väggarna" så att som kablar och TV-fästet kan döljas. Falska väggar var sedan monterade på riktiga väggar och för att göra dem en funktion.Som...

DIY bastrumma Pedal för Diy Electronic Drum Kit/Rock Band Fix

detta är min första instructable så vara trevligt!Här kommer hopefull berätta hur du skapar din egen bastrumman/hi-hat pedal för dig DIY elektroniska trumset (gruva kommer snart!) till gamepad hacka eller som en fix för din rock band pedal (inte test...

Anpassade falska rock nyckelhållare

Dölja en reservnyckel under en sten är en bra idé. Tills någon kommer och flyttar rock, att hitta nyckeln under. Detta instructable visar dig hur du skapar din egen falska rock som säkert kommer att hålla din reservnyckel.Steg 1: material Hus nyckel...

En enkel, billig riktig gitarr till Rock Band Pro Mod grejen

Ja, lång titel. Hur som helst, jag arbetar mot ett enkelt, kostnadseffektivt sätt att använda din riktiga gitarr för Rock Band Pro! Toppen! Jag ska visa dig hur jag ska göra det i detta instructable.Så, utan vidare...Steg 1: material Så här är vad du...

BECKY'S 2 ROCKS

Det stora bröllopet är i morgon! Brudgummen har noggrant utvalda Becky's ROCK och har det säkert in. Becky är så glad med sin ljusa bländande diamant hon ville göra en pro-typ att dela sin skönhet. Då det unga paret insåg att de inte hade en gästbok!...

Gör din verkliga Drum Kit arbeta med Rock Band på Playstation 3

detta är en steg för steg handledning om hur du ställer in Rock Band 1 och 2 till Playstation 3 till en riktig trumset.Vad du behöver:5 piece trumset (vi använde en Dixon Demon)PlayStation 3 (eller 2)RockBand 2 (eller ursprungliga RB)Rock Band mikrof...

Andra användningsområden för Rock Band instrument

så någonsin tänkt, man jag vill vara som dessa killar. Jag vill spela min rockband trummor som riktiga trummor. Jag vill sjunga till flera av mina favorit låtar! Tja, nu kan du. Idag, kommer att du hitta om några freeware program som du inte kanske h...

PVC gitarr står för Guitar Hero och Rock Band

The Guitar Hero och Rock Band-serien har gett oss massor av musik, men de har också gett oss något annat... många plast gitarrerna i olika stilar, former och färger. Efter ett tag, flytta dessa gitarrer runt hela tiden blir frustrerande och de faller...

Rock Band gitarr Mod: Gitarr hjälte knappar och Strum Bar

av cannibalizing en PS2 Guitar Hero Controller, jag lagt alla mina favorit element till min Xbox 360 Rock Band Controller: upp knappar och mekaniska brytare för strum bar.Denna mod resulterar i ökad funktionalitet för min Rock Band Controller: de nya...

Hur att spela Rock, papper, sax, ödla, Spock

I detta Instructable, jag kommer att lära dig att spela en variant av Rock, Paper, sax kallas Rock, papper, sax, ödla, Spock. Reglerna är mycket likt det ursprungliga spelet, men med några fler alternativ att välja mellan.Steg 1: RockI den gamla vers...

Arduino Xbox RC bil hacka (Maisto Rock Crawler)

I detta projekt vi hacka en RC bil (Maisto Rock Crawler) och ersätta är det lager kretskort med en Arduino Uno R3, Motor sköld och XBee modul. Vi kommer att använda en annan Arduino att samla in och tolka data från en Xbox 360-handkontrollen; denna A...

Sling / artilleri Rock, för lajv

så du vilja kasta stenar eh?Om du behöver en fräscha rock till tryggt kasta eller slänga på din nästa lajv. Denna guide är för dig!Du behöver:Skum block. Jag använde rester av en matrass.Filt, eller andra "rock" som tyg.Nål och slitbanan och tov...

Bang Bang (Rock) räkor

Dessa försiktigt stekta räkor är belagda med en krämig, söt sås med en touch av krydda! Jag hade dem på en restaurang en gång och blev kär! Detta är min ta (copycat) på "Bang Bang" aka "Rock" räkor. Tro mig, du kommer inte veta skillna...