De rots (8 / 8 stap)

Stap 8: Microcontroller programmacode

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

lijst van p = 16f877
opnemen < P16F877. INC >
Radix dec
idlocs "V" << 8 | "1" ; Versie nr.
config _CP_OFF, _PWRTE_OFF, _WDT_OFF & _XT_OSC

; *** belangrijkste variabele ***

cblock 0x20; begin van bank 0 ram gebied
INPUT_VAR
L1
L2
X
SPEED11
SPEED12
SPEED21
SPEED22
MSTOP
LDET
LR1
LR2

endc

; *** start van het hoofdprogramma ***

Start

BSF STATUS, RP0
BCF STATUS, RP1

MOVLW 0X40
MOVWF ADCON1
MOVLW 0XFF; POORT A IS IK
MOVWF TRISA

MOVLW 0X00; POORT B IS O
MOVWF TRISB

MOVLW 0XF0; POORT C IS I/O
MOVWF TRISC

MOVLW 0XF0; PORT D IS I/O
MOVWF TRISD

MOVLW 0X07; PORT E IS IK
MOVWF TRISE

BANKSEL OPTION_REG
BCF OPTION_REG, T0CS

BCF STATUS, RP1
BCF STATUS, RP0

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

WACHTEN
BCF PORTB, 1
BCF PORTB, 2
BCF PORTB, 6
OPROEP PWM1OFF
OPROEP 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
GOTO CLROE

BANKSEL PIE1
BSF PIE1, RCIE

BANKSEL RCSTA
BCF RCSTA, RX9

BSF RCSTA, CREN

WAIT1
BANKSEL PORTB
BSF PORTB, 3
BSF PORTB, 4

BANKSEL PIR1
BTFSS PIR1, RCIF
GOTO WAIT1

BCF MSTOP, 0

BCF PORTB, 3
BCF PORTB, 4

OPROEP PWM1OFF
OPROEP PWM2OFF
OPROEP DARKLIGHT
BTFSC LDET, 0
BSF PORTB, 7

RXDATA
; BANKSEL RCSTA
; BTFSC RCSTA, OERR
; GOTO STOPT

OPROEP PWM1OFF
OPROEP PWM2OFF
OPROEP 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; STOP
SUBLW 0X53
BTFSC STATUS, Z
GOTO STOPT

MOVF INPUT_VAR, 0; LICHT OP
SUBLW 0X4E
BTFSC STATUS, Z
GOTO-LON

MOVF INPUT_VAR, 0; LICHT UIT
SUBLW 0X51
BTFSC STATUS, Z
GOTO LOFF

MOVF INPUT_VAR, 0; LANGZAAM VOORUIT
SUBLW 0X66
BTFSC STATUS, Z
GOTO FSLOW

MOVF INPUT_VAR, 0; RECHTS HET LANGZAAM VERPLAATSEN
SUBLW 0X72
BTFSC STATUS, Z
GOTO RSLOW

MOVF INPUT_VAR, 0; NAAR LINKS BEWEGEN TRAAG
SUBLW 0X6C
BTFSC STATUS, Z
GOTO LSLOW

MOVF INPUT_VAR, 0; IN TERUGWAARTSE RICHTING TRAAG
SUBLW 0X62
BTFSC STATUS, Z
GOTO ATRAAG

MOVF INPUT_VAR, 0; VOORWAARTSE MEDIUM VERPLAATSEN
SUBLW 0X46
BTFSC STATUS, Z
GOTO FMED

MOVF INPUT_VAR, 0; JUISTE MEDIUM VERPLAATST
SUBLW 0X52
BTFSC STATUS, Z
GOTO BEVESTIGDE

MOVF INPUT_VAR, 0; LINKER MEDIUM VERPLAATSEN
SUBLW 0X4C
BTFSC STATUS, Z
GOTO LMED

MOVF INPUT_VAR, 0; ACHTERWAARTSE MEDIUM VERPLAATSEN
SUBLW 0X42
BTFSC STATUS, Z
GOTO BMED

MOVF INPUT_VAR, 0; SNEL VOORUIT
SUBLW 0X55
BTFSC STATUS, Z
GOTO FFAST

MOVF INPUT_VAR, 0; JUISTE SNEL VERPLAATSEN
SUBLW 0X57
BTFSC STATUS, Z
GOTO RFAST

MOVF INPUT_VAR, 0; SNEL LINKS VERPLAATSEN
SUBLW 0X56
BTFSC STATUS, Z
GOTO LFAST

MOVF INPUT_VAR, 0; IN TERUGWAARTSE RICHTING SNEL
SUBLW 0X58
BTFSC STATUS, Z
GOTO AVASTEN

MOVF INPUT_VAR, 0; HAND NAUWE
SUBLW 0X43
BTFSC STATUS, Z
GOTO HCLOSE

MOVF INPUT_VAR, 0; HAND OPEN
SUBLW 0X4F
BTFSC STATUS, Z
GOTO HOPEN

MOVF INPUT_VAR, 0; HAND OMHOOG
SUBLW 0X75
BTFSC STATUS, Z
GOTO HUP

MOVF INPUT_VAR, 0; HAND DOWN
SUBLW 0X64
BTFSC STATUS, Z
GOTO HDOWN

MOVF INPUT_VAR, 0; LICHTE FOLOWER
SUBLW 0X54
BTFSC STATUS, Z
GOTO LFOLLOW

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

GOTO CLROE
FSLOW
; BANKSEL RCSTA
; BCF RCSTA, OERR
; BCF RCSTA, CREN
; NOP
; BSF RCSTA, CREN

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

; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT
BTFSC LDET, 0
; BSF PORTB, 7

NORMALSLOW

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

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
REP3

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP3

GOTO CLROE
;*******************************************

LSLOW
BCF STATUS, RP0
BCF STATUS, RP1

; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0

OPROEP DARKLIGHT
BTFSC LDET, 0
; BSF PORTB, 7

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

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
REP4

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP4
GOTO CLROE
;*******************************************
RSLOW
BCF STATUS, RP0
BCF STATUS, RP1

; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
REP35

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP35
GOTO CLROE
;*****************************
ATRAAG
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2
REP5
BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP5

GOTO CLROE
;*******************************************
FMED
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

NORMALMED

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

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
OPROEP SDELAY
REP6
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
NOP
BTFSS PORTD, 7
GOTO REP6

PLUSEMED

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

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
OPROEP SDELAY
REP7
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
BTFSS PORTD, 7
GOTO NORMALMED
GOTO REP7
GOTO CLROE
;*******************************************
BEVESTIGDE
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
REP8
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP8

GOTO CLROE
;*******************************************
LMED
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
REP9
; OPROEP STALL1
; BTFSC MSTOP, 0
; GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP9
GOTO CLROE
;*******************************************
BMED
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2
REP10
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

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

; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2

OPROEP SDELAY

NORMALFAST

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

BCF PORTD, 0
BCF PORTD, 1

BTFSC LDET, 0
BSF PORTB, 7

BSF PORTB, 1
BSF PORTB, 2
REP11
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
NOP
BTFSS PORTD, 7
GOTO REP11

PLUSEFAST

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

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
REP12
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
BTFSS PORTD, 7
GOTO NORMALFAST
GOTO REP12
GOTO CLROE
;*******************************************
RFAST
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
REP13
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP13
GOTO CLROE
;*******************************************
LFAST
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2

OPROEP SDELAY

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

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
REP14
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP14
GOTO CLROE
;*******************************************
AVASTEN
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

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

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2

OPROEP SDELAY

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

BSF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BCF PORTB, 2
REP15
OPROEP STALL1
BTFSC MSTOP, 0
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP15
GOTO CLROE
;*******************************************
HCLOSE
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTD, 5
GOTO STOPT
BTFSC PORTD, 6
GOTO STOPT

BSF PORTD, 2
BCF PORTD, 3

REP16
BTFSC PORTD, 5
GOTO STOPT
BTFSC PORTD, 6
GOTO STOPT
OPROEP SDELAY
OPROEP STALL2
BTFSC MSTOP, 2
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP16

GOTO CLROE
;*******************************************
HOPEN
BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTD, 4
GOTO STOPT
BCF PORTD, 2
BSF PORTD, 3

REP17
BTFSC PORTD, 4
GOTO STOPT
OPROEP SDELAY
OPROEP STALL2
BTFSC MSTOP, 2
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP17

GOTO CLROE
;*******************************************
HUP

BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTC, 4
GOTO STOPT
BCF PORTC, 0
BSF PORTC, 3

REP18
BTFSC PORTC, 4
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP18

GOTO CLROE
;*******************************************
HDOWN

BCF STATUS, RP0
BCF STATUS, RP1
MOVLW 0X00
MOVWF MSTOP
BCF LDET, 0
; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

OPROEP DARKLIGHT

BTFSC LDET, 0
; BSF PORTB, 7

BTFSC PORTC, 5
GOTO STOPT
BSF PORTC, 0
BCF PORTC, 3

REP19
BTFSC PORTC, 5
GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
GOTO REP19

GOTO CLROE
;*******************************************
LON

BSF PORTB, 7
BSF LDET, 0

GOTO CLROE
;*******************************************
LOFF
BCF PORTB, 7
BCF LDET, 0

GOTO CLROE
;*******************************************
LFOLLOW

BCF STATUS, RP0
BCF STATUS, RP1

BCF PORTB, 1
BCF PORTB, 2
BCF PORTB, 6
BCF PORTB, 7
OPROEP PWM1OFF
OPROEP 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

OPROEP SDELAY

OPROEP LFC1
NOP
OPROEP LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GOTO FRONT
OPROEP SDELAY
OPROEP LFC1
NOP
OPROEP LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, C
GOTO LR2G

LR1G

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

; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

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

BSF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BCF PORTB, 2
LR1GREP
; OPROEP STALL1
; BTFSC MSTOP, 0
; GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA

OPROEP LFC1
NOP
OPROEP LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GOTO REPLF
OPROEP LFC1
NOP
OPROEP LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSS STATUS, C
GOTO LR1GREP
GOTO REPLF

LR2G

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

; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

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

BCF PORTD, 0
BSF PORTD, 1

BCF PORTB, 1
BSF PORTB, 2
LR2GREP
; OPROEP STALL1
; BTFSC MSTOP, 0
; GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA

OPROEP LFC1
NOP
OPROEP LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GOTO REPLF
OPROEP LFC1
NOP
OPROEP LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, C
GOTO LR2GREP
GOTO REPLF

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

; OPROEP BUTTLEVEL
; BTFSC MSTOP, 1
; GOTO STOPT

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

BCF PORTD, 0
BCF PORTD, 1

BSF PORTB, 1
BSF PORTB, 2
OPROEP SDELAY
FROREP
; OPROEP STALL1
; BTFSC MSTOP, 0
; GOTO STOPT

BANKSEL PIR1
BTFSC PIR1, RCIF
GOTO RXDATA
; OPROEP LDIN
; BTFSC MSTOP, 3
; GOTO STOPT
OPROEP LFC1
NOP
OPROEP LFC2
NOP
MOVF LR2, 0
SUBWF LR1, 0
BTFSC STATUS, Z
GOTO FROREP
GOTO REPLF

GOTO CLROE
;*******************************************
STOPT

BTFSS MSTOP, 4
GOTO STOPA

MOVLW 0XCF
MOVWF SPEED11
MOVLW 0XB3
MOVWF SPEED12
MOVLW 0XCF
MOVWF SPEED21
MOVLW 0XB3
MOVWF SPEED22
OPROEP PWM1ON
OPROEP PWM2ON
BCF PORTD, 0
BCF PORTD, 1
OPROEP 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
OPROEP PWM1OFF
OPROEP PWM2OFF
BCF PORTD, 0
BCF PORTD, 1
BCF PORTD, 2
BCF PORTD, 3
MOVLW 0X00
MOVWF MSTOP
;*******************************************
CLROE

BANKSEL RCSTA
BCF RCSTA, CREN
BCF RCSTA, FERR
BCF RCSTA, OERR

BSF RCSTA, CREN
BSF INTCON, GIE
BSF INTCON, PEIE

GOTO 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
OPROEP CONVERTEREN
MOVF ADRESH, 0
SUBLW 0X70
BTFSS STATUS, C
BSF MSTOP, 0
BCF STATUS, RP0
BCF STATUS, RP1
TERUGKEER

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
OPROEP CONVERTEREN
MOVF ADRESH, 0
SUBLW 0X40
BTFSS STATUS, C
BSF MSTOP, 2
BCF STATUS, RP0
BCF STATUS, RP1
TERUGKEER

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
OPROEP CONVERTEREN
MOVF ADRESH, 0
SUBLW 0X7F
BTFSS STATUS, C
GOTO BL1
GOTO BL2

BL1
BSF MSTOP, 1
BSF PORTB, 6
ELU
TERUGKEER

DARKLIGHT
BCF STATUS, RP0
BCF STATUS, RP1

BTFSC LDET, 0
GOTO RETFDL
BANKSEL ADCON0
BCF ADCON0, 3
BSF ADCON0, 4
BCF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
OPROEP CONVERTEREN
MOVF ADRESH, 0
SUBLW 0XEE
BTFSS STATUS, C
BSF PORTB, 7
RETFDL
TERUGKEER

CONVERTEREN
MOVLW 0X49
BANKSEL ADCON1
MOVWF ADCON1
BANKSEL ADCON0
BCF ADCON0, 7
BSF ADCON0, 6
BSF ADCON0, 0
BSF ADCON0, GA
WAITADC
BTFSC ADCON0, GA
GOTO WAITADC
BCF STATUS, RP1
BCF STATUS, RP0

TERUGKEER

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

TERUGKEER

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

TERUGKEER

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

TERUGKEER

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

TERUGKEER

LFC1
BANKSEL ADCON0
BSF ADCON0, 3
BCF ADCON0, 4
BSF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
OPROEP CONVERTEREN
MOVF ADRESH, W
ANDLW 0XF0
MOVWF LR1
BCF STATUS, RP0
BCF STATUS, RP1
TERUGKEER

LFC2
BANKSEL ADCON0
BCF ADCON0, 3
BSF ADCON0, 4
BSF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
OPROEP CONVERTEREN
MOVF ADRESH, 0
ANDLW 0XF0
MOVWF LR2
BCF STATUS, RP0
BCF STATUS, RP1
TERUGKEER

LDIN
BANKSEL ADCON0
BCF ADCON0, 3
BSF ADCON0, 4
BCF ADCON0, 5
BCF STATUS, RP0
BCF STATUS, RP1
OPROEP CONVERTEREN
MOVF ADRESH, 0
SUBLW 0X4C
BTFSC STATUS, C
GOTO COMP4
BSF MSTOP, 3
COMP4
BCF STATUS, RP0
BCF STATUS, RP1
TERUGKEER

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

MOVLW 0X20
INCF L1
SUBWF L1, W
BTFSS STATUS, C
GOTO XL2

MOVLW 0X10
INCF L2
SUBWF L2, W
BTFSS STATUS, C
GOTO XL3
TERUGKEER

NOP
NOP

EINDE

Gerelateerde Artikelen

Rot en tegen knaagdieren beschermde garagedeur zegel met PVC en weatherstripping

Rot en tegen knaagdieren beschermde garagedeur zegel met PVC en weatherstripping

Hoe te verzegelen van een garagedeur te houden van knaagdieren uit.Houden van het weer en de knaagdieren uit een garage kunnen lastig zijn. Met behulp van alle PVC-producten kun je deze jongens uit.Stap 1: Het probleem... rot en knaagdieren Hout trim
"Gij zijt mijn rots!" Wensen van vrienden & familie bruiloft

"Gij zijt mijn rots!" Wensen van vrienden & familie bruiloft

Geweldig idee om stak op bruiloften, laat uw gasten schrijven wensen voor de bruid en bruidegom voor hen om te koesteren.De bruid en bruidegom ziet al hun vrienden en familie huwelijk advies voor hen.Stap 1: Uitgaan, en verzamelen van rotsen. U kunt
Oude rot boor restauratie

Oude rot boor restauratie

Dit restauratieproject is een cadeau voor mijn vader. Mijn vader was de eerste persoon die heeft me laten zien hoe met de instrumenten van de handel, variërend van eenvoudige auto-onderhoud tot Huis Remodellerend projecten. Hij altijd deed me denken
Roti Boy (Mexicaanse koffie broodjes)

Roti Boy (Mexicaanse koffie broodjes)

Wanneer we een bezoek aan familie in Indonesië, zou ze een doos van 24 van Roti jongen altijd krijgen voor ons aangezien wij ze zo veel houden. In de stad waar ze wonen, is Roti jongen alleen beschikbaar op de luchthaven, dus het is altijd handig om
Hoe maak je basis Roti| Aka| Pulka Fulka| Poli| Chapati| Indiase plat brood...

Hoe maak je basis Roti| Aka| Pulka Fulka| Poli| Chapati| Indiase plat brood...

Roti is over de hele wereld in verschillende vormen worden geconsumeerd. Deze video zal je leren hoe te maken van een fundamentele roti en dat ook zeer zachtAbonneer je eenvoudig koken met EktaBringing exotische vegetarische recepten uit Ekta de keuk
\m/ rots op rave helm voor elektrische uitvoert, electro dancemuziek

\m/ rots op rave helm voor elektrische uitvoert, electro dancemuziek

\m/ rots op rave helmZiek van generieke korting op de plank object voor evenementen zoals elektrische run of electro dance muziekfestival, rave??? Maak een aangepaste item! Ik heb eerder een draadloos opgeladen RGB LED fiber optic bangle bedacht voor
Een nep rots, grot/basking spot voor een reptiel kooi maken.

Een nep rots, grot/basking spot voor een reptiel kooi maken.

Hier zal ik u tonen hoe te maken een nep rots grot/basking spot voor je reptiel kooi. Dit is een die ik voor mijn Bearded Dragon, Viggo gemaakt heb.Stap 1: ontwerp! Dit is mijn oorspronkelijke ontwerp ik maanden geleden maakte. Het ontwerp is verande
Hoe te het beeldhouwen van een boom op een rots in polymeerklei

Hoe te het beeldhouwen van een boom op een rots in polymeerklei

Bent u een beginner kunstenaar of iedereen die houdt van de bomen, is dit het kunstproject voor u. Ik zal u door het beeldhouwen van een boom in polymeerklei op een rots lopen - ik leren u alles wat die u moet weten in mijn laconiek onderwijs stijl.
Solide als een rots bruiloft geheugen

Solide als een rots bruiloft geheugen

Ik deed dit op mijn bruiloft afgelopen herfst, mijn moeder tuimelde de stenen voor mij in haar rock tuimelaar en aan het einde van de festiviteiten we hadden deze momento te nemen als een herinnering van vrienden die onze dag bij ons gedeelde thuis.S
Aangepaste nep rots sleutelhaak

Aangepaste nep rots sleutelhaak

Het verbergen van een reservesleutel onder een rots is een geweldig idee. Totdat iemand langs komt en de rots gaat, het vinden van de toets eronder. Dit instructable zal u tonen hoe het maken van uw eigen nep rots die uw reservesleutel veilig zal hou
Roti Prata of Roti Canai recept (Video)

Roti Prata of Roti Canai recept (Video)

ik ging onlangs naar restaurant waar de Roti zo smaakvol, schilferige en taai was. Ik moest proberen het maken van mijn eigen thuis. Na verschillende pogingen en recept proeven vond ik een manier dat is makkelijk en lekker! Geniet van de video recept
A Bush mes uit een oude rot bestand maken

A Bush mes uit een oude rot bestand maken

ik hou van mijn eigen tools. Van beitels te krom messen, het proces, ik voel, dat hulpmiddel aan u bindt en personaliseert het op een manier die geeft het waarde die een winkel gekocht object niet. Op deze had ik een oude rot-bestand uit de vroege 19
Rots van Prometheus Knex bal Machine

Rots van Prometheus Knex bal Machine

de rots van Prometheus is een knex bal machine die ik heb gewerkt aan. Het heeft een totaal van 5 paden en twee liften. De semi-cirkel lift werd uitgevonden door Tornado96, en de afwisselende arm lift is uitgevonden door Shadowman39 en Tornado96. Spe
Crystal Growing op een rots van kopersulfaat

Crystal Growing op een rots van kopersulfaat

CuSO4 (kopersulfaat) is een chemische stof kan iedereen kopen in bijna elke drogisterij of op het internet. Ik kocht net als 1 kg, het is heel goedkoop, maar hoeft u niet zo veel... Kopen in poedervorm.Groeien van kristallen van CuSO4 is bekend ding.
Hoe oude rot boor terug tot leven te brengen

Hoe oude rot boor terug tot leven te brengen

Hallo, iedereen!!!Vandaag ga ik u tonen hoe te brengen, ongeveer 70 jaar oude rot boor geproduceerd door "Venusberg", terug naar het leven, maar eerst wat info over het.De boor "Venusberg" werd geproduceerd na de Tweede Wereldoorlog, z