# DAC

Compatible with:
DOS Maximite CMM MM150 MM170 MM+ MMX Picromite ArmiteL4 Armite F4 ArmiteH7 Picomite CMM2

Syntax:
DAC n, voltage
DAC START frequency, DAC1array%() [,DAC2array%()] [,interrupt]
DAC STOP

Description:
DAC n, voltage
Sets the DAC channel (1 or 2) to the voltage requested. This command cannot be used if the DACs are in use for audio output.

DAC START frequency, DAC1array%() [,DAC2array%()] [,interrupt]
Sets up the DAC to create an arbitrary waveform. DAC1array%() and optional DAC2array%() should contain numbers in the range 0-4095 to suit the 12-bit DACs.
The output occurs in the background and control returns to MMBasic immediately.
The output runs continuously unless the optional interrupt is specified. In this case the contents of the array(s) is played once and the interrupt is triggered on completion.
The software automatically and separately uses the number of items in each of the arrays to drive the DACs.
The frequency is the rate at which the DACs change value. The maximum frequency is 700KHz.
As an example if there are 180 items in the array c%() which are displayed at a frequency of 100,000 Hz this will give a waveform frequency of 100,000/180 = 555Hz.
If there are 90 items in the array d%() at the same frequency of 100,000 Hz this will at the same time produce a waveform frequency of 100,000/90 = 1111Hz.

DAC STOP
Stops the DAC output and returns the DACs to normal use.

Last edited: 29 September, 2020