xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx x x x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xx xx xxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx x x
xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xxx
PCU9661 All information provided in this document is subject to legal disclaimers. © NXP B.V. 2011. All rights reserved.
Product data sheet Rev. 1 — 12 September 2011 28 of 52
NXP Semiconductors
PCU9661
Parallel bus to 1 channel UFm I
2
C-bus controller
Example CHSTATUS codes:
80h: sequence done with no errors
C0h: frame loop and sequence done with no errors
C1h: frame loop and sequence done with frame errors
Fig 9. PCU9661 I
2
C status codes
A
CHSTATUS register, interrupt requested. Interrupt goes LOW at the STOP.
DATA
any number of data bytes and their associated Acknowledge bits
from master to slave
STATUS2_[n] register, no interrupt
n
002aag272
SLA 0S W
A
DATA SLA 0 W DATA
DATA
A
SSLA 1 W DATAn SLA n
01h
S S W DATAn P
80h
00h
S
01h
A A A AA
C0h
C1h
AA
xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx x x x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xx xx xxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx x x
xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xxx
PCU9661 All information provided in this document is subject to legal disclaimers. © NXP B.V. 2011. All rights reserved.
Product data sheet Rev. 1 — 12 September 2011 29 of 52
NXP Semiconductors
PCU9661
Parallel bus to 1 channel UFm I
2
C-bus controller
Status and configuration registers are not shown.
Shaded areas are comments/indexes that are not user-accessible.
Fig 10. PCU9661 sequence block diagram; sample sequence loaded
002aag273
00h
TRANCONFIG
-
01h
02h
:
03h
3Dh
3Eh
3Fh
01h
40h
05h
10h
:
08h
10h
05h
08h
Transaction count
Transaction 0 length, 1 byte
Transaction 1 length, 5 bytes
Transaction 2 length, 16 bytes
Transaction 3 length, 8 bytes
:
Transaction 61 length, 16 bytes
Transaction 62 length, 5 bytes
Transaction 63 length, 8 bytes
00h
SLATABLE
01h
02h
:
03h
3Dh
3Eh
3Fh
10h
11h
40h
:
E0h
20h
33h
20h
SLAW
SLAW
SLAW
SLAW
:
SLAW
SLAW
SLAW
The slave address plus transaction count,
direction bit, the transaction length and the
transaction data make up one complete
serial bus transaction or sequence.
DATA
00h
10h
00h
00h
00h
02h
55h
Transaction 0, data byte 0
Transaction 1, data byte 0
Transaction 1, data byte 1
Transaction 1, data byte 2
Transaction 1, data byte 4
Transaction 2, data byte 0
Transaction 2, data byte 1
:
AAh
:
Transaction 2, data byte 15
::
44h Transaction 63, data byte 0
AAh Transaction 63, data byte 1
::
55h Transaction 63, data byte 7
::
::
::
::
unused
memory
space
internal memory pointer
A00h or F00h
sequence write data
memory space
internal memory pointer
0000h
The memory pointers are managed
internally by the buffer controller.
number of
slave addresses
to be included
in a sequence
00h Transaction 1, data byte 3
transaction length
corresponding to each
slave address in the
SLATABLE
slave address
plus direction bit
PCU9661 All information provided in this document is subject to legal disclaimers. © NXP B.V. 2011. All rights reserved.
Product data sheet Rev. 1 — 12 September 2011 30 of 52
NXP Semiconductors
PCU9661
Parallel bus to 1 channel UFm I
2
C-bus controller
8.2 Stopping a sequence
If the host needs to stop the execution of a sequence, it should set the STO bit in the
CONTROL register. For write transactions, the host will issue a STOP after the
acknowledge cycle of the current byte being transferred on the serial bus. No interrupts
will be generated and all the status registers will be up to date. The Sequence Done bit
(SD) will be set to indicate to the host that the STOP condition was completed and the bus
is idle. The Sequence Done and the Frame Loop Done will be set if the channel is in Loop
mode (FRAMECNT 1) and a STO or STOSEQ bit is set.
If the host issues a STOP (by setting the STO) in the middle of a sequence followed by a
START (by setting the STA), then the controller will re-send the sequence from the
beginning, not from the point where the sequence was last stopped.
8.3 Looping a sequence
A sequence can be set to automatically loop several times using the FRAMECNT and one
of the following:
The REFRATE register. The REFRATE register contains the value of the refresh rate
which is timing required between the START of two sequences. The refresh rate is
derived from the internal clock of the bus controller. If the REFRATE is programmed to
00h, the sequences will be looped back-to-back.
Trigger enable (TE) bit. When TE is set, the refresh rate is controlled by the external
trigger input and the contents of the REFRATE registers is ignored. There is no
maximum timing requirement for the trigger interval.
The FRAMECNT register sets the number of times the sequence will be repeated. A
frame is defined as a sequence associated with its respective refresh rate. As described
above, the frame refresh rate is determined by the REFRATE register or an external
trigger source.
During looping, there is no host intervention required and all status and error reporting
remains active. The SD (Sequence Done) bit can be masked to avoid getting interrupted
each time a frame is completed while the other error reporting bits remain unmasked. In
this manner, normal transactions can run without host intervention and errors will be
reported at the STOP of the current byte where the error occurred.
Once the FRAMECNT values is reached, the FLD bit in the CHSTATUS register is set and
no further transactions will be executed and the channel will go to the idle state. The FLD
interrupt can be masked with the FLDMSK bit in the CTRLINTMSK register. The host can
poll the CTRLSTATUS register to check if the channel is active (looping) or if it is idle.
For indefinite or long term looping the host can do the following:
1. A sequence can be set to loop indefinitely by setting the FRAMECNT register to 00h.
Each frame will be sent out following the REFRATE settings or the Trigger input if the
TE bit is set. To end the Loop mode, the host sets the STO or STOSEQ bits in the
CONTROL register.
2. A frame will be sent out continuously and back-to-back if FRAMECNT and REFRATE
are set to 00h. To end the Loop mode, the hose sets the STO or STOSEQ bits in the
CONTROL register.

PCU9661B,118

Mfr. #:
Manufacturer:
NXP Semiconductors
Description:
Universal Bus Functions PARALLEL BUS TO FM+I2C BUS CONTRLLR
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union

Products related to this Datasheet