Hi everyone,
I have a pretty simple project at hand which uses a pic16f684 and L293D motor driver to run a 12v stepper motor. Everything worked fine, motor moved, etc. when the PIC talked to the motor driver via the circuit (jpeg attachment). I'm always using the internal clock so does RA5/OSC1/CLKIN have to be grounded?
I decided to change the output ports to RA0, 1, 2 and RC0 for easier wire routing. My new code (very similar to previous one) compiles but doesn't work. None of the Port A ports are outputting any voltage at all ( i checked manually with a voltmeter ). I think I'm not initializing TRISA properly or something because everything with PORT C pins works fine.
I have a pretty simple project at hand which uses a pic16f684 and L293D motor driver to run a 12v stepper motor. Everything worked fine, motor moved, etc. when the PIC talked to the motor driver via the circuit (jpeg attachment). I'm always using the internal clock so does RA5/OSC1/CLKIN have to be grounded?
I decided to change the output ports to RA0, 1, 2 and RC0 for easier wire routing. My new code (very similar to previous one) compiles but doesn't work. None of the Port A ports are outputting any voltage at all ( i checked manually with a voltmeter ). I think I'm not initializing TRISA properly or something because everything with PORT C pins works fine.
Code:
program Prog1
DIM x as byte
DIM y as byte
main:
ANSEL = 0
TRISC = $00
TRISA = $00
PORTA = $20 'Turns on a yellow led at RA5 quickly for initial testing
PORTC = 0
x = 0
y = 0
delay_ms(1) ' delay of 1s
PORTA = 0
while(1)
while (x < 15)
Gosub Forward
x = x + 1
delay_ms(2)
wend
PORTC = 0
PORTA = 0
delay_ms(500)
while (y < 15)
Gosub Reverse
y = y + 1
delay_ms(2)
wend
PORTC = 0
PORTA = 0
delay_ms(500)
x = 0
y = 0
wend
Forward:
PORTA = $05 'STEP 1
PORTC = $10
delay_ms(10)
PORTA = $06 'STEP 2
PORTC = $10
delay_ms(10)
PORTA = $02 'STEP 3
PORTC = $11
delay_ms(10)
PORTA = $01 'STEP 4
PORTC = $11
delay_ms(10)
return
Reverse:
PORTA = $01 'STEP 4
PORTC = $21
delay_ms(10)
PORTA = $02 'STEP 3
PORTC = $21
delay_ms(10)
PORTA = $06 'STEP 2
PORTC = $20
delay_ms(10)
PORTA = $05 'STEP 1
PORTC = $20
delay_ms(10)
return
end.