Correction: that 983039 conversion result was a previous edit that I forgot to
erase.
--- In "razvan_ionut_stoian" <>
wrote:
>
> Thank you all for your answers.
>
> First of all, my SBC is not a TS7200, but a AT91SAM9G20 based SBC.
>
> The SPI on most Atmel procs. works like this: the transmit register has
> three parts: the command that one sends to the slave (i.e., channel
> selection), the selection of the current CS pin and a "last transfer" bit
> that makes the CS go high after that particular transfer.
>
> Every time I transmit a command, I check the status of the "read buffer".
> When it's full, I read the result in the Rx register.
>
> The only thing that I get at reading time is 983039.
>
> This is the sequence used to get the conversion result:
>
> *((unsigned int *) (spi1_base + AT91C_SPI1_TDR )) = 0xFFF|SPI_PCS(0) |
> AT91C_SPI_LASTXFER ;
> while (!(*((unsigned int *) (spi1_base + AT91C_SPI1_SR))&AT91C_SPI_RDRF )){}
> buffer = *((unsigned int *) (spi1_base + AT91C_SPI1_RDR))&0xFFF;
>
> The input of the ADC is wired to a pot that works as a voltage divider. No
> matter the position, I only get 4095.
>
> R.
>
>
>
> --- In Jason Stahls <jason@> wrote:
> >
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > On 12/06/10 10:05, razvan_ionut_stoian wrote:
> > > Hi.
> > >
> > > Does anybody know how to modify (hardware and software) a typical SPI
> > > interface (CLK/MOSI/MISO/CS) into a 3-wire SPI (no MOSI line)?
> > >
> > > In order to receive a word from the slave, one has to send a dummy
> > > command from master to slave. Since there is no MOSI line, how can the
> > > serialization of the received data be possible?
> >
> > Easy, it's not synchronous. You assert CS, clock a command to the
> > device, then depending on implementation you signal the device to
> > transmit (by toggling CS or stopping the clock) or you don't. When the
> > slave transmits the master keeps clocking till the slave finishes.
> > Check the chip's datasheet it should give you a detailed protocol
> > breakdown. If the hardware SPI interface can handle it is a different
> > question :) Doing it in software on a couple GPIO pins wouldn't be hard
> > tho.
> >
> > - --
> > Jason Stahls
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v2.0.16 (GNU/Linux)
> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> >
> > iQEcBAEBAgAGBQJM/TgNAAoJEBWmhVAMrS/gQwoH/RdRNop+3L5IznIUph/yo1wO
> > PeLyoCYO3q68sYmwbWZ52EuI+L4VJEkZPHm1rVoQN5T81jalpMdwBdx13vlT5njf
> > IfqMuyxvMJ5JKmycWtdvMJ2TaXV/lhIezYUleJfcSPVuinFUdTPshQi+csWSzsbO
> > JWeXNIk5FHSvPUFppx/AG/qbxAtSsa0rWj/WDkZDO7MQI3Qpno/ILSFZogplpRsf
> > t2MqUofECX1aNPmdoOaKgFYTrOrqtdyPan+J85h6MxTP6tU/NR4uTxUVxk30L7hG
> > gqDjcD/U5B69WxZeyi1cUeD60T5KwGjKDkN6kD1nmkx3xcA/WPEXnNvz5LeXfyo=
> > =b2oC
> > -----END PGP SIGNATURE-----
> >
>
------------------------------------
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/
|