●Description
GPIO expander is useful especially for the application that is in short of IO ports.
It can
1. Control GPIO output states by I
2. Know GPIO input states by I
Furthermore,it has the interrupt function that can release CPU from polling the registers in the GPIO expander.
GPIO expander are also equipped with Built-in power on reset, 3V tolerant input,and NMOS open-drain output.
●Features
1) 400Kbps, 2-Wire serial interface
2) Interrupt output
3) 20-bit General purpose input/output interface
8-bit and 12-bit IO groups are designed for different power supply
voltages from the device core voltage supply
● Absolute Maximum Ratings
(Ta=25℃)
Item Symbol Value Unit comment
Supply Voltage
Input voltage VI
Storage temperature range Tstg -55 ~ +125
Package power PD 310 *2 mW -
*1
The input voltage range doesn't exceed absolute maximum ratings even including +0.5 V.
*2
Package dissipation will be reduced each 3.1mW/
This IC is not designed to be X-ray proof.
● Recommended Operating Conditions
(Ta=-25
o
C ~+85 oC)
2
C write protocol.
2
C read protocol.
VDD -0.3 ~ +2.5 V -
VDDI2C -0.3 ~ +3.5 V -
VDDIO -0.3 ~ +3.5 V -
-0.3 ~ VDD +0.5
*1
V CMOS Core
-0.3 ~ VDDI2C +0.5 *1 V CMOS I/O for 2-Wire
-0.3 ~ VDDIO +0.5 *1 V CMOS I/O
o
C -
o
C when the ambient temperature increases beyond 25 oC.
No.09098EAT01
Item Symbol
Unit Condition
Min Typ Max
Limit
Supply voltage (VDD) V
Supply voltage(VDDI2C) V
Supply voltage(VDDIO1) V
Supply voltage(VDDIO2) V
2-Wire operating Frequency F
Min. Typ. Max.
Input H Voltage VIH 0.75xVDDIO - - V Input L Voltage VIL - - 0.25xVDDIO V -
Limit
Unit comment
Technical Note
Input H Current IIH 0 - 3
Input L Current IIL -3 - 0
Output H Voltage VOH VDDIO-0.2 - - V IOH=-1.0mA
Output L Voltage VOL - - 0.2 V IOL=1.0mA
SCL clk frequency fSCL - - 400 KHz
Bus free time tBUF 1.3 - (repeat)Start condition
Setup Time
(repeat)Start condition
Hold Time
SCL Low Time tLOW 1.3 - SCL High Time tHIGH 0.6 - Data Setup Time tSU:DAT 100 - - ns
Data Hold Time tHD:DAT 0 - - ns
Stop condition
Setup Time
Interrupt Valid tIV - - 0.1
Interrupt Reset tIR - - 1.0
Output Data Valid tDV - - 0.8
Input Data Setup Time tDS 100 - - ns
VDDIO2 General purpose inout. Pull-up to VDD
35 A2 GPIO18 INOUT VDDIO2
36 B2 GPIO19 INOUT
*1
The Low Active or High Active of interrupt output level and specific bit mask control are decided by internal register value.
*2
When IOSEL register is set to “1”, please pull-up IO output to the same value as VDDIO1 or VDDIO2 voltages respectively.
VDDIO2 General purpose inout. Pull-up to VDD
Technical Note
Function
B
Serial data inout for 2-Wire A
Clock for 2-Wire B
Reset(Low Active)
Interrupt signal
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
General purpose inout. Pull-up to VDD
1.1 Slave address
Please pull-up SDA and SCL to the same potential of voltage as DVDDI2C.
BU8272GUW is controlled by using an on-chip 2-Wire slave interface. Two kinds of the device address, “0001111” at
ADR=”1” or “0001000” at ADR=”0” can be used. The transfer bit rate supports Fast-mode up to max 400Kbps.
1.2 Data transfer
One bit of data is transferred during SCL = “1”. During the bit transfer SCL = “1” cycle, the signal SDA should keep the
value. If SDA changes during SCL = “1”, a START condition or STOP condition occur and it is interpreted as a control
signal.
SDA
SCL
Data is valid
when SDA is
stable
SDA is
variable
Fig. 6 Data transfer
1.3 START-STOP conditions
When SDA and SCL are “1”, the data isn’t transferred on the 2-wire bus. If SCL remains “1” and SDA transfers from “1” to
“0”, it means a “Start condition” is occurred and access is started.
If SCL remains “1” and SDA transfers from “0” to “1”, it means a “Stop condition” is occurred and access is stopped.
1.4 Acknowledge
After start condition is occurred, 8 bits data will be transferred. Then the “Master” opens SDA and “Slave” de-asserts SDA to
“0” as an “Acknowledge” returned.
SDA output
from “Master”
Not acknowledge
SDA output
from “Slave”
SCL1289
START condition
S
Acknowledg
Clock pulse
For Acknowledgs
e
Fig. 8 Acknowledge
1.5 Writing protocol
A writing protocol is shown in Fig.8-5 below. GPIO register address in BU8272GUW is transferred after one byte of slave
address with a write commend. The 3rd byte data is written to internal register which defined by the 2nd byte. After the each
byte transfer, the register address will be automatically increased. However, when the register address increased to the final
address (09h), it will be reset to (00h) after the byte transfer.
GPIO register address (00h) is assigned to GPIO register[7:0], the register address (01h) is assigned to GPIO register[15:8],
and the register address (02h) is assigned to GPIO register[19:16]. Only the 4 bits LSB data are valid in the register with
GPIO register address (02h).
1.6 Reading protocol
After Writing the slave address and Read/Write commend bits, the next byte is read. The reading register address is next of
previous accessed address. Therefore, the data is read with address increment. When the address in increased to the last,
the following read address will be reset to (00h). When the GPIO port [19:16] is read, 4 bits of “0” will be added from MSB,
and the value of 4 bits from GPIO port [19:16] is read from 2-wire interface.
XXX XX X XD7D6D5D4D3D2D1 D0D7D6D5 D4D3 D2 D1D0
Salve address
1SAP
data
R/W=1(Read)
A
Register Address
increment
data
A
Register address
increment
Transmit fronm master
Transmit from slave
A=acknowledge
A
=not acknowledge
S=Start conditio n
P=Stop condition
Fig. 10 Readout protocol
1.7 Complex reading protocol
After the specifying the internal register address, a resending start condition occurs and the direction of data transfer is
changed then reading access is done. Therefore, the data is read followed by address increment. If the address is
increased to the last, it will be reset to (00h).
SAAA
XXXXXX0X
Slave address
R/W=0(write)
X X X X A3 A2A1 A0
Register address
Sr1
XXXXXXX
Slave address
R/W=1(read)
D7 D6D5D4 D3D2 D1D0
data
Transmit from master
Transmit from slave
A
Register address
increment
D7 D6 D5D4 D3D2 D1D0
data
Register address
A=acknowledge
=not aclnowledge
A
S=Start condition
P=Stop condition
Sr=Start cond ition
2. GPIO・INT Interface
The default mode of all GPIO [19:0] ports are input mode upon the power-on. By setting the specific bit of Interrupt Mask Sel
register to “1”, the corresponding bit of Interrupt will be masked. There are two kinds of ways to control input / output operations.
The first way is to change read / write register value in each corresponding bit. Second way is to write each GPIO register a “0”
value for ‘Output operation’ and a “1” value for ‘input operation’. It is necessary to pull up the output to the same voltage value
as the corresponding I/O power supply in the second way.
2.1 Write to GPIO Port
After setting the internal register address, the data from master is written from MSB.
After Acknowledge is returned, the value of each GPIO port will be changed.
・IOSEL=1
In the condition that IOSEL register is “1”, after sending Acknowledge, a value “0” is output from the GPIO port which the
corresponding bit is transferred as ‘0’, and a input-mode(Hi-Z) is output from GPIO port which the corresponding bit is
transferred as ‘1’.
SCL
SDA
GPIO
[7:0]
GPIO
[15:8]
123456789
S X X X X X X X 0 AckAckReg AddressMSBLSBAckData1 (GPIO[7:0])MSBLSBAckData2 (GPIO[15:8])MSBLSBP
Start Condition
WriteAcknowledge From Slave
Acknowledge From Slave
tDV
Acknowledge From Slave
Stop Condition
Data1 Valid
tDV
Fig. 14 Write to GPIO port (Pull-up-mode)
・IOSEL=0
In the condition that IOSEL register is “0”, data input or output is defined by the value of RWSEL register. Therefore, after
“0” is written to each bit of RWSEL register, the data is output from GPIO port. If “0” is written to RWSEL register at first, the
data will be output immediately from the GPIO port after the acknowledge signaling.
SCL
SDA
GPIO
[7:0]
GPIO
[15:8]
123456789
S X X X X X X X 0 AckAckReg AddressMSBLSBAckData1 (GPIO[7:0])MSBLSBAckRWSEL = Write ModeMSBLSBP
2.2 Read From GPIO Port
After slave address and R/W bit is written, the GPIO ports value will be read into the GPIO registers. (refer to section 8.1.6
for 2-wire reading protocol.) The data fixed between tow consecutive acknowledges will be transferred to the Master.
SDA
GPIO
2.3 Interrupt Valid/Reset
The transition of each GPIO port de-asserts the interrupt signal (INT), generates the interrupt signal by asserting the INT
after each acknowledge signaling.
Either a “High-Active” or a “Low-Active” interrupt signaling can be defined by changing the INTSEL register value
beforehand.
● The Setting Registers
When setting address is written beyond 00h~09h, the register address will be forced to value 00h.
When the final address is set to 09h, then the next address 00h will be written.
By making XRST “Low”, the setting register value will be initialed shown in following register map.
Read or write data of GPIO bit 16 to bit 19.
In writing mode, 4 bits of MSB is ignored and in reading mode, 4 bits of
“0” is filled up from MSB.
0: Interrupt is not masked when “0” is written to GPIO bit 0 to 7
1: Interrupt is masked when “0” is written to GPIO bit 0 to 7
0: Interrupt is not masked When “0” is written to GPIO bit 8 to 15
1: Interrupt is masked When “0” is written to GPIO bit 8 to 15
0: Interrupt is not masked when “0” is written to GPIO bit 16 to 19
1: Interrupt is masked when “0” is written to GPIO bit 16 to 19
In writing mode, 4 bit of MSB is ignored and in reading mode, 4 bits of
“0” is filled up from MSB.
0: GPIO bit 0 through 7 becomes output mode.
1: GPIO bit 0 through 7 becomes input mode.
0: GPIO bit 8 through 15 becomes output mode.
1: GPIO bit 8 through 15 becomes input mode.
0: GPIO bit 16 through 19 becomes output mode.
1: GPIO bit 16 through 19 becomes input mode.
0: RWSEL bit 0 through 7 becomes available.
1: Change to pull-up mode.
0: RWSEL bit 8 through 19 becomes available.
1: Change to pull-up mode.
0: Make Interrupt “Low active”.
1: Make Interrupt “High active”.
1. About difference between I2C and 2-Wire
2-wire interface logic uses a normal IN/OUT cell (Hi-Z or only “0” output) instead of an Open-Drain cell in normal I2C interface.
For this reason, the VDDI2C voltage level must be same as the connected other normal I2C masters’. Therefore, any other I2C
slave with same bus level can be connected to the bus.
2 .In case of illegal access
The current data will be canceled and next access is necessary.
*1
In case of a consecutive Start-condition and Stop-condition occurred.
In case of Resend-condition or Stop-condition occurred during a slave address or R/W bit witting cycles.
In case of Resend-condition or Stop-condition occurred during data witting cycles.
*1
during 2-Wire data transference
3. About the handling of the no using GPIO port
Any no using GPIO port must be pulled-up or connected to GND. In order to prevent from any unexpected interrupt happening
when a no using GPIO is connected to GND, the corresponding bit of GPIO Mask register must be disabled by Mask register
access, or simply read the GPIO value into corresponding internal GPIO port register. The no using GPIO port power supply
(VDDIO1 or VDDIO2) must be connected to the voltage value defined in this specification, never left it open.
4. Caution of power on sequence
The BU8272GUW can not works correctly even one of the power supply among the core power supply (VDD) and the I/O power
supply ( VDDI2C, VDDIO1, VDDIO2) is not connected to specified conditions described in this specification.
The power on sequence must be designed to give core power supply first then I/O power. Inversely, the I/O power supply must
be switched off before the core power down in the device power down sequence.
5. Reset release timing
Core power supply (VDD) and I/O power supply (VDDI2C, VDDIO1, VDDIO2) first. Afterwards, release XRST.
No copying or reproduction of this document, in part or in whole, is permitted without the
consent of ROHM Co.,Ltd.
The content specied herein is subject to change for improvement without notice.
The content specied herein is for the purpose of introducing ROHM's products (hereinafter
"Products"). If you wish to use any such Product, please be sure to refer to the specications,
which can be obtained from ROHM upon request.
Examples of application circuits, circuit constants and any other information contained herein
illustrate the standard usage and operations of the Products. The peripheral conditions must
be taken into account when designing circuits for mass production.
Great care was taken in ensuring the accuracy of the information specied in this document.
However, should you incur any damage arising from any inaccuracy or misprint of such
information, ROHM shall bear no responsibility for such damage.
The technical information specied herein is intended only to show the typical functions of and
examples of application circuits for the Products. ROHM does not grant you, explicitly or
implicitly, any license to use or exercise intellectual property or other rights held by ROHM and
other par ties. ROHM shall bear no responsibility whatsoever for any dispute arising from the
use of such technical information.
Notice
The Products specied in this document are intended to be used with general-use electronic
equipment or devices (such as audio visual equipment, ofce-automation equipment, communication devices, electronic appliances and amusement devices).
The Products specied in this document are not designed to be radiation tolerant.
While ROHM always makes ef forts to enhance the quality and reliability of its Products, a
Product may fail or malfunction for a variety of reasons.
Please be sure to implement in your equipment using the Products safety measures to guard
against the possibility of physical injury, re or any other damage caused in the event of the
failure of any Product, such as derating, redundancy, re control and fail-safe designs. ROHM
shall bear no responsibility whatsoever for your use of any Product outside of the prescribed
scope or not in accordance with the instruction manual.
The Products are not designed or manufactured to be used with any equipment, device or
system which requires an extremely high level of reliability the failure or malfunction of which
may result in a direct threat to human life or create a risk of human injury (such as a medical
instrument, transportation equipment, aerospace machinery, nuclear-reactor controller,
fuel-controller or other safety device). ROHM shall bear no responsibility in any way for use of
any of the Products for the above special purposes. If a Product is intended to be used for any
such special purpose, please contact a ROHM sales representative before purchasing.
If you intend to export or ship overseas any Product or technology specied herein that may
be controlled under the Foreign Exchange and the Foreign Trade Law, you will be required to
obtain a license or permit under the Law.
Thank you for your accessing to ROHM product informations.
More detail product informations and catalogs are available, please contact us.