General -

All of the following tips assume that you have created an intermediate class with individual member functions to interact with the API methods and properties. This practice is very much recommended.

  • Bundle various parser commands, API method calls and property definitions in your intermediate functions for related DSM activities. For example to stop memory, you would use the stop method, then the flush method. For examples of bundling commands, please take a look at the example MyDSM class in the implementation file below. Some of the functions which use bundling include: download( ), startMem( ), stopMem( ), setToMaster( ), and setToSlave( ).
  • Be sure to have the general order of commands as listed on the Basic Structure page in the Getting Started section.
  • It is recommended that you always stop the memory at the beginning of a new chirp definition.
  • When downloading data into the DSM, create a delay between the time you start downloading and the time you start the memory. This will ensure that all of the data that you have stored on the computer will be downloaded correctly to the DSM. For longer Memory Depth chirps, this is especially important. The delay will be dependent on your system resources. You can experiment with the delay time by using the DSM GUI by downloading waveforms of various Memory Depth.
  • As already stated on the data_length properties page, when you want to perform a duty cycle chirp and the total number of frequencies is equal to one of the nine Memory Depth settings, you should turn off Data Length Enable and set the Data Length to the number of non-constant frequency points. If your total number of points is not equal to one of the nine Memory Depth settings, then you must either use the user_define_bulk or the user_define_file functions.