Download UM10116
Transcript
UM10116 NXP Semiconductors P89LPC933/934/935/936 User manual S M CPU clock 8-BIT SHIFT REGISTER clock MSTR SPR0 SPICLK P2.5 SS P2.4 SPR0 SPR1 CPOL CPHA MSTR SSIG WCOL DORD MSTR SPEN SPI CONTROL SPEN SPR1 S M CLOCK LOGIC MOSI P2.2 SPEN SPI clock (master) SELECT SPIF PIN CONTROL LOGIC READ DATA BUFFER DIVIDER BY 4, 16, 64, 128 MISO P2.3 M S SPI CONTROL REGISTER SPI STATUS REGISTER SPI interrupt request internal data bus 002aaa900 Fig 41. SPI block diagram. The SPI interface has four pins: SPICLK, MOSI, MISO and SS: • SPICLK, MOSI and MISO are typically tied together between two or more SPI devices. Data flows from master to slave on the MOSI (Master Out Slave In) pin and flows from slave to master on the MISO (Master In Slave Out) pin. The SPICLK signal is output in the master mode and is input in the slave mode. If the SPI system is disabled, i.e. SPEN (SPCTL.6) = 0 (reset value), these pins are configured for port functions. • SS is the optional slave select pin. In a typical configuration, an SPI master asserts one of its port pins to select one SPI device as the current slave. An SPI slave device uses its SS pin to determine whether it is selected. The SS is ignored if any of the following conditions are true: – If the SPI system is disabled, i.e. SPEN (SPCTL.6) = 0 (reset value) – If the SPI is configured as a master, i.e., MSTR (SPCTL.4) = 1, and P2.4 is configured as an output (via the P2M1.4 and P2M2.4 SFR bits); – If the SS pin is ignored, i.e. SSIG (SPCTL.7) bit = 1, this pin is configured for port functions. Note that even if the SPI is configured as a master (MSTR = 1), it can still be converted to a slave by driving the SS pin low (if P2.4 is configured as input and SSIG = 0). Should this happen, the SPIF bit (SPSTAT.7) will be set (see Section 13.4 “Mode change on SS”) Typical connections are shown in Figure 42 to Figure 44. Table 87. SPI Control register (SPCTL - address E2h) bit allocation Bit 7 6 5 4 3 2 1 0 Symbol SSIG SPEN DORD MSTR CPOL CPHA SPR1 SPR0 Reset 0 0 0 0 0 1 0 0 UM10116_3 User manual © NXP B.V. 2009. All rights reserved. Rev. 03 — 10 February 2009 97 of 149