Jump to content

Component: DAC Dual (MCP48x2) (Analog Output): Difference between revisions

From Flowcode Help
XML import
 
No edit summary
Line 1: Line 1:
 
{| style="width:50%"
 
{| 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 (Release)
| 1.0
|-
|-
| width="20%" style="color: gray;" | Category
| width="20%" style="color:gray;" | Category
| Analog Output
| Analog Output
|}
|}




==DAC Dual component==
Component to drive a dual digital to analogue converter (DAC) IC from Microchip via an SPI interface. Compatible with MCP4802 (8-Bit), MCP4812 (10-Bit) and MCP4822 (12-Bit) devices.
==Detailed description==


==[[File:Component Icon f484e96a_af4f_434e_a002_70d3f4315dfb.png|Image]] DAC Dual (MCP48x2) component==
''No detailed description exists yet for this component''
Component to drive a dual digital to analogue converter (DAC) IC from Microchip via an SPI interface.
Compatible with MCP4802 (8-Bit), MCP4812 (10-Bit) and MCP4822 (12-Bit) devices.


==Examples==
==Examples==
''<span style="color:red;">No additional examples</span>''
''<span style="color:red;">No additional examples</span>''


Line 25: Line 27:
==Downloadable macro reference==
==Downloadable macro reference==


===<span style="font-weight: normal;"><u><tt>SetOutput</tt></u></span>===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Sets the output voltage of 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;" | '''SetOutput'''
|-
| colspan="2" | Sets the output voltage of the DAC 8-Bit: Range 0-255 10-Bit: Range 0-1023 12-Bit: Range 0-4095&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Channel
|-
| colspan="2" | 0=DAC Channel 0 , 1=DAC Channel 1&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | DAC_Value
|-
| colspan="2" | The value to output to the DAC&nbsp;
|-
| 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''
|}


8-Bit: Range 0-255


10-Bit: Range 0-1023
{| 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;" | '''ControlPins'''
|-
| colspan="2" | Allows Shutdown (SHDN) and Latch (LDAC) pins to be controlled directly if enabled.&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | Shutdown
|-
| colspan="2" | 0 = Shutdown Device, 1 = Device Active&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | Latch
|-
| colspan="2" | 0 = Data output driven from DAC register, 1 = Data output locked&nbsp;
|-
| 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''
|}


12-Bit: Range 0-4095


'''Parameters'''
{| 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;" | '''Disable'''
|-
| colspan="2" | Disables the DAC output.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Channel
|-
| colspan="2" | 0=DAC Channel 0 , 1=DAC Channel 1&nbsp;
|-
| 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''
|}


:[[Variable Types|BYTE]] ''Channel''
::0=DAC Channel 0 , 1=DAC Channel 1


:[[Variable Types|UINT]] ''DAC_Value''
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
::The value to output 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;" | '''Enable'''
|-
| colspan="2" | Enables the DAC Output.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Channel
|-
| colspan="2" | 0=DAC Channel 0 , 1=DAC Channel 1&nbsp;
|-
| 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 value'''
{| 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" | Configures the SPI peripheral ready for communications and initialises the internal variables. DAC needs to be enabled before any output voltage can be generated.&nbsp;
|-
|-
| 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''
|}


:''This call does not return a value''


{| 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" | Configures the SPI peripheral ready for communications and initialises the internal variables. DAC needs to be enabled before any output voltage can be generated.&nbsp;
|-
|-
| 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''
|}


===<span style="font-weight: normal;"><u><tt>ControlPins</tt></u></span>===
Allows Shutdown (SHDN) and Latch (LDAC) pins to be controlled directly if enabled.


'''Parameters'''
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
:[[Variable Types|BOOL]] ''Shutdown''
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
::0 = Shutdown Device, 1 = Device Active
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''WriteLEDs'''
 
|-
:[[Variable Types|BOOL]] ''Latch''
| colspan="2" | Allows control of all 8-LEDs on the front of the Formula Flowcode.&nbsp;
::0 = Data output driven from DAC register, 1 = Data output locked
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
'''Return value'''
| width="90%" | LED_Byte
 
|-
:''This call does not return a value''
| colspan="2" | &nbsp;
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
===<span style="font-weight: normal;"><u><tt>Disable</tt></u></span>===
| width="90%" style="border-top: 2px solid #000;" | ''Return''
Disables the DAC output.
|}
 
'''Parameters'''
 
:[[Variable Types|BYTE]] ''Channel''
::0=DAC Channel 0 , 1=DAC Channel 1
 
 
'''Return value'''
 
:''This call does not return a value''
 
 
===<span style="font-weight: normal;"><u><tt>Enable</tt></u></span>===
Enables the DAC Output.
 
'''Parameters'''
 
:[[Variable Types|BYTE]] ''Channel''
::0=DAC Channel 0 , 1=DAC Channel 1
 
 
'''Return value'''
 
:''This call does not return a value''
 
 
===<span style="font-weight: normal;"><u><tt>Initialise</tt></u></span>===
Configures the SPI peripheral ready for communications and initialises the internal variables. DAC needs to be enabled before any output voltage can be generated.
 
'''Parameters'''
 
:''This macro has no parameters''
 
 
'''Return value'''
 
:''This call does not return a value''




{| 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&nbsp;
|-
|-
| 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''
|}


==Simulation macro reference==


''This component does not contain any simulation macros''




==Property reference==
==Property reference==
<span style="font-weight: normal;"><u>DAC IC</u></span>


This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''DAC_IC''.
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
Selects which DAC IC is connected and therefore the bit depth available.
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
<span style="font-weight: normal;"><u>Gain Option</u></span>
|-
 
|-
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''GainOP''.
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | DAC IC
Selects the maximum reference value for the DAC
|-
 
| colspan="2" | Selects which DAC IC is connected and therefore the bit depth available.&nbsp;
<span style="font-weight: normal;"><u>Vref Voltage</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
This property is of type ''Floating point'' and can be referenced with the variable name ''VrefVol''.
| width="90%" | Gain Option
 
|-
Reference Voltage, Used to calculate the Voltage resolution.
| colspan="2" | Selects the maximum reference value for the DAC&nbsp;
 
|-
<span style="font-weight: normal;"><u>Steps</u></span>
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Vref Voltage
This property is of type ''Unsigned integer'' and can be referenced with the variable name ''Steps''.
|-
 
| colspan="2" | Reference Voltage, Used to calculate the Voltage resolution.&nbsp;
Number of discrete output states available from the DAC.
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
<span style="font-weight: normal;"><u>Control Bits</u></span>
| width="90%" | Steps
 
|-
This property is of type ''Signed integer'' and can be referenced with the variable name ''BITS''.
| colspan="2" | Number of discrete output states available from the DAC.&nbsp;
 
|-
Number of digital control bits
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Control Bits
<span style="font-weight: normal;"><u>Resolution</u></span>
|-
 
| colspan="2" | Number of digital control bits&nbsp;
This property is of type ''Line of text'' and can be referenced with the variable name ''Res''.
|-
 
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
Maximum output resolution based on number of control bits.
| width="90%" | Resolution
 
|-
<span style="font-weight: normal;"><u>Voltage Resolution</u></span>
| colspan="2" | Maximum output resolution based on number of control bits.&nbsp;
 
|-
This property is of type ''Floating point'' and can be referenced with the variable name ''VoltRes''.
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Voltage Resolution
Specifies the Resolution per digital bit in terms of Voltage.
|-
 
| colspan="2" | Specifies the Resolution per digital bit in terms of Voltage.&nbsp;
<span style="font-weight: normal;"><u>Channel</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_spi1::CHANNEL''.
| width="90%" | Channel
 
|-
SPI Channel selector
| colspan="2" | SPI Channel selector&nbsp;
 
|-
<span style="font-weight: normal;"><u>Prescale</u></span>
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Prescale
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_spi1::PR_SCALE''.
|-
 
| colspan="2" | Prescale option selector&nbsp;
Prescale option selector
|-
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
<span style="font-weight: normal;"><u>MOSI</u></span>
| width="90%" | MOSI
 
|-
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_spi1::MOSI''.
| colspan="2" | SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode.&nbsp;
 
|-
SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode.
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | MISO
<span style="font-weight: normal;"><u>MISO</u></span>
|-
 
| colspan="2" | SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode.&nbsp;
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_spi1::MISO''.
|-
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode.
| width="90%" | CLK
 
|-
<span style="font-weight: normal;"><u>CLK</u></span>
| colspan="2" | SPI Clock Pin CLK - The Clock signal is driven by the SPI master.&nbsp;
 
|-
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_spi1::CLK''.
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | CS / SS
SPI Clock Pin CLK - The Clock signal is driven by the SPI master.
|-
 
| 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. &nbsp;
<span style="font-weight: normal;"><u>CS / SS</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_spi1::SS''.
| width="90%" | Use SHDN Pin
 
|-
Chip Select / Slave Select Pin  
| colspan="2" | Allows the SHDN pin to be driven from an output pin on the microcontroller. If not used then tie the SHDN pin to VCC to allow the DAC to function.&nbsp;
 
|-
Master Mode: General purpose output pin used to select the remote SPI device.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Use LDAC Pin
Slave Mode: Hardware chip select pin input used to select the SPI device.
|-
 
| colspan="2" | Allows the LDAC pin to be driven from an output pin on the microcontroller. If not used then tie the LDAC pin to GND to allow the DAC to function.&nbsp;
<span style="font-weight: normal;"><u>Use SHDN Pin</u></span>
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
This property is of type ''True or false'' and can be referenced with the variable name ''UseSHDN''.
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections'''  
 
|-
Allows the SHDN pin to be driven from an output pin on the microcontroller.
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
If not used then tie the SHDN pin to VCC to allow the DAC to function.
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations'''  
 
|-
<span style="font-weight: normal;"><u>Use LDAC Pin</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
This property is of type ''True or false'' and can be referenced with the variable name ''UseLDAC''.
| width="90%" | Simulation Comms
 
|-
Allows the LDAC pin to be driven from an output pin on the microcontroller.
| colspan="2" | &nbsp;
 
|-
If not used then tie the LDAC pin to GND to allow the DAC to function.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | DAC Output Scope Traces
<span style="font-weight: normal;"><u>DAC Output Scope Traces</u></span>
|-
 
| colspan="2" | Selects if the scope traces are automatically generated or not&nbsp;
This property is of type ''True or false'' and can be referenced with the variable name ''ScopeTraces''.
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
Selects if the scope traces are automatically generated or not
| width="90%" | SPI Scope Traces
 
|-
<span style="font-weight: normal;"><u>SPI Scope Traces</u></span>
| colspan="2" | Selects if the scope traces are automatically generated or not&nbsp;
 
|-
This property is of type ''True or false'' and can be referenced with the variable name ''cal_spi1::ScopeTraces''.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | SPI Console Data
Selects if the scope traces are automatically generated or not
|-
 
| colspan="2" | Selects if the console data is automatically generated or not&nbsp;
<span style="font-weight: normal;"><u>SPI Console Data</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
This property is of type ''True or false'' and can be referenced with the variable name ''cal_spi1::ConsoleData''.
| width="90%" | API
 
|-
Selects if the console data is automatically generated or not
| colspan="2" | &nbsp;
 
|}
<span style="font-weight: normal;"><u>Injector</u></span>
 
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_spi1::Injector''.
 
''<span style="color:red;">No additional information</span>''

Revision as of 21:05, 16 November 2021

Author Matrix TSL
Version 1.0
Category Analog Output


DAC Dual component

Component to drive a dual digital to analogue converter (DAC) IC from Microchip via an SPI interface. Compatible with MCP4802 (8-Bit), MCP4812 (10-Bit) and MCP4822 (12-Bit) devices.

Detailed description

No detailed description exists yet for this component

Examples

No additional examples


Downloadable macro reference

SetOutput
Sets the output voltage of the DAC 8-Bit: Range 0-255 10-Bit: Range 0-1023 12-Bit: Range 0-4095 
- BYTE Channel
0=DAC Channel 0 , 1=DAC Channel 1 
- UINT DAC_Value
The value to output to the DAC 
- VOID Return


ControlPins
Allows Shutdown (SHDN) and Latch (LDAC) pins to be controlled directly if enabled. 
[[File:]] - Shutdown
0 = Shutdown Device, 1 = Device Active 
[[File:]] - Latch
0 = Data output driven from DAC register, 1 = Data output locked 
- VOID Return


Disable
Disables the DAC output. 
- BYTE Channel
0=DAC Channel 0 , 1=DAC Channel 1 
- VOID Return


Enable
Enables the DAC Output. 
- BYTE Channel
0=DAC Channel 0 , 1=DAC Channel 1 
- VOID Return


Initialise
Configures the SPI peripheral ready for communications and initialises the internal variables. DAC needs to be enabled before any output voltage can be generated. 
- VOID Return


Initialise
Configures the SPI peripheral ready for communications and initialises the internal variables. DAC needs to be enabled before any output voltage can be generated. 
- VOID Return


WriteLEDs
Allows control of all 8-LEDs on the front of the Formula Flowcode. 
- BYTE LED_Byte
 
- VOID Return


Initialise
Starts up the formula flowcode PWM for motor control and performs the wait for button press 
- VOID Return



Property reference

Properties
DAC IC
Selects which DAC IC is connected and therefore the bit depth available. 
Gain Option
Selects the maximum reference value for the DAC 
Vref Voltage
Reference Voltage, Used to calculate the Voltage resolution. 
Steps
Number of discrete output states available from the DAC. 
Control Bits
Number of digital control bits 
Resolution
Maximum output resolution based on number of control bits. 
Voltage Resolution
Specifies the Resolution per digital bit in terms of Voltage. 
Channel
SPI Channel selector 
Prescale
Prescale option selector 
MOSI
SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode. 
MISO
SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode. 
CLK
SPI Clock Pin CLK - The Clock signal is driven by the SPI master. 
CS / SS
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.  
Use SHDN Pin
Allows the SHDN pin to be driven from an output pin on the microcontroller. If not used then tie the SHDN pin to VCC to allow the DAC to function. 
Use LDAC Pin
Allows the LDAC pin to be driven from an output pin on the microcontroller. If not used then tie the LDAC pin to GND to allow the DAC to function. 
Connections
Simulations
Simulation Comms
 
DAC Output Scope Traces
Selects if the scope traces are automatically generated or not 
SPI Scope Traces
Selects if the scope traces are automatically generated or not 
SPI Console Data
Selects if the console data is automatically generated or not 
API