ts-7000
[Top] [All Lists]

[ts-7000] SSP Problem

To:
Subject: [ts-7000] SSP Problem
From: "w0snj" <>
Date: Thu, 04 Jan 2007 15:02:55 -0000
I'm having a big problem with getting the SSP running.
Basically I'm trying to right a simple set of routines for reading and
writing to the SSP that implement a simple TI SPI, and I'm stuck.

Here was my original idea for a simple write function:

while(SSPSR transmit fifo not empty) do nothing;
write data to SPDR;

This intermittently works, but occasionally drops characters.  Over
the last few days I have tried to track the problem down, but with no
luck.
I have boiled down the problem to the following:

THIS WORKS:
POKE32( (unsigned long)(ssp_page + SSPDR), 0xF0 );
POKE32( (unsigned long)(ssp_page + SSPDR), 0x0F );

Two pieces of data come out.

THIS DOES NOT WORK:
PEEK32( (unsigned long)(ssp_page + SSPSR) );
POKE32( (unsigned long)(ssp_page + SSPDR), 0xF0 );
POKE32( (unsigned long)(ssp_page + SSPDR), 0x0F );

Only the one piece of data comes out.

Somehow reading the SSPSR is causing the fault, and without being able
to read that register I cannot reliably send data.

I have asked and received code samples from Technologic, but in all
their examples they don't read the SSPSR until after they sent the
data.  They rely on the SPI always being empty, and since they don't
send large blocks of data this works for them.

I'm at a loss, does anyone have any insight to add?





 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/ts-7000/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/ts-7000/join
    (Yahoo! ID required)

<*> To change settings via email:
     
    

<*> To unsubscribe from this group, send an email to:
    

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 

<Prev in Thread] Current Thread [Next in Thread>
  • [ts-7000] SSP Problem, w0snj <=
Admin

Disclaimer: Neither Andrew Taylor nor the University of NSW School of Computer and Engineering take any responsibility for the contents of this archive. It is purely a compilation of material sent by many people to the birding-aus mailing list. It has not been checked for accuracy nor its content verified in any way. If you wish to get material removed from the archive or have other queries about the archive e-mail Andrew Taylor at this address: andrewt@cse.unsw.EDU.AU