Forums

BlackFin BF531 SPORT as SPI

Started by Vladimir Vassilevsky October 7, 2006
Hello All,

There is a necessity to connect the 16 bit SPI DAC to the SPORT on the 
ADSP BF531 (silicon rev. 0.3). I am initializing the SPORT in the 
prescribed manner:

TCLKDIV = 2
TFSDIV = 31 // just in case
TCR2 = 0x000F; // word length - 1
TCR1 = 0x7603; // alt. framing mode

The SPORT is supposed to work like the SPI: a write to the TX register 
should generate the SPI cycle. However nothing happens. The clocks are 
generated at all time (like it supposed to be), the TFS and data are 
staying inactive. The other modes of the SPORT seem to work right.

Am I doing something wrong? Or is it another bug in the silicon?

Vladimir Vassilevsky

DSP and Mixed Signal Design Consultant

http://www.abvolt.com
hi Vladimir

Contact - msn.cps@gmail.com for some interesting in DSP Professional.

Please contact.

MSCPS

Vladimir Vassilevsky wrote:
> Hello All, > > There is a necessity to connect the 16 bit SPI DAC to the SPORT on the > ADSP BF531 (silicon rev. 0.3). I am initializing the SPORT in the > prescribed manner: > > TCLKDIV = 2 > TFSDIV = 31 // just in case > TCR2 = 0x000F; // word length - 1 > TCR1 = 0x7603; // alt. framing mode > > The SPORT is supposed to work like the SPI: a write to the TX register > should generate the SPI cycle. However nothing happens. The clocks are > generated at all time (like it supposed to be), the TFS and data are > staying inactive. The other modes of the SPORT seem to work right. > > Am I doing something wrong? Or is it another bug in the silicon? > > Vladimir Vassilevsky > > DSP and Mixed Signal Design Consultant > > http://www.abvolt.com
Vladimir Vassilevsky wrote:
> Hello All, > > There is a necessity to connect the 16 bit SPI DAC to the SPORT on the > ADSP BF531 (silicon rev. 0.3). I am initializing the SPORT in the > prescribed manner: > > TCLKDIV = 2 > TFSDIV = 31 // just in case > TCR2 = 0x000F; // word length - 1 > TCR1 = 0x7603; // alt. framing mode > > The SPORT is supposed to work like the SPI: a write to the TX register > should generate the SPI cycle. However nothing happens. The clocks are > generated at all time (like it supposed to be), the TFS and data are > staying inactive. The other modes of the SPORT seem to work right. > > Am I doing something wrong? Or is it another bug in the silicon? > > Vladimir Vassilevsky > > DSP and Mixed Signal Design Consultant > > http://www.abvolt.com
Your register settings seem ok. When you're setting TCR1, you know you need to write the register twice, once with TSPEN 0, then the 2nd time with TSPEN set to 1, right? Otherwise the bits don't necessarily "take". TCR1 = 0x7602; TCR1 = 0x7603; // this turns it on -Dave -- David Ashley http://www.xdr.com/dash Embedded linux, device drivers, system architecture