T
Thayas
Guest
Hey all,
Turiu kodas pasukti 6 viela unipoliniai Stepper motorinių iš interneto ..
It works fine in PROTEUS Simulator (Visi keturi (RBO, RB1, RB2, RB3) Smeigtukai suteikia galia)
Kai aš išbandžiau duonos board.Only du kaiščiai (RB0, RB1) suteikti iš put.I negavau bet iš RB2, RB3 signalus.
kodavimas
LIST p = 16F84; PIC16F844 yra tikslinė procesorius
# include "P16F84.INC"; Įtraukti failo antraštės
CBLOCK 0x10; Laikinasis saugojimas
Poz
DC1
DC2
ENDC
LIST p = 16F84; PIC16F844 yra tikslinė procesorius
# include "P16F84.INC"; Įtraukti failo antraštės
CBLOCK 0x10; Laikinasis saugojimas
ENDC
ORG 0
entrypoint goto pradžia
ORG 4
intvector goto intvector
pradžia
clrw; nulis.
movwf PORTB; Užtikrinti PORTB yra nulinis, kol mes jį įtraukti.
BSF STATUSAS, RP0; Pasirinkite 1 bankas
movlw 0xF0, kaip Rezultatų 0-3 Nustatyti uosto B bitų
movwf TRISB; Nustatyti TRISB užsiregistruoti.
bcf STATUS, RP0; Pasirinkite Banko 0
movlw 3; initialize variklio pozicija
movwf Poz
movwf PORTB
skambinti nedelsiant
clrf PORTB; Motor nuvyti
Sugrąžinimas
PUSH BTFSC PORTA, 0
KVIETIMAS STOP
BTFSC Porta, 1
KVIETIMAS stepcw
KVIETIMAS stepccw
RETURN
; Pasukti pagal laikrodžio rodyklę vieną žingsnį
stepcw
bcf STATUS, C; Išvalyti vykdyti vėliavos
btfsc POS, 3; Nustatyti vykdyti, jei tai nustatytas bit
BSF STATUSAS, C
rlf POS, W; įlaipinti ir pasukti varikliui dabartinė padėtis
andlw 0x0F; kaukė mažesnės kandinėti
movwf Poz
movwf PORTB; Drive rezultatai
skambinti delsimo; Palaukite
clrf PORTB
skambinti nedelsiant
KVIETIMAS delsimas
; Išvalyti produkcija
KVIETIMAS PUSH
atgal
STOP CLRF PORTB
GOTO PUSH; Sukti vienas žingsnis prieš laikrodžio rodyklę
stepccw
bcf STATUS, C; Išvalyti vykdyti vėliavos
btfsc POS, 0
BSF POS, 4
rrf POS, W; įlaipinti ir pasukti varikliui dabartinė padėtis
andlw 0x0F; kaukė mažesnės kandinėti
movwf Poz
movwf PORTB; Drive rezultatai
skambinti delsimo; Palaukite
clrf PORTB; Išvalyti produkcija
skambinti nedelsiant
KVIETIMAS delsimas
Goto PUSH
; Ši procedūra įgyvendinama tarp veiksmų nedelsiant,
Ir taip kontroliuoja variklio greičio.
delsimas movlw 18; Išorinė kilpa iteracijos grafo
movwf DC1
dl1 clrf DC2; initialize vidinis kilpos
dl2 NOP
NOP
decfsz DC2, F
Goto dl2
decfsz DC1, F
Goto dl1
atgal
PABAIGAPlc any one help me soon..........
Turiu kodas pasukti 6 viela unipoliniai Stepper motorinių iš interneto ..
It works fine in PROTEUS Simulator (Visi keturi (RBO, RB1, RB2, RB3) Smeigtukai suteikia galia)
Kai aš išbandžiau duonos board.Only du kaiščiai (RB0, RB1) suteikti iš put.I negavau bet iš RB2, RB3 signalus.
kodavimas
LIST p = 16F84; PIC16F844 yra tikslinė procesorius
# include "P16F84.INC"; Įtraukti failo antraštės
CBLOCK 0x10; Laikinasis saugojimas
Poz
DC1
DC2
ENDC
LIST p = 16F84; PIC16F844 yra tikslinė procesorius
# include "P16F84.INC"; Įtraukti failo antraštės
CBLOCK 0x10; Laikinasis saugojimas
ENDC
ORG 0
entrypoint goto pradžia
ORG 4
intvector goto intvector
pradžia
clrw; nulis.
movwf PORTB; Užtikrinti PORTB yra nulinis, kol mes jį įtraukti.
BSF STATUSAS, RP0; Pasirinkite 1 bankas
movlw 0xF0, kaip Rezultatų 0-3 Nustatyti uosto B bitų
movwf TRISB; Nustatyti TRISB užsiregistruoti.
bcf STATUS, RP0; Pasirinkite Banko 0
movlw 3; initialize variklio pozicija
movwf Poz
movwf PORTB
skambinti nedelsiant
clrf PORTB; Motor nuvyti
Sugrąžinimas
PUSH BTFSC PORTA, 0
KVIETIMAS STOP
BTFSC Porta, 1
KVIETIMAS stepcw
KVIETIMAS stepccw
RETURN
; Pasukti pagal laikrodžio rodyklę vieną žingsnį
stepcw
bcf STATUS, C; Išvalyti vykdyti vėliavos
btfsc POS, 3; Nustatyti vykdyti, jei tai nustatytas bit
BSF STATUSAS, C
rlf POS, W; įlaipinti ir pasukti varikliui dabartinė padėtis
andlw 0x0F; kaukė mažesnės kandinėti
movwf Poz
movwf PORTB; Drive rezultatai
skambinti delsimo; Palaukite
clrf PORTB
skambinti nedelsiant
KVIETIMAS delsimas
; Išvalyti produkcija
KVIETIMAS PUSH
atgal
STOP CLRF PORTB
GOTO PUSH; Sukti vienas žingsnis prieš laikrodžio rodyklę
stepccw
bcf STATUS, C; Išvalyti vykdyti vėliavos
btfsc POS, 0
BSF POS, 4
rrf POS, W; įlaipinti ir pasukti varikliui dabartinė padėtis
andlw 0x0F; kaukė mažesnės kandinėti
movwf Poz
movwf PORTB; Drive rezultatai
skambinti delsimo; Palaukite
clrf PORTB; Išvalyti produkcija
skambinti nedelsiant
KVIETIMAS delsimas
Goto PUSH
; Ši procedūra įgyvendinama tarp veiksmų nedelsiant,
Ir taip kontroliuoja variklio greičio.
delsimas movlw 18; Išorinė kilpa iteracijos grafo
movwf DC1
dl1 clrf DC2; initialize vidinis kilpos
dl2 NOP
NOP
decfsz DC2, F
Goto dl2
decfsz DC1, F
Goto dl1
atgal
PABAIGAPlc any one help me soon..........