www.ti.com
Writing Scripts
This script begins with a comment, specifies that a fast I
2
C bus is used, then writes
0xAA 0x55
to the I
2
C
slave device at address 0x90, writing the values into registers 0x03 and 0x04. The script then reads back
two bytes from the same device starting at register address 0x03. Note that the slave device value does
not change. It is unnecessary to set the R/W bit for I
2
C devices in the script; the read or write commands
does that.
Here is an example of using an SPI device that requires 16-bit register addresses:
# setup TSC2101 for input and output
# uses SPI16 interface
# this script sets up DAC and ADC at full volume, input from onboard mic
#
# Page 2: Audio control registers
w 10 00 00 00 80 00 00 00 45 31 44 FD 40 00 31 C4
w 13 60 11 20 00 00 00 80 7F 00 C5 FE 31 40 7C 00 02 00 C4 00 00 00 23 10 FE
00 FE 00
Note that blank lines are allowed. However, be sure that the script does not end with a blank line.
Although ending with a blank line does not cause the script to fail, the program does execute that line, and
therefore, may prevent the user from seeing data that was written or read back on the previous command.
In this example, the first two bytes of each command are the command word to send to the TSC2101
(0x1000, 0x1360); these are followed by data to write to the device starting at the address specified in the
command word. The second line may wrap in the viewer being used to look like more than one line;
careful examination shows, however, that only one carriage return is on that line, following the last
00
.
Any text editor can be used to write these scripts; Jedit is an editor that is highly recommended for general
usage. For more information, go to:
http://www.jedit.org
.
Once the script is written, it can be used in the command window by running the program, and then
selecting
Open Command File...
from the File menu. Locate the script and open it. The script then is
displayed in the command buffer. The user can also edit the script once it is in the buffer, but saving of the
command buffer is not possible at this time (this feature may be added at a later date).
Once the script is in the command buffer, it may be executed by pressing the
Execute Command Buffer
button. If breakpoints are in the script, the script executes to that point, and the user is presented with a
dialog box with a button to press to continue executing the script. When ready to proceed, push that
button and the script continues.
Here an example of a (partial) script with breakpoints using the AIC33EVM as an example:
# setup AIC33 for input and output
# uses I2C
interface
I i2cfast
# reg 07 - codec datapath
w 30 07 8A
r 30 07 1
d 1000
# regs 15/16 - ADC volume, unmute and set to 0dB
w 30 0F 00 00
r 30 0F 2
b
This script writes the value 8A at register 7, then reads it back to verify that the write was good. A delay of
1000 ms (one second) is placed after the read to pause the script operation. When the script continues,
the values
00 00
is written starting at register 0F. This output is verified by reading two bytes, and pausing
the script again, this time with a break. The script does not continue until the user allows it to by pressing
OK
in the dialog box that is displayed due to the break.
SLAU261 – November 2008
USB-MODEVM Protocol
51
Submit Documentation Feedback