Please help me .....

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..........
 
PIC negalima vairuoti transporto Stepper tiesiogiai, jums reikia kaip ULN2803 vairuotojas.
Paskelbkite savo schematiškai.

 
Taip, thats teisinga.
Aš ULN2003A IC.
Mano Prob yra "PIC nepateikė jokių iš RB1, RB2 produkcija.
Tik RB0 ir RB1 duoda rezultatus.
Kas iš kodavimo .. klaidą
Bet tai darbo proberly į PROTEUS simuliatorius.
Ačiū

Linkėjimai
Thaya

 
Jūsų kodas neturi config kriterijus.Be Proteus modeliavimas Pavyzdžiui, jūs galite nurodyti, config žodis yra nustatyta su WDT yra išjungtas, LP OSC ir PWRTE įjungtas (ne pagal nutylėjimą).Jei Watchdog yra apie pamatysite iš naujo per programos vykdymą, kurios sukels Funnies.

Tačiau nėra jokios priežasties, kodėl neturėtų galėti vairuoti PORTB <2:3>, jei turite dud TIFF.Ar jūs * tikrai * tai, kas vyksta?

Iain.

 
Be to, nėra tokio dalyko kaip 16F844, ir kodėl jūs nurodote 16F84, bet komentarus 16F844?

Kas yra tikslinė lustą?

 
Taip, tai spausdinimo klaida.
Mano tikslas procesorius (PIC) 16F84A.

 
jūsų kodas yra valgykla ...ir nepamirškite aiškiai de WDTEN

į pradžią rutine grįšite !!!!!Kas kad?ir stepcw & stepccw pabaigos skirtingas ....Manau, kad jūs naudojate RA0 PIN kodą, kad nustatyti, ar jis bus laikrodžio Išminčius arba atsakomąsias clock_wise ...taip stepcw & stepccw turėtų baigtis pradziu stumti

Manau, kad tai turėtų būti

 

Welcome to EDABoard.com

Sponsor

Back
Top