PCA8551 All information provided in this document is subject to legal disclaimers. © NXP Semiconductors N.V. 2015. All rights reserved.
Product data sheet Rev. 2 — 24 March 2015 30 of 57
NXP Semiconductors
PCA8551
Automotive 36 × 4 LCD segment driver
11.2 SPI-bus interface of the PCA8551B
Data transfer to the device is made via a 3-line SPI-bus (see Table 15). There is no
dedicated output data line. The SPI-bus is initialized whenever the chip enable line pin CE
is pulled down.
[1] The chip enable must not be wired permanently LOW.
11.2.1 Data transmission
The chip enable signal is used to identify the transmitted data. Each data transfer is a byte
with the Most Significant Bit (MSB) sent first.
The transmission is controlled by the active LOW chip enable signal CE
. The first byte
transmitted is the register address comprising of the address pointer and the R/W
bit.
After the register address byte, the register contents follows with the address pointer
being auto-incremented after every eighth bit sent (see Section 8.1 on page 7
).
11.2.1.1 Write protocol
After the CE
is set LOW, the PCA8551B requires that R/W and the register address
pointer is defined. It can take the value 00h to 17h. Values outside of that range will result
in the transfer being ignored.
After the register address has been transmitted, write data is transmitted. The minimum
number of data write bytes is 0 and the maximum number is unlimited. After each write,
the address pointer increments by one. After address 17h, the address pointer stops
incrementing at 18h.
Table 15. Serial interface
Symbol Function Description
CE
chip enable input
[1]
; active LOW when HIGH, the interface is reset
SCL serial clock input input may be higher than V
DD
SDIO serial data input/output input data are sampled on the rising edge of SCL,
output data are valid after the falling edge of SCL
Fig 20. Data transfer overview
Table 16. Address byte definition
Bit Symbol Value Description
7R/W
data read or write selection
0 write data
1 read data
6 to 5 - 00 default value
4to0 AP[4:0] pointer to register start address
00h to 17h valid range; other addresses are ignored
&(
'$7$ '$7$ '$7$5(*,67(5$''5(66