USB-MODEVM Protocol
57
SLAU738 – September 2017
Copyright © 2017, Texas Instruments Incorporated
USB-MODEVM Protocol
Example usage:
Write two bytes (AA, 55) to device starting at register 5 of an I
2
C device with address A0:
[0] 0x11
[1] 0xA0
[2] 0x02
[3] 0x05
[4] 0xAA
[5] 0x55
Do the same with a fast mode I
2
C device:
[0] 0x12
[1] 0xA0
[2] 0x02
[3] 0x05
[4] 0xAA
[5] 0x55
Now with an SPI device which uses an 8-bit register address:
[0] 0x10
[1] 0xA0
[2] 0x02
[3] 0x05
[4] 0xAA
[5] 0x55
A 16-bit register address, as found on parts like the TSC2101. Assume the register address (command
word) is
0x10E0
:
[0] 0x14
[1] 0x10
-->
Note:
the I
2
C address now serves as MSB of reg addr.
[2] 0x02
[3] 0xE0
[4] 0xAA
[5] 0x55
In each case, the TAS1020 will return, in an HID interrupt packet, the following:
[0]
interface byte | status
status:
REQ_ERROR 0x80
INTF_ERROR 0x40
REQ_DONE 0x20
[1]
for I
2
C interfaces, the I
2
C address as sent
for SPI interfaces, the read back data from SPI line for transmission of the corresponding byte
[2]
length as sent
[3]
for I
2
C interfaces, the reg address as sent
for SPI interfaces, the read back data from SPI line for transmission of the corresponding byte
[4..60]
echo of data packet sent