Sie sind auf Seite 1von 9

SPI Compatible Devices

Design and implementation


details on the way to a valid
SPI-LCD interface driver
5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
2 / 26
To be tackled today
What is SPI?
What is the SPI master slave
relationship?
How do you send commands from the
Blackfin to a LCD device?
What commands are necessary to
control the LCD device -- HD44780?
5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
3 / 26
What is SPI
Serial Peripheral Interface an industry standard
SPI is a serial communication bus developed by
Motorola. It is a full-duplex protocol that functions on a
master-slave paradigm that is ideally suited to data
stream application.
DUPLEX MEANS BOTH DIRECTIONS AT ONCE
Master can receive from the slave at the same time as the master
sends to the slave
Is essentially a 4 wire high speed system, with speeds up to
many MHz
Blackfin (p10-8) has a register SPI_BAUD where they talk about
transfer rates of 25 MHz.

Information is prcised from
SPI information -- http://www.totalphase.com/docs/articles/article03/
LCD information -- http://home.iae.nl/users/pouweha/lcd/lcd.shtml

5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
4 / 26
Advantages and drawbacks
SPI is a very simple communication protocol.
It does not have a specific high-level protocol which means that there is
almost no overhead.
Data can be shifted at very high rates in full duplex mode
This makes it very simple and efficient in a
single master single slave scenario.
The exchange itself has no pre-defined protocol. This makes it
ideal for data-streaming applications.
Data can be transferred at high speed, often into the range of
the tens of megaHertz.
The flipside is that there is no acknowledgment, no flow
control, and the master may not even be aware of the
slave's presence / or absence.
You could do some handshaking via software

5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
5 / 26
Systems that use SPI
The question is of course, which peripheral
types exist and which can be connected to
the host processor. Peripheral types can be
subdivided into the following categories:
Converters (ADC and DAC)
Memories (EEPROM and FLASH)
Real Time Clocks (RTC)
Sensors (temperature, pressure)
Others (signalmixer, potentiometer, LCD controller,
UART, CAN controller, USB controller, amplifier)

5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
6 / 26
Concept of Master and Slave
Master
The component
that initiates the
transfer
The component
that controls the
transfer
Slave
The component
that responds to
the transfer
5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
7 / 26
Master / Slave concept
Slave Select (Chip Select)
Master sends out
active low chip
select signal
SS1, then slave
1 responds
Master sends out
active low chip
select signal
SS2, then slave
2 responds

FOR SAFETY SELECT SIGNAL IS ACTIVE LOW NOT ACTIVE HIGH
5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
8 / 26
Master / Slave concept
Master to Slave data movement
Master sends out
information to slave
on MOSI wire
Slave receives
information from the
master on MOSI wire
Information (bits) is
clocked by SCLK
signal.
1-bit, 1 clock tick
MOSI --MASTER OUT SLAVE IN
5/6/2014 SPI and LCD ,
Copyright M. Smith, ECE, University of Calgary, Canada
9 / 26
Master / Slave concept
Slave to Master data movement
Master receives
information from
slave on MISO wire
Slave sends
information to the
master on MISO wire
Information (bits) is
clocked by SCLK
signal.
1-bit, 1 clock tick

MISO --MASTER IN SLAVE OUT

Das könnte Ihnen auch gefallen