EmbeddedRelated.com
Forums

uC with independently assignable PWM channels?

Started by Chris Smith April 21, 2009
Hello all,

I wonder if any of you can help advise me or not?
I've inherited a partially designed system.
There is a need for three seperate PWM channels to drive three seperate 
stepper-motors.  However, the original designer opted to use the 8 bit 
PIC uC, which of course has a 'single' period register...

Can any one come up with a few suggestions for a uC that has three PWM 
channels, each with its own 'period register'?

Best regards

Chris.
On Tue, 21 Apr 2009 10:55:39 +0100, Chris Smith <csmith@procal.com>
wrote:

>I wonder if any of you can help advise me or not? >I've inherited a partially designed system. >There is a need for three seperate PWM channels to drive three seperate >stepper-motors. However, the original designer opted to use the 8 bit >PIC uC, which of course has a 'single' period register... > >Can any one come up with a few suggestions for a uC that has three PWM >channels, each with its own 'period register'?
You don't say how many bits in the period register you want, how many pins you want the micro limited to, or since this is a partially designed system whether or not compiler tools have already been bought and what they may be able to compile towards. But have you already looked at PIC parts such as the PIC18F8720? Jon
"Chris Smith" <csmith@procal.com> wrote in message
news:gsk57f$kq2$1@adenine.netfront.net...
> > I've inherited a partially designed system. > There is a need for three seperate PWM channels to drive three seperate > stepper-motors. However, the original designer opted to use the 8 bit PIC > uC, which of course has a 'single' period register... > > Can any one come up with a few suggestions for a uC that has three PWM > channels, each with its own 'period register'?
The NXP LPC2101 / LPC2102 / LPC2103 has four independent timers that each can control three PWM outputs, subject to pin multiplexing restrictions. Karl Olsen
On Apr 21, 9:55=A0pm, Chris Smith <csm...@procal.com> wrote:
> Hello all, > > I wonder if any of you can help advise me or not? > I've inherited a partially designed system. > There is a need for three seperate PWM channels to drive three seperate > stepper-motors. =A0However, the original designer opted to use the 8 bit > PIC uC, which of course has a 'single' period register... > > Can any one come up with a few suggestions for a uC that has three PWM > channels, each with its own 'period register'?
What frequency/time range do you need to cover ? Steppers tend to be slow devices, and you can manage a time-queue in SW, where you treat each edge as an event, and time between events, and queue which pin changes. There is a granularity limit with this approach, but it can drive to low frequencies. Many HW PWM's have a lower limit, so you'd need to flip to SW below that anyway... -jg
"Karl Olsen" <karl.olsen@removethis-mail.dk> wrote in message 
news:49eda8d5$0$90264$14726298@news.sunsite.dk...
> "Chris Smith" <csmith@procal.com> wrote in message > news:gsk57f$kq2$1@adenine.netfront.net... >> >> I've inherited a partially designed system. >> There is a need for three seperate PWM channels to drive three seperate >> stepper-motors. However, the original designer opted to use the 8 bit >> PIC >> uC, which of course has a 'single' period register... >> >> Can any one come up with a few suggestions for a uC that has three PWM >> channels, each with its own 'period register'? > > The NXP LPC2101 / LPC2102 / LPC2103 has four independent timers that each > can control three PWM outputs, subject to pin multiplexing restrictions. > > Karl Olsen
With the right Cypress PSoC (Programable System on a Chip) you can 1. Select as many PWM's as there is resources available 2. Assign in PIN to be a PWM output (execept Vcc and Ground etc) 3. These are multi configurable micro's with multi configurable digial and analog blocks. 4. Does take a while to get your head around the configurabable nature 5. Free software tools See here http://www.cypress.com/psoc2/?id=1353&source=header Regards Joe
Chris Smith wrote:
> Hello all, > > I wonder if any of you can help advise me or not? > I've inherited a partially designed system. > There is a need for three seperate PWM channels to drive three seperate > stepper-motors. However, the original designer opted to use the 8 bit > PIC uC, which of course has a 'single' period register... > > Can any one come up with a few suggestions for a uC that has three PWM > channels, each with its own 'period register'? > > Best regards > > Chris.
Which PIC was used ?? The PIC18F4431 has four stepper motor PWM channels. don

Chris Smith wrote:

> Hello all, > > I wonder if any of you can help advise me or not?
Sure not. Good advices are dozen per dime.
> I've inherited a partially designed system. > There is a need for three seperate PWM channels to drive three seperate > stepper-motors. However, the original designer opted to use the 8 bit > PIC uC, which of course has a 'single' period register... > > Can any one come up with a few suggestions for a uC that has three PWM > channels, each with its own 'period register'?
There are the numerous microcontrollers with 3+ independent PWM channels. Just about any family got that. However if you inherited a half done design, the simplest way could be simulating PWMs by bit banging. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Chris Smith <csmith@procal.com> writes:
> Can any one come up with a few suggestions for a uC that has three PWM > channels, each with its own 'period register'?
Many of the M16C and M32C have such a configuration. The M16C/29, for example, has five 16-bit PWM timers.