EmbeddedRelated.com
Forums

Simultaneous use of SSP and SPI ports on LPC1700

Started by ksdoubleshooter May 4, 2012
Olivier,
It might be possible to use both simultaneously - please see previous
message in this tread :
http://tech.groups.yahoo.com/group/lpc2000/message/57190
.
I only want a confirmation if it really works that way .
Maybe nxp can pitch in with their views.

Thanks

Rakesh
--- In l..., Olivier Gautherot wrote:
>
> Rakesh,
>
> from what the manual says, you can use SSP0 and SPI separately but not
> simultaneously.
>
> Hope it helps
> --
> Olivier Gautherot
> olivier@...
> www.gautherot.net
> http://www.linkedin.com/in/ogautherot
> On Fri, Feb 8, 2013 at 10:09 AM, rm_lucknow wrote:
>
> > **
> >
> >
> >
> >
> > Jeff,
> > Can you confirm that there are no gotchas for 100 pin devices while
using
> > SSP0 and SPI both simultaneously.
> >
> > Thanks
> >
> > Rakesh
> >
> > --- In l..., "ksdoubleshooter" wrote:
> > >
> > >
> > >
> > > Another confirmation from NXP that all SSP/SPI ports can be used
on
> > 80-pin devices if the conflict for P0.16 is resolved by not using
the SSEL
> > function on either SSP0 or SPI.
> > >
> > > Jeff
> > >
> > > --- In l..., "ksdoubleshooter" wrote:
> > > >
> > > >
> > > >
> > > > Just received confirmation from NXP app's that the user manual
> > notation does not apply to 100-pin parts. The stated reason is that
on
> > 80-pin parts, SSEL0 is only available on p0.16, which is the only
pin
> > available for SSEL on the SPI.
> > > >
> > > > I never use SSEL anyway for master use. I prefer using I/O under
> > program control to generate SSP/SPI chip selects. So apparently, all
three
> > could be used on 80-pin parts if the SSEL pins are not used.
> > > >
> > > > Jeff
> > > >
> > > > --- In l..., Olivier Gautherot wrote:
> > > > >
> > > > > Jeff, read carefully the user's manual: it states that the 2
> > interfaces
> > > > > cannot be used simultaneously.
> > > > >
> > > > > If you experiment with this, check the 2 cases:
> > > > > - sequential use (one port and then the other)
> > > > > - concurrent use (sending different data on the ports)
> > > > >
> > > > > I'm sure others will be interested in the results (I raised
the
> > question
> > > > > several months back and have been told to avoid the case...)
> > > > >
> > > > > Hope it helps
> > > > > Olivier
> > > > >
> > > > >
> > > > > alexander_ribero wrote:
> > > > > >
> > > > > > Hi:
> > > > > >
> > > > > > In the LPC2300, the SPI and SSP0 share the same interrupt
vector.
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > Alex
> > > > > >
> > > > > > --- In l... ,
> > > > > > "ksdoubleshooter" wrote:
> > > > > > >
> > > > > > > I have a project using an LPC1768. This project has a
> > requirement
> > > > > > for 7 UART's, so I used three UART's on the LPC1768 and
added two
> > > > > > SC16IS752's, which are dual UART's with selectable I2C or
SPI
> > > > > > interface. I allocated SSP0 to one of the DUART's and SSP1
to the
> > > > > > other. Each DUART has an IRQ line and I ran these back to
separate
> > > > > > EINT pins. Running the DUART's on separate SSP ports with
separate
> > > > > > interrupt pins will allow straight forward interrupt
handling for
> > each
> > > > > > DUART.
> > > > > > >
> > > > > > > In addition, there is a display, with serial interface and
a
> > serial
> > > > > > flash memory part. I tied both of these parts to the SPI
port.
> > Neither
> > > > > > the display nor the serial flash will be accessed during
> > interrupts.
> > > > > > >
> > > > > > > While writing the low level driver modules for the SSP and
SPI
> > > > > > ports, I noticed this note in the rev 2 LPC17xx user manual:
> > > > > > >
> > > > > > > Remark: SSP0 is intended to be used as an alternative for
the
> > SPI
> > > > > > interface, which is included as a legacy peripheral. Only
one of
> > these
> > > > > > peripherals can be used at the any one time.
> > > > > > >
> > > > > > > This is odd since both SSP ports and the SPI port can get
their
> > I/O
> > > > > > lines out at the same time and all have separate interrupt
inputs
> > to
> > > > > > the NVIC, etc. I referred back to the LPC23xx user manual
and
> > there is
> > > > > > no limitation noted on using these ports at the same time.
> > > > > > >
> > > > > > > I have an LPCXpresso 1769 board and since I have the
drivers
> > > > > > written, I am going to test this out on actual hardware.
However,
> > I
> > > > > > was wondering if anyone had any experience utilizing both
SSP
> > ports
> > > > > > and the SPI port on an LPC1700 device? Did it work? Since it
> > > > > > supposedly works on LPC2300 devices, what is the problem
with it
> > on
> > > > > > LPC1700 devices?
> > > > > > >
> > > > > > > Lastly, I realize that there are options available to me
to
> > resolve
> > > > > > this issue, but that is another discussion.
> > > > > > >
> > > > > > > Jeff
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > > > --
> > > > >
> > > > > Olivier Gautherot
> > > > > *Email:* olivier@
> > > > > *Cel:* +56 98 730 9361
> > > > > *Web:* www.gautherot.net
> > > > > *LinkedIn:* http://www.linkedin.com/in/ogautherot
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > >
> >
> >
> >
>
>



An Engineer's Guide to the LPC2100 Series

Yes, you can use SSP0 and SPI ports simultaneously on the 100 pin LPC1700 parts. This also works with the 80 pin parts if you resolve the conflict with SSEL pin. I never use the SSEL function on either SSP or SPI ports. I use GPIO pins for the chip select functions.

I have a project running with both SSP and the SPI ports running fine.

Jeff

--- In l..., "rm_lucknow" wrote:
>
> Olivier,
> It might be possible to use both simultaneously - please see previous
> message in this tread :
> http://tech.groups.yahoo.com/group/lpc2000/message/57190
> .
> I only want a confirmation if it really works that way .
> Maybe nxp can pitch in with their views.
>
> Thanks
>
> Rakesh
> --- In l..., Olivier Gautherot wrote:
> >
> > Rakesh,
> >
> > from what the manual says, you can use SSP0 and SPI separately but not
> > simultaneously.
> >
> > Hope it helps
> > --
> > Olivier Gautherot
> > olivier@
> > www.gautherot.net
> > http://www.linkedin.com/in/ogautherot
> >
> >
> > On Fri, Feb 8, 2013 at 10:09 AM, rm_lucknow wrote:
> >
> > > **
> > >
> > >
> > >
> > >
> > > Jeff,
> > > Can you confirm that there are no gotchas for 100 pin devices while
> using
> > > SSP0 and SPI both simultaneously.
> > >
> > > Thanks
> > >
> > > Rakesh
> > >
> > > --- In l..., "ksdoubleshooter" wrote:
> > > >
> > > >
> > > >
> > > > Another confirmation from NXP that all SSP/SPI ports can be used
> on
> > > 80-pin devices if the conflict for P0.16 is resolved by not using
> the SSEL
> > > function on either SSP0 or SPI.
> > > >
> > > > Jeff
> > > >
> > > > --- In l..., "ksdoubleshooter" wrote:
> > > > >
> > > > >
> > > > >
> > > > > Just received confirmation from NXP app's that the user manual
> > > notation does not apply to 100-pin parts. The stated reason is that
> on
> > > 80-pin parts, SSEL0 is only available on p0.16, which is the only
> pin
> > > available for SSEL on the SPI.
> > > > >
> > > > > I never use SSEL anyway for master use. I prefer using I/O under
> > > program control to generate SSP/SPI chip selects. So apparently, all
> three
> > > could be used on 80-pin parts if the SSEL pins are not used.
> > > > >
> > > > > Jeff
> > > > >
> > > > > --- In l..., Olivier Gautherot wrote:
> > > > > >
> > > > > > Jeff, read carefully the user's manual: it states that the 2
> > > interfaces
> > > > > > cannot be used simultaneously.
> > > > > >
> > > > > > If you experiment with this, check the 2 cases:
> > > > > > - sequential use (one port and then the other)
> > > > > > - concurrent use (sending different data on the ports)
> > > > > >
> > > > > > I'm sure others will be interested in the results (I raised
> the
> > > question
> > > > > > several months back and have been told to avoid the case...)
> > > > > >
> > > > > > Hope it helps
> > > > > > Olivier
> > > > > >
> > > > > >
> > > > > > alexander_ribero wrote:
> > > > > > >
> > > > > > > Hi:
> > > > > > >
> > > > > > > In the LPC2300, the SPI and SSP0 share the same interrupt
> vector.
> > > > > > >
> > > > > > > Regards,
> > > > > > >
> > > > > > > Alex
> > > > > > >
> > > > > > > --- In l... ,
> > > > > > > "ksdoubleshooter" wrote:
> > > > > > > >
> > > > > > > > I have a project using an LPC1768. This project has a
> > > requirement
> > > > > > > for 7 UART's, so I used three UART's on the LPC1768 and
> added two
> > > > > > > SC16IS752's, which are dual UART's with selectable I2C or
> SPI
> > > > > > > interface. I allocated SSP0 to one of the DUART's and SSP1
> to the
> > > > > > > other. Each DUART has an IRQ line and I ran these back to
> separate
> > > > > > > EINT pins. Running the DUART's on separate SSP ports with
> separate
> > > > > > > interrupt pins will allow straight forward interrupt
> handling for
> > > each
> > > > > > > DUART.
> > > > > > > >
> > > > > > > > In addition, there is a display, with serial interface and
> a
> > > serial
> > > > > > > flash memory part. I tied both of these parts to the SPI
> port.
> > > Neither
> > > > > > > the display nor the serial flash will be accessed during
> > > interrupts.
> > > > > > > >
> > > > > > > > While writing the low level driver modules for the SSP and
> SPI
> > > > > > > ports, I noticed this note in the rev 2 LPC17xx user manual:
> > > > > > > >
> > > > > > > > Remark: SSP0 is intended to be used as an alternative for
> the
> > > SPI
> > > > > > > interface, which is included as a legacy peripheral. Only
> one of
> > > these
> > > > > > > peripherals can be used at the any one time.
> > > > > > > >
> > > > > > > > This is odd since both SSP ports and the SPI port can get
> their
> > > I/O
> > > > > > > lines out at the same time and all have separate interrupt
> inputs
> > > to
> > > > > > > the NVIC, etc. I referred back to the LPC23xx user manual
> and
> > > there is
> > > > > > > no limitation noted on using these ports at the same time.
> > > > > > > >
> > > > > > > > I have an LPCXpresso 1769 board and since I have the
> drivers
> > > > > > > written, I am going to test this out on actual hardware.
> However,
> > > I
> > > > > > > was wondering if anyone had any experience utilizing both
> SSP
> > > ports
> > > > > > > and the SPI port on an LPC1700 device? Did it work? Since it
> > > > > > > supposedly works on LPC2300 devices, what is the problem
> with it
> > > on
> > > > > > > LPC1700 devices?
> > > > > > > >
> > > > > > > > Lastly, I realize that there are options available to me
> to
> > > resolve
> > > > > > > this issue, but that is another discussion.
> > > > > > > >
> > > > > > > > Jeff
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > >
> > > > > > Olivier Gautherot
> > > > > > *Email:* olivier@
> > > > > > *Cel:* +56 98 730 9361
> > > > > > *Web:* www.gautherot.net
> > > > > > *LinkedIn:* http://www.linkedin.com/in/ogautherot
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> > >
> > >
> >
> >
> >
> >
>

Thanks Jeff.

Rakesh

--- In l..., "ksdoubleshooter" wrote:
>
> Yes, you can use SSP0 and SPI ports simultaneously on the 100 pin LPC1700 parts. This also works with the 80 pin parts if you resolve the conflict with SSEL pin. I never use the SSEL function on either SSP or SPI ports. I use GPIO pins for the chip select functions.
>
> I have a project running with both SSP and the SPI ports running fine.
>
> Jeff
>
> --- In l..., "rm_lucknow" wrote:
> >
> > Olivier,
> > It might be possible to use both simultaneously - please see previous
> > message in this tread :
> > http://tech.groups.yahoo.com/group/lpc2000/message/57190
> > .
> > I only want a confirmation if it really works that way .
> > Maybe nxp can pitch in with their views.
> >
> > Thanks
> >
> > Rakesh
> > --- In l..., Olivier Gautherot wrote:
> > >
> > > Rakesh,
> > >
> > > from what the manual says, you can use SSP0 and SPI separately but not
> > > simultaneously.
> > >
> > > Hope it helps
> > > --
> > > Olivier Gautherot
> > > olivier@
> > > www.gautherot.net
> > > http://www.linkedin.com/in/ogautherot
> > >
> > >
> > > On Fri, Feb 8, 2013 at 10:09 AM, rm_lucknow wrote:
> > >
> > > > **
> > > >
> > > >
> > > >
> > > >
> > > > Jeff,
> > > > Can you confirm that there are no gotchas for 100 pin devices while
> > using
> > > > SSP0 and SPI both simultaneously.
> > > >
> > > > Thanks
> > > >
> > > > Rakesh
> > > >
> > > > --- In l..., "ksdoubleshooter" wrote:
> > > > >
> > > > >
> > > > >
> > > > > Another confirmation from NXP that all SSP/SPI ports can be used
> > on
> > > > 80-pin devices if the conflict for P0.16 is resolved by not using
> > the SSEL
> > > > function on either SSP0 or SPI.
> > > > >
> > > > > Jeff
> > > > >
> > > > > --- In l..., "ksdoubleshooter" wrote:
> > > > > >
> > > > > >
> > > > > >
> > > > > > Just received confirmation from NXP app's that the user manual
> > > > notation does not apply to 100-pin parts. The stated reason is that
> > on
> > > > 80-pin parts, SSEL0 is only available on p0.16, which is the only
> > pin
> > > > available for SSEL on the SPI.
> > > > > >
> > > > > > I never use SSEL anyway for master use. I prefer using I/O under
> > > > program control to generate SSP/SPI chip selects. So apparently, all
> > three
> > > > could be used on 80-pin parts if the SSEL pins are not used.
> > > > > >
> > > > > > Jeff
> > > > > >
> > > > > > --- In l..., Olivier Gautherot wrote:
> > > > > > >
> > > > > > > Jeff, read carefully the user's manual: it states that the 2
> > > > interfaces
> > > > > > > cannot be used simultaneously.
> > > > > > >
> > > > > > > If you experiment with this, check the 2 cases:
> > > > > > > - sequential use (one port and then the other)
> > > > > > > - concurrent use (sending different data on the ports)
> > > > > > >
> > > > > > > I'm sure others will be interested in the results (I raised
> > the
> > > > question
> > > > > > > several months back and have been told to avoid the case...)
> > > > > > >
> > > > > > > Hope it helps
> > > > > > > Olivier
> > > > > > >
> > > > > > >
> > > > > > > alexander_ribero wrote:
> > > > > > > >
> > > > > > > > Hi:
> > > > > > > >
> > > > > > > > In the LPC2300, the SPI and SSP0 share the same interrupt
> > vector.
> > > > > > > >
> > > > > > > > Regards,
> > > > > > > >
> > > > > > > > Alex
> > > > > > > >
> > > > > > > > --- In l... ,
> > > > > > > > "ksdoubleshooter" wrote:
> > > > > > > > >
> > > > > > > > > I have a project using an LPC1768. This project has a
> > > > requirement
> > > > > > > > for 7 UART's, so I used three UART's on the LPC1768 and
> > added two
> > > > > > > > SC16IS752's, which are dual UART's with selectable I2C or
> > SPI
> > > > > > > > interface. I allocated SSP0 to one of the DUART's and SSP1
> > to the
> > > > > > > > other. Each DUART has an IRQ line and I ran these back to
> > separate
> > > > > > > > EINT pins. Running the DUART's on separate SSP ports with
> > separate
> > > > > > > > interrupt pins will allow straight forward interrupt
> > handling for
> > > > each
> > > > > > > > DUART.
> > > > > > > > >
> > > > > > > > > In addition, there is a display, with serial interface and
> > a
> > > > serial
> > > > > > > > flash memory part. I tied both of these parts to the SPI
> > port.
> > > > Neither
> > > > > > > > the display nor the serial flash will be accessed during
> > > > interrupts.
> > > > > > > > >
> > > > > > > > > While writing the low level driver modules for the SSP and
> > SPI
> > > > > > > > ports, I noticed this note in the rev 2 LPC17xx user manual:
> > > > > > > > >
> > > > > > > > > Remark: SSP0 is intended to be used as an alternative for
> > the
> > > > SPI
> > > > > > > > interface, which is included as a legacy peripheral. Only
> > one of
> > > > these
> > > > > > > > peripherals can be used at the any one time.
> > > > > > > > >
> > > > > > > > > This is odd since both SSP ports and the SPI port can get
> > their
> > > > I/O
> > > > > > > > lines out at the same time and all have separate interrupt
> > inputs
> > > > to
> > > > > > > > the NVIC, etc. I referred back to the LPC23xx user manual
> > and
> > > > there is
> > > > > > > > no limitation noted on using these ports at the same time.
> > > > > > > > >
> > > > > > > > > I have an LPCXpresso 1769 board and since I have the
> > drivers
> > > > > > > > written, I am going to test this out on actual hardware.
> > However,
> > > > I
> > > > > > > > was wondering if anyone had any experience utilizing both
> > SSP
> > > > ports
> > > > > > > > and the SPI port on an LPC1700 device? Did it work? Since it
> > > > > > > > supposedly works on LPC2300 devices, what is the problem
> > with it
> > > > on
> > > > > > > > LPC1700 devices?
> > > > > > > > >
> > > > > > > > > Lastly, I realize that there are options available to me
> > to
> > > > resolve
> > > > > > > > this issue, but that is another discussion.
> > > > > > > > >
> > > > > > > > > Jeff
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > >
> > > > > > > Olivier Gautherot
> > > > > > > *Email:* olivier@
> > > > > > > *Cel:* +56 98 730 9361
> > > > > > > *Web:* www.gautherot.net
> > > > > > > *LinkedIn:* http://www.linkedin.com/in/ogautherot
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> > >
> > >
> >
> >
> >
> >
>