Hello Charles
Thanks for a fast and accurate respond.
Yes, I realized what this particular configuration have been designed for
very specific task. I just thought what I can still use PWMGEN in existing
configuration, just redirecting it to GPIO pin.
I have a very basic idea of VHDL and even I would like to learn it so I can
write custom firmwares, if you can kindly generate one just for now it
would be perfect.
As well if you have any links/references on how to do it I would like to
try and learn how to do it myself.
Standard 7i76 PIN Layout with some changes would do, something like this:
IOPortTag & x"00" & StepGenTag & StepGenDirPin, -- I/O 00 GPIO_0 16 PIN 1
IOPortTag & x"00" & StepGenTag & StepGenStepPin, -- I/O 01 GPIO_0 17 PIN 14
IOPortTag & x"01" & StepGenTag & StepGenDirPin, -- I/O 02 GPIO_0 14 PIN 2
IOPortTag & x"01" & StepGenTag & StepGenStepPin, -- I/O 03 GPIO_0 15 PIN 15
IOPortTag & x"02" & StepGenTag & StepGenDirPin, -- I/O 04 GPIO_0 12 PIN 3
IOPortTag & x"02" & StepGenTag & StepGenStepPin, -- I/O 05 GPIO_0 13 PIN 16
IOPortTag & x"00" & PWMTag & PWMAOutPin, -- I/O 06 GPIO_0 10 PIN 4
IOPortTag & & x"00" & NullTag & NullPin, -- I/O 07 GPIO_0 11 PIN 17
IOPortTag & x"00" & NullTag & NullPin, -- I/O 08 GPIO_0 08 PIN 5
IOPortTag & x"00" & NullTag & NullPin, -- I/O 09 GPIO_0 09 PIN 6
IOPortTag & x"00" & NullTag & NullPin, -- I/O 10 GPIO_0 06 PIN 7
IOPortTag & x"00" & NullTag & NullPin, -- I/O 11 GPIO_0 07 PIN 8
IOPortTag & x"00" & NullTag & NullPin, -- I/O 12 GPIO_0 04 PIN 9
IOPortTag & x"00" & NullTag & NullPin, -- I/O 13 GPIO_0 05 PIN 10
IOPortTag & x"00" & QCountTag & x"03", -- I/O 14 GPIO_0 02 PIN 11
IOPortTag & x"00" & QCountTag & x"02", -- I/O 15 GPIO_0 03 PIN 12
IOPortTag & x"00" & QCountTag & x"01", -- I/O 16 GPIO_0 00 PIN 13
IOPortTag & x"03" & StepGenTag & StepGenDirPin, -- I/O 00 GPIO_0 16 PIN 1
IOPortTag & x"03" & StepGenTag & StepGenStepPin, -- I/O 01 GPIO_0 17 PIN 14
IOPortTag & x"04" & StepGenTag & StepGenDirPin, -- I/O 02 GPIO_0 14 PIN 2
IOPortTag & x"04" & StepGenTag & StepGenStepPin, -- I/O 03 GPIO_0 15 PIN 15
IOPortTag & x"05" & StepGenTag & StepGenDirPin, -- I/O 04 GPIO_0 12 PIN 3
IOPortTag & x"05" & StepGenTag & StepGenStepPin, -- I/O 05 GPIO_0 13 PIN 16
IOPortTag & x"01" & PWMTag & PWMAOutPin, -- I/O 06 GPIO_0 10 PIN 4
IOPortTag & x"00" & NullTag & NullPin, -- I/O 07 GPIO_0 11 PIN 17
IOPortTag & x"00" & NullTag & NullPin, -- I/O 08 GPIO_0 08 PIN 5
IOPortTag & x"00" & NullTag & NullPin, -- I/O 09 GPIO_0 09 PIN 6
IOPortTag & x"00" & NullTag & NullPin, -- I/O 10 GPIO_0 06 PIN 7
IOPortTag & x"00" & NullTag & NullPin, -- I/O 11 GPIO_0 07 PIN 8
IOPortTag & x"00" & NullTag & NullPin, -- I/O 12 GPIO_0 04 PIN 9
IOPortTag & x"00" & NullTag & NullPin, -- I/O 13 GPIO_0 05 PIN 10
IOPortTag & x"01" & QCountTag & x"03", -- I/O 14 GPIO_0 02 PIN 11
IOPortTag & x"01" & QCountTag & x"02", -- I/O 15 GPIO_0 03 PIN 12
IOPortTag & x"01" & QCountTag & x"01", -- I/O 16 GPIO_0 00 PIN 13
IOPortTag & x"06" & StepGenTag & StepGenDirPin, -- I/O 00 GPIO_0 16 PIN 1
IOPortTag & x"06" & StepGenTag & StepGenStepPin, -- I/O 01 GPIO_0 17 PIN 14
IOPortTag & x"07" & StepGenTag & StepGenDirPin, -- I/O 02 GPIO_0 14 PIN 2
IOPortTag & x"07" & StepGenTag & StepGenStepPin, -- I/O 03 GPIO_0 15 PIN 15
IOPortTag & x"08" & StepGenTag & StepGenDirPin, -- I/O 04 GPIO_0 12 PIN 3
IOPortTag & x"08" & StepGenTag & StepGenStepPin, -- I/O 05 GPIO_0 13 PIN 16
IOPortTag & x"02" & PWMTag & PWMAOutPin, -- I/O 06 GPIO_0 10 PIN 4
IOPortTag & & x"00" & NullTag & NullPin, -- I/O 07 GPIO_0 11 PIN 17
IOPortTag & x"00" & NullTag & NullPin, -- I/O 08 GPIO_0 08 PIN 5
IOPortTag & x"00" & NullTag & NullPin, -- I/O 09 GPIO_0 09 PIN 6
IOPortTag & x"00" & NullTag & NullPin, -- I/O 10 GPIO_0 06 PIN 7
IOPortTag & x"00" & NullTag & NullPin, -- I/O 11 GPIO_0 07 PIN 8
IOPortTag & x"00" & NullTag & NullPin, -- I/O 12 GPIO_0 04 PIN 9
IOPortTag & x"00" & NullTag & NullPin, -- I/O 13 GPIO_0 05 PIN 10
IOPortTag & x"02" & QCountTag & x"03", -- I/O 14 GPIO_0 02 PIN 11
IOPortTag & x"02" & QCountTag & x"02", -- I/O 15 GPIO_0 03 PIN 12
IOPortTag & x"02" & QCountTag & x"01", -- I/O 16 GPIO_0 00 PIN 13
IOPortTag & x"09" & StepGenTag & StepGenDirPin, -- I/O 00 GPIO_0 16 PIN 1
IOPortTag & x"09" & StepGenTag & StepGenStepPin, -- I/O 01 GPIO_0 17 PIN 14
IOPortTag & x"10" & StepGenTag & StepGenDirPin, -- I/O 02 GPIO_0 14 PIN 2
IOPortTag & x"10" & StepGenTag & StepGenStepPin, -- I/O 03 GPIO_0 15 PIN 15
IOPortTag & x"11" & StepGenTag & StepGenDirPin, -- I/O 04 GPIO_0 12 PIN 3
IOPortTag & x"11" & StepGenTag & StepGenStepPin, -- I/O 05 GPIO_0 13 PIN 16
IOPortTag & x"03" & PWMTag & PWMAOutPin, -- I/O 06 GPIO_0 10 PIN 4
IOPortTag & & x"00" & NullTag & NullPin, -- I/O 07 GPIO_0 11 PIN 17
IOPortTag & x"00" & NullTag & NullPin, -- I/O 08 GPIO_0 08 PIN 5
IOPortTag & x"00" & NullTag & NullPin, -- I/O 09 GPIO_0 09 PIN 6
IOPortTag & x"00" & NullTag & NullPin, -- I/O 10 GPIO_0 06 PIN 7
IOPortTag & x"00" & NullTag & NullPin, -- I/O 11 GPIO_0 07 PIN 8
IOPortTag & x"00" & NullTag & NullPin, -- I/O 12 GPIO_0 04 PIN 9
IOPortTag & x"00" & NullTag & NullPin, -- I/O 13 GPIO_0 05 PIN 10
IOPortTag & x"03" & QCountTag & x"03", -- I/O 14 GPIO_0 02 PIN 11
IOPortTag & x"03" & QCountTag & x"02", -- I/O 15 GPIO_0 03 PIN 12
IOPortTag & x"03" & QCountTag & x"01", -- I/O 16 GPIO_0 00 PIN 13
Thanks a lot,
Best regards,
Alexey
On Wednesday, 10 May 2017 13:13:43 UTC-7, Charles Steinkuehler wrote:
>
> On 5/10/2017 11:17 AM, Alexey Volkov wrote:
> > As well, I would need a 2-nd encoder for MPG, this is the reason I have
> been
> > using 4x7i76. Any another configuration would do the task as well where
> I can
> > have hardware PWM generators?
> > Needed: 2-3 steppers, 2 encoders (spindle and MPG), 1 PWM, 10-12 GPIO's.
> >
> > Best regards,
> > Alexey
> >
> > On Wednesday, 10 May 2017 09:03:41 UTC-7, Alexey Volkov wrote:
> >
> > Hello
> >
> > I am using DE0-Nano-SoC with DB25 board, with mesa SOCFPGA firmware
> > 7i76_7i76_7i76_7i76.
> > I do not have mesa 7i76 boards and connecting speppers, spindle
> control and
> > encoders directly to the DB25 adapter.
> > I successfully set up and run 3 stepper generators, 1 encoder on P2
> of the
> > DB25. Works very well, I was able to run STEP/DIR up to 500kHz rate.
> > I also tried to add PWN generators, declaring them same way as for
> steppers:
> > "pwmgens=1", it goes thru, but I do not see them in HAL and if I
> try to
> > call for the pwm generator machinekit complains what the PIN does
> not exist.
> > Just wondering: Was PWMGEN implemented at all in SOCFPGA and if it
> was how
> > to use one.
>
> Yes, PWMGEN is in the SOCFPGA firmware, but there are none enabled in
> the configuration you're using.
>
> > Do I have to use custom build firmware to be able to use "hardware"
> PWM
> > generators?
>
> Yes, you are going to need a new FPGA configuration file with the
> features you want enabled. Do you have a pinout you would like to use?
>
> I gave a presentation on customizing the FPGA configuration at the
> recent meetup, but unless you're familiar with VHDL and compiling FPGA
> firmware (or want to learn) it's probably easier all around if I make
> a new PIN file for you.
>
> > I was able to use software PWMGEN, but it is working very slow
> (~0.5-1kHz).
>
> Software PWMGEN is useful for things like heaters, but not for
> anything fast. However you could probably use a software encoder
> component for your MPG, but if you've got the FPGA you might as well
> use it! :)
>
> --
> Charles Steinkuehler
> [email protected] <javascript:>
>
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github:
https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups
"Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.