Difference between revisions of "Component: DAC (AD5662) (Analog Output)"
From Flowcode Help
Jump to navigationJump to searchLine 1: | Line 1: | ||
− | + | {| style="width:50%" | |
− | |||
− | {| | ||
|- | |- | ||
− | | width="20%" style="color: gray;" | Author | + | | width="20%" style="color:gray;" | Author |
| Matrix TSL | | Matrix TSL | ||
|- | |- | ||
− | | width="20%" style="color: gray;" | Version | + | | width="20%" style="color:gray;" | Version |
− | | 1.0 | + | | 1.0 |
|- | |- | ||
− | | width="20%" style="color: gray;" | Category | + | | width="20%" style="color:gray;" | Category |
| Analog Output | | Analog Output | ||
|} | |} | ||
− | + | ==DAC (AD5662) component== | |
− | == | ||
16-bit external DAC connected to the microcontroller using SPI. | 16-bit external DAC connected to the microcontroller using SPI. | ||
==Detailed description== | ==Detailed description== | ||
+ | |||
+ | |||
===Overview=== | ===Overview=== | ||
Line 36: | Line 35: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
This example reads a potentiometer that is connected across the supply voltage. | This example reads a potentiometer that is connected across the supply voltage. | ||
Line 44: | Line 45: | ||
==Downloadable macro reference== | ==Downloadable macro reference== | ||
− | === | + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |
− | Outputs a value to the DAC, | + | |- |
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''OutputDAC''' | ||
+ | |- | ||
+ | | colspan="2" | Outputs a value to the DAC, | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
+ | | width="90%" | Output | ||
+ | |- | ||
+ | | colspan="2" | Range: 0-65535 / 0=0V / 65535=VCC | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
− | :[[ | + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |
− | :: | + | |- |
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise''' | ||
+ | |- | ||
+ | | colspan="2" | Initialise the SPI bus ready for communications, | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | '''Return | + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''BuzzerOn''' | ||
+ | |- | ||
+ | | colspan="2" | Switch On the Buzzer | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''BuzzerOnDelay''' | ||
+ | |- | ||
+ | | colspan="2" | Switch the Buzzer on for a fixed amount of time | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
+ | | width="90%" | Time | ||
+ | |- | ||
+ | | colspan="2" | Time in milliseconds to keep the buzzer on | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
− | |||
− | ''' | + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''WriteLEDs''' | ||
+ | |- | ||
+ | | colspan="2" | Allows control of all 8-LEDs on the front of the Formula Flowcode. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" | LED_Byte | ||
+ | |- | ||
+ | | colspan="2" | | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
+ | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
+ | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise''' | ||
+ | |- | ||
+ | | colspan="2" | Starts up the formula flowcode PWM for motor control and performs the wait for button press | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==Property reference== | ==Property reference== | ||
− | |||
− | + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | |
− | + | |- | |
− | + | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | |
− | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | |
− | + | |- | |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |
− | + | | width="90%" | Channel | |
− | Prescale option selector | + | |- |
− | + | | colspan="2" | SPI Channel selector | |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |
− | + | | width="90%" | Prescale | |
− | + | |- | |
− | SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode. | + | | colspan="2" | Prescale option selector |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |
− | + | | width="90%" | MOSI | |
− | + | |- | |
− | + | | colspan="2" | SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode. | |
− | SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode. | + | |- |
− | + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |
− | + | | width="90%" | MISO | |
− | + | |- | |
− | + | | colspan="2" | SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode. | |
− | + | |- | |
− | SPI Clock Pin CLK - The Clock signal is driven by the SPI master. | + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] |
− | + | | width="90%" | CLK | |
− | + | |- | |
− | + | | colspan="2" | SPI Clock Pin CLK - The Clock signal is driven by the SPI master. | |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |
− | Chip Select / Slave Select Pin | + | | width="90%" | CS / SS |
− | + | |- | |
− | Master Mode: General purpose output pin used to select the remote SPI device. | + | | colspan="2" | Chip Select / Slave Select Pin Master Mode: General purpose output pin used to select the remote SPI device. Slave Mode: Hardware chip select pin input used to select the SPI device. |
− | + | |- | |
− | Slave Mode: Hardware chip select pin input used to select the SPI device. | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] |
− | + | | width="90%" | Console Data | |
− | + | |- | |
− | + | | colspan="2" | Selects if the console data is automatically generated or not | |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |
− | + | | width="90%" | Scope Traces | |
− | + | |- | |
− | + | | colspan="2" | Selects if the scope traces are automatically generated or not | |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |
− | + | | width="90%" | API | |
− | + | |- | |
− | + | | colspan="2" | | |
− | Selects if the console data is automatically generated or not | + | |- |
− | + | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]] | |
− | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections''' | |
− | + | |- | |
− | + | |- | |
− | + | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]] | |
− | Selects if the scope traces are automatically generated or not | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations''' |
− | + | |- | |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |
− | + | | width="90%" | Data Recorder Trace | |
− | + | |- | |
− | + | | colspan="2" | | |
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | Simulate Comms | ||
+ | |- | ||
+ | | colspan="2" | | ||
+ | |} |
Revision as of 21:05, 16 November 2021
Author | Matrix TSL |
Version | 1.0 |
Category | Analog Output |
Contents
DAC (AD5662) component
16-bit external DAC connected to the microcontroller using SPI.
Detailed description
Overview
The AD5662 is a 3V/5V general purpose SPI compatible, high-resolution digital to analog converter (DAC), capable of generating a rail-to-rail voltage output.
With 16-Bit resolution, the AD5662 is capable of finely tuning the voltage output across 65,536 steps, with an individual step voltage of 5/65536 = 0.0000763 volts DC.
The AD5662 requires an external reference voltage to set the output range of the DAC.
Pin reference from the datasheet:
Circuit Diagram
Examples
This example reads a potentiometer that is connected across the supply voltage. The output from the DAC should mimic the voltage that's across ADC pin & GND.
Downloadable macro reference
![]() |
OutputDAC |
Outputs a value to the DAC, | |
![]() |
Output |
Range: 0-65535 / 0=0V / 65535=VCC | |
![]() |
Return |
![]() |
Initialise |
Initialise the SPI bus ready for communications, | |
![]() |
Return |
![]() |
BuzzerOn |
Switch On the Buzzer | |
![]() |
Return |
![]() |
BuzzerOnDelay |
Switch the Buzzer on for a fixed amount of time | |
![]() |
Time |
Time in milliseconds to keep the buzzer on | |
![]() |
Return |
![]() |
WriteLEDs |
Allows control of all 8-LEDs on the front of the Formula Flowcode. | |
![]() |
LED_Byte |
![]() |
Return |
![]() |
Initialise |
Starts up the formula flowcode PWM for motor control and performs the wait for button press | |
![]() |
Return |