I have four leds on pins 6, 7, 8, 9 ( RB0 to RB3)
The sequence is
6 + 9
7 + 9
8 + 9
all off
tested with signal generator at very low frequency ( +- 1 Hz)
Is this right?
Paul
I have four leds on pins 6, 7, 8, 9 ( RB0 to RB3)
The sequence is
6 + 9
7 + 9
8 + 9
all off
tested with signal generator at very low frequency ( +- 1 Hz)
Is this right?
Paul
Hi Paul,
No, unfortunately, the code appears not to be fully operational.
Which one did you use for your latest test?
Please put 'Lini 01-628.hex' in the Micro.
This will produce the sequence you saw a long time ago, early in your experiments.
You'll see 2 Leds on, and 2 Leds off, then opposite, like before.
If you have a moment to spare, try the code I supplied last night, called 'Sstepper0-3.hex'.
This will produce a "1,2,3,4" "1,2,3,4".
Please try these, and let me know what you see.
Best wishes,
Steve.
No, because it goes On 3 times, and Off one time
!!! I use PIC16F628, not 628A !!!
Ohhh, I see.
I had thought that one of the pins was never going high.
Not enough coffee in my blood stream .
Can you read your chip - and post the HEX file that you get from it?
I would like to copy it into one of mine, to see if it does the same as yours.
I don't know if the '628 is really any different from the '628A, but this could be part of the problem
I will study the '628 and try to see if there something unusual about it.
Cheers,
Steve.
Hi Paul,
Here is the same code again, but with focus on the upper half of Port B.
This will drive pins: 10,11,12 and 13.
Please give this a try, as it works for my chips, so should be good for yours too .
Oops, just corrected these - the programmer configuration is correct
Cheers,
Steve.
here is .hex file I read from my programmed PIC16f628
It seems to me it cnczone does not like .hex, so change txt to hex
Hi Paul,
I just tried your copy of the HEX code. It works perfectly .
It activates pins 10,11,12,13 in a repeating and reversable sequence.
Just to confirm, you have tested the '4-7' and the '0-3' code?
Both failed?
To post the HEX codes, I add the ".TXT" extension. That allows CNCZONE to accept the attachments .
Cheers,
Steve.
Hi Steve, thank you for your response but your new program is out of my goal, because what i need is a half-step driver without many component like lini-stepper. Before this, i've built & use discrete full-step driver from pminmo.
So for conclusion, is your past version (16F628A, RB0-RB3 output) working (on half-step) ??
Hi Telyadi,
The code I have written is full step only, as my machine would not benefit from half stepping.
I tried the Linistepper code for its half stepping functions, but it doesn't seem to work. All it did was reduce the motor's speed by dividing the pulse rate.
I think this is due to the absense of the analogue microstepping attributes of the original Linistepper circuit.
That stated, half stepping can be done with this simlified design.
Full step goes like this for single coil drives, like the one I wrote:
1) 1000
2) 0100
3) 0010
4) 0001
Half step goes like this:
1) 1000
2) 1100
3) 0100
4) 0110
5) 0010
6) 0011
7) 0001
8) 1001
As you can see, it alternates between 'single' and 'double' coil drive states.
I developed this, about 20 years ago with discrete parts, and it worked very nicely. It gave me 400 steps, instead of 200.
When time permits, I could take a look at my code and see if I can fit a half stepping mode in there.
Best wishes,
Steve.
Hi Paul,
When I built my unit, it was intended to be full step only.
My machine is big and heavy, so fullstep is all it needs.
While these simpler versions are capable of half step, I don't think they can do higher resolution than that.
I am hoping that someone can devise some clever programming to improve upon what we already have. Perhaps it is possible to enhance the resolution of these?
Ideas anyone?
In your case, you are trying to use microstepping to resolve vibration problems with the motors.
Is there not a simpler way to achieve this, using a different mechanical interface between motor and machine?
Ideas are coming to mind for electronic solutions, but I need to think on it some.
Cheers,
Steve.
Just Uploaded this new hex File for 628, outputs on Pins
10,11,12,13 .
Simulated ok.
Please try
Instead of posting as a text file , just put it in a zip file.
Kym
Hi Kym,
Thank you for reviewing the code.
It works nicely on the PIC16F28A.
All 4 outputs are sequencing as they should be.
I just wonder, have you been able to get the finer resolution step modes working on your board?
When I select any of these, the sequence continues as before, but at a reduced pace.
Instead of updating, once per step pulse, it simply ignores a number of pulses, then proceeds to the next phase pair in the sequence.
The number of ignored pulses is directly related the resolution mode that is selected.
The same appears to be the case for the original Linistepper code which I am using on my machine.
I ain't complainin', just a wondrin' what our simplified versions of the Linistepper are capable of.
Best wishes,
Steve.
Steve
Glad to know that the latest hex file works on the 628A
as it is the same as the code for the 16F84A , with
the config bits set for 628.
Having said that it seems there was a slight bug in the
the first version posted.
As for the reduced pace , this happens to my design as well.
and is exactly what the linistepper does.
To over come this , the PC software needs to be set to the
correct steps for the mode selected.
So if mode setting is for 400 steps , then the PC software setting
is 2 times what it is for 200 steps etc.
The PC software then sends twice the amount of steps to the drive.
Kym
ciccio
Have you tried the new code ( Stepit 3.zip).
or have you managed to get it working.?
Kym
ok sorry for bringing up this old post.
but can some one help me here.
from all of these posts which version of the HEX and BOARD(circuit) is working.
i know this is a modified version of linistepper.i just want to try.
student1616
Stepit 3.zip Has the Working HEX files for the PIC16F628A and PIC16F84A.
The Eagle board or circuit is in the first post on page one of this thread in Stepit.zip
Kym