Use symbolic (* asterisk) values for Static Digital - I2C Write controls when a sweep of register values is required. This can be used, for example, when a test panel is needed to sweep the register value and read the output voltage and also read back the register values from the DUT. Also, use Measure Sequence group to combine measurements after each DUT control serial data is emitted.
It may be tempting to just add multiple values to a StaticDigial - I2CWrite button, like the test panel in Figure 1. But this will not work as expected as it will send the entire sequence to the DUT before making the measurement(s) and so it will only collect valid data for the final serial write state.
Instead, the I2C Write button needs to be in a Pre Measure group. Use symbolic replacement in the Pre Meas group to make multiple values. This requires using the asterisk symbol in the Pre Meas group and then putting your values in the test panel that tells the Pre Meas to look in the test panel for this same button and use those values. The compiler will create a unique Pre Meas for each value found.
Also, when there are 2 or more measurements in the test panel, the Pre Meas states will be set before every measurement. So in the example with four I2C Write values (Figure 7), there there are eight Pre Meas writes emitted. This may be fine for your application, or may even be preferred. But if you would like to minimize these "extra" writes, you can put your measurements into a Measure Sequence group. This will treat these measurements as one event and only create one Pre Meas before each Sequence of measurements. The sequence of the buttons in the group are compiled the same as in the Pre Meas or Post Meas groups; executed Left to Right, top/bottom is irrelevant, so be sure to move the first measurement slightly to the left of the 2nd (and so on) if arranging the buttons vertically.
Follow the steps below to Sweep Register Values and make Multiple Measurements:
- Start with a test panel that works (SPI emit in a Pre Meas group) as shown in Figure 2.
- Change Pre-Meas value to Symbolic by selecting StaticDigital - I2C Write and choose Symbolic from the right mouse button menu.
- To open a open a Select Symbol prompt with a list of symbols found in your testplan as shown in Figure 3.
- Select the asterisk "*" symbol and choose the select button as shown in Figure 4.
- The I2C Write button now has a green background with the asterisk as the value (Figure 5).
- Now put your list of I2C Write values in the panel like shown in Figure 6 to create a Pre Meas > I2C Write for every testplan state/measure.
- If more than one measure button is needed (like Figure 6), then compile and view Debug > Delta Settings to see how the test panel is compiled (See Figure 7). Notice that there are 8 measurements and the I2C Write is emitted twice, once before each measurement.
- Select both Measurements and choose Group > Measure Sequence to avoid extra I2C writes.
- Now compile, and see Debug > Delta Settings to see how the test panel is compiled (See Figure 8). Notice that there are 4 measurements and the I2C Write only once before both measurements.
Figure 1: BAD Example - Multiple Value I2CWrite (outside of a Pre Meas Group)
Figure 2: I2C Write in a Pre Meas group
Figure 3: Choose Symbolic from right mouse button menu
Figure 4: Choose asterisk (*) character from Select Symbol prompt
Figure 5: I 2 C Write button is * with green background
Figure 6: Add I 2 C Write button in the test panel with the desired values
Figure 7: Test Panel with two measurements
Figure 8: Delta Settings, Showing 8 Measurements
(2 measurements) X (4 values) = 8 PreMeasures
Figure 9: Measure Sequence Group
Figure 10: Delta Settings, Showing 4 Measurements