CM6533,CM6533N,CM6533X1,CM6533DH
USB Audio Chip
Page
38
/
60
www.cmedia.com.tw
Rev.1.7
Copyright© C-Media Electronics Inc.
6.8.11
I2C Slave Mode
“7-bit slave address = 7’b0001000 to 7’b0001011”
CM6533/CM6533N/CM6533X1/CM6533DH can serves as a slave device with bit rate up to 400Kbps (fast mode).
External MCU can write data to CM6533/CM6533N/CM6533X1/CM6533DH or read data from
CM6533/CM6533N/CM6533X1/CM6533DH (No Size limitation in I2C Interface). Since host side and MCU can both
access to all the internal registers.
CM6533/CM6533N/CM6533X1/CM6533DH will transfer an interrupt to internal MCU until the INT bit of I2C
control Register have been clean by internal MCU. The interrupt will be trigger when write transaction done or
detect read-slave-address.
The main usage of 2-wire slave bus is to become the interface between the
CM6533/CM6533N/CM6533X1/CM6533DH and a external micro control unit (EMCU).
6.8.12
I2C Slave Data Register
Address: 30~33h
Bits
R/W
Bit Mnemonic
Description
Default
31:0
R/W
MCU_data0~F
The data received from or transmitted to master device.
This register cannot be written when 2-wire slave serial
bus status is busy.
0000h
(POR)
6.8.13
I2C Slave Status Register
Address: 34~35h
Bits
R/W
Bit Mnemonic
Description
Default
15
Reserved
1b
14:12
R
Reserved
0h
11
R/W
Thld_int_mask
Threshold interrupt mask:
1: mask; 0: non-mask ; default :0
0b
(POR)
10
R
Write_data_ready Interrupt happened, auto-cleared after read
0b
(POR)
9
R/W
I2c_s_reset
0: 2-wire serial bus in normal operation (default)
1: 2-wire serial bus in reset state
0b
(POR)
8
R/W
Dri_tran_st
initiated transaction status
1: The last initiated transaction failed, write 1 to clear.
0b
(POR)
7
R/W
Rd_tran_st
Read transaction status
1: a new read transaction received, write 1 to clear.
0b
(POR)
6
R/W
Wr_tran_st
Write transaction status
1: a new write transaction received, write 1 to clear.
0b
(POR)
5:1
R
Data_len
The data length of the last write transaction received,
00000: 1 byte (MAP only)
00001: 2 byte (MAP + 1 byte data)
00010: 3 byte (MAP + 2 byte data)
00011: 4 byte (MAP + 3 byte data)
00100: 5 byte (MAP + 4 byte data)
01111: 16 byte (MAP + 15 byte data) .
10000: 17 byte (MAP + 16 byte data)
0b
(POR)