Chameleon-AVR Nurve Networks, Chameleon-AVR Datasheet - Page 153

MCU, MPU & DSP Development Tools AVR8 & PROPELLER DEV SYSTEM (SBC)

Chameleon-AVR

Manufacturer Part Number
Chameleon-AVR
Description
MCU, MPU & DSP Development Tools AVR8 & PROPELLER DEV SYSTEM (SBC)
Manufacturer
Nurve Networks
Datasheet

Specifications of Chameleon-AVR

Processor To Be Evaluated
AVR 328P
Data Bus Width
8 bit
Interface Type
USB, VGA, PS/2, I2C, ISP, SPI
Operating Supply Voltage
3.3 V, 5 V
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
SPI stands for Serial Peripheral Interface originally developed by Motorola. Its one of two very popular modern serial
standards including I
clock) is a clocked synchronous serial protocol that supports full duplex communication. However I
and a ground. Where SPI needs 3 wires, ground, and potentially chip select lines to enable the slave devices. But, SPI is
much faster, so in many cases speed wins over and the extra clock line is warranted. The advantage of I2C is that you
can potentially hook hundreds of I
to. SPI bus protocol on the other hand requires that every SPI slave has a chip select line.
19.1 SPI Bus Basics
Figure 19.1 shows a simple diagram between a master (left) and a slave (right) SPI device and the signals between them
which are:
Note: You might find some devices with slightly different naming conventions, but the idea is there is data out and data in,
a clock, and some kind of chip select.
If you refer back to the Chameleon’s SPI interface discussion in Section 9.0 of the Hardware Primer you can see that
these signal pins are mapped from the AVR to the Propeller chip.
SPI is very fast since not only is it clocked, but it’s a simultaneous full duplex protocol which means that at you clock data
out of the master into the slave, data is clocked from the slave into the master. This is facilitated by a transmit and receive
bit buffer that constantly re-circulates as shown in Figure 19.1.
The use of the circular buffers means that you can send and receive a byte in only 8 clocks rather than clocking out 8-bits
to send, then clocking in 8-bits to receive. Of course, in some cases the data clocked out or in is “dummy” data, meaning
when you write data and you are not expecting a result the data you clock in is garbage and you can throw it away.
Likewise when you do a SPI read, typically you would put a $00 or $FF in the transmit buffer as dummy data since
something has to be sent and it might as well be predictable.
SCLK - Serial Clock (output from master).
MOSI/SIMO - Master Output, Slave Input (output from master).
MISO/SOMI - Master Input, Slave Output (output from slave).
SS - Slave Select (active low; output from master).
in the AVR 644 are all “TWI” prefixed and suffixed, so don’t get confused. Finally, SPI
has nothing to do with this, so “SPI” is called “SPI”.
2
C which stands for Inter Integrated Circuit by Phillips. SPI unlike I
2
C devices on the same 2-bus lines since I
Figure 19.1 – The SPI electrical interface.
Figure 19.1 – Circular SPI buffers.
© 2009 NURVE NETWORKS LLC “Exploring the Chameleon AVR 8-Bit”
2
C devices have addresses that they respond
2
C (which has no separate
2
C only takes 2 wires
153

Related parts for Chameleon-AVR