Page 1 of 1

DSPI Module 3 for MOD54415

Posted: Wed Sep 17, 2014 6:32 am
by rlupish
I seem to be having trouble getting Chip Select to cooperate for DSPI Module 3 on my Dev-70CR dev't board. DSPI Module 1 works fine. Clock & Serial Data out on DSPI Module 3 also work fine. Just Chip Select (pin 23) being balky.

I'm using DSPIInit( 1, 192000, 8, 0x0E, 0x0F, 0, 0, TRUE, 0, 0); // Initializing DSPI Module 1
and DSPIInit( 3, 192000, 8, 0x0B, 0x0F, 0, 0, TRUE, 0, 0); // Initializing DSPI Module 3

Note that I did make the changes in dspi.cpp for the slew rate corrections for DSPI Module 3 noted in an earlier post.

Am I missing something? Has anyone run into a similar issue? I can always set the pin to GPIO, and force it to do what's needed in code (and have verified that this does what I want with a 'scope), but obviously would prefer to do things properly.

Thanks,

Ron

Re: DSPI Module 3 for MOD54415

Posted: Wed Sep 17, 2014 10:27 am
by rnixon
Have you looked at the dev-70 board schematic to verify nothing else is connected to those signals?

Re: DSPI Module 3 for MOD54415

Posted: Wed Sep 17, 2014 10:41 am
by dciliske
Not sure what's going on, but I just ran a test with your init args for module 3 on the latest version of the driver and it works. Uh... the new version just created that allows for mulitple configs for the same module (allowing sharing of the module between peripherals).

-Dan

Re: DSPI Module 3 for MOD54415

Posted: Wed Sep 17, 2014 5:13 pm
by pbreed
Did you set the pin function for that pin???

Re: DSPI Module 3 for MOD54415

Posted: Thu Sep 18, 2014 4:41 am
by rlupish
Of course :

J2[23].function( PINJ2_23_DSPI3_PCS0 );

But, of course, too - an easy thing to forget ;)

Re: DSPI Module 3 for MOD54415

Posted: Tue Nov 11, 2014 7:17 am
by rlupish
Dan - what was the new version of the dspi driver you referred to - I'm using version 2.6.7 of the NNDK - is there an update to that with a change in the driver?
Thanks,
Ron

Re: DSPI Module 3 for MOD54415

Posted: Tue Nov 11, 2014 8:40 am
by dciliske
The new version is 2.6.8; unfortunately, this also introduced the oh so slight issue that the existing DSPI* calls don't work, due to them always pointing to DSPI 0 (the internal objects were constructed for DSPI 0, see below). We're working on getting the next rev out soon, due to another issue with 2.6.8.

We'll have an updated DSPI2Serial example and documentation for the driver. Basically, it works by constructing objects which store the baudrate and chip select information. Then when you call Start on the object, it takes care of adjusting all the chip select assertions and speed issues.

-Dan