Writing Scripts
www.ti.com
This script begins with a comment, specifies that a fast I
2
C bus is used, then writes 0xAA 0x55 to the I
2
Cslave device at address 0x90, writing the values into registers 0x03 and 0x04. The script then reads backtwo bytes from the same device starting at register address 0x03. Note that the slave device value doesnot change. It is unnecessary to set the R/ W bit for I
2
C devices in the script; the read or write commandsdoes 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 registersw 10 00 00 00 80 00 00 00 45 31 44 FD 40 00 31 C4w 13 60 11 20 00 00 00 80 7F 00 C5 FE 31 40 7C 00 02 00 C4 00 00 00 23 10 FE00 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, andtherefore, 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 thecommand 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 generalusage. 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 thenselecting Open Command File... from the File menu. Locate the script and open it. The script then isdisplayed in the command buffer. The user can also edit the script once it is in the buffer, but saving of thecommand 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 Bufferbutton. If breakpoints are in the script, the script executes to that point, and the user is presented with adialog box with a button to press to continue executing the script. When ready to proceed, push thatbutton 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 interfaceI i2cfast
# reg 07 - codec datapathw 30 07 8Ar 30 07 1d 1000
# regs 15/16 - ADC volume, unmute and set to 0dBw 30 0F 00 00r 30 0F 2b
This script writes the value 8A at register 7, then reads it back to verify that the write was good. A delay of1000 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 pausingthe script again, this time with a break. The script does not continue until the user allows it to by pressingOK in the dialog box that is displayed due to the break.
50 USB-MODEVM Protocol SLAU286 – June 2009Submit Documentation Feedback