SLOS879C April 2014 – June 2025 DRV2625
PRODUCTION DATA
The waveform sequencer queues waveform identifiers for playback. Eight sequence registers queue up to eight waveforms for sequential playback. A waveform identifier is an integer value referring to the index position of a waveform in the internal library. Once the user has selected the Waveform Playback as the process to run in the MODE[1:0] parameter, playback begins at WAV_FRM_SEQ1 when the user triggers the process (either with the GO bit or externally, if configured to do so). When playback of that waveform ends, the waveform sequencer plays the waveform identifier held in WAV_FRM_SEQ2 if the next waveform is non-zero. The waveform sequencer continues in this way until the sequencer reaches an identifier value of zero or until all eight identifiers are played, whichever scenario is reached first.
The waveform identifier range is 1 to 127. The MSB of each sequence register can implement a delay between sequence waveforms. When the MSB is high, bits [6:0] indicate the length of the wait time. The wait time for that step then becomes WAV_FRM_SEQ[6:0] × 10ms.
The DRV2625 allows for looping each waveform a number of times before moving onto the next waveform identifier. The waveform-looping functionality can be configured by the WAV_SEQ_LOOP parameters.
The DRV2625 also allows for looping the entire waveform sequencer by configuring the WAV_SEQ_MAIN parameter. In this case, the waveform sequencer loops all valid WAV_FRM_SEQn identifiers according to the number specified in the WAV_SEQ_MAIN. For example, if the first and second identifiers are valid (for example 1 and 2), the third identifier is 0 (signaling to stop), and the WAV_SEQ_MAIN is configured to loop once (play the waveform sequence twice), then the DRV2625 device plays waveform 1, then waveform 2, then waveform 1 then waveform 2, and then go to standby.