Component: DAC (MCP47x6) (MCP47x6) (Analog Output): Difference between revisions
Appearance
XML import |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (22 intermediate revisions by 2 users not shown) | |||
| Line 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 (MCP47x6) component== | |||
Component to drive a digital to analogue converter (DAC) IC from Microchip via an I2C interface. Compatible with MCP4706 (8-Bit), MCP4716 (10-Bit) and MCP4726 (12-Bit) devices. | |||
== | ==Detailed description== | ||
''No detailed description exists yet for this component'' | |||
==Examples== | |||
<span style=" | ''<span style="color:red;">No additional examples</span>'' | ||
==Macro reference== | |||
===Disable=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Disable''' | |||
|- | |||
| colspan="2" | Disables the DAC output. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
===Enable=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Enable''' | |||
|- | |||
| colspan="2" | Enables the DAC Output. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
===Initialise=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Initialise''' | |||
|- | |||
| colspan="2" | Configures the I2C peripheral ready for communications and initialises the internal variables. DAC needs to be enabled before any output voltage can be generated. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
===SetOutput=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''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 | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | DAC_Value | |||
|- | |||
| colspan="2" | The value to output to the DAC | |||
|- | |||
| 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== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Properties''' | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | DAC IC | |||
Pin used for SDA (data signal) | |- | ||
| colspan="2" | Selects which DAC IC is connected and therefore the bit depth available. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Disabled Pull Down | |||
|- | |||
Pin used for SCL (clock signal) | | colspan="2" | Sets the pull down resistance when the IC's DAC output is disabled. | ||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Voltage Reference | |||
|- | |||
| colspan="2" | Sets the Voltage reference option | |||
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not | |- | ||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
a 10ms delay between an I2C stop event and the next I2C start event. | | width="90%" | Gain Option | ||
|- | |||
| colspan="2" | Provides a 1x or 2x gain on the output. For 2x gain the vref must be max 1/2 VCC. | |||
|- | |||
Most modern microcontrollers will not have a problem so this property can be disabled to speed up the | | width="10%" align="center" | [[File:Fc9-type-15-icon.png]] | ||
| width="90%" | Vref Voltage | |||
I2C communications. | |- | ||
| colspan="2" | Reference Voltage, Used to calculate the Voltage resolution. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | |||
| width="90%" | Steps | |||
|- | |||
Baud rate option selector | | colspan="2" | Number of discrete output states available from the DAC. | ||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | |||
| width="90%" | Control Bits | |||
|- | |||
| colspan="2" | Number of digital control bits | |||
Baud rate to be used | |- | ||
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]] | |||
| width="90%" | Resolution | |||
|- | |||
| colspan="2" | Maximum output resolution based on number of control bits. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]] | |||
| width="90%" | Voltage Resolution | |||
|- | |||
| colspan="2" | Specifies the Resolution per digital bit in terms of Voltage. | |||
|- | |||
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" class="mtx-class-propfolder" | I2C Connections | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | User Address Bits | |||
|- | |||
| colspan="2" | Specifies the bottom three "user" bits of the I2C 7-bit address | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Channel | |||
|- | |||
| colspan="2" | Channel selection | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | SDA | |||
|- | |||
| colspan="2" | Pin used for SDA (data signal) | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | SCL | |||
|- | |||
| colspan="2" | Pin used for SCL (clock signal) | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |||
| width="90%" | Stop Delay | |||
|- | |||
| colspan="2" | On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Baud Select | |||
|- | |||
| colspan="2" | Baud rate option selector | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | |||
| width="90%" | Baud Rate | |||
|- | |||
| colspan="2" | Baud rate to be used | |||
|- | |||
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" class="mtx-class-propfolder" | Simulation | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |||
| width="90%" | Simulate Comms | |||
|- | |||
| colspan="2" | | |||
|} | |||
==Component Source Code== | |||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_DAC_MCP47x6.fcfx FC_Comp_Source_DAC_MCP47x6.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_DAC_MCP47x6.fcfx FC_Comp_Source_DAC_MCP47x6.fcfx] | |||
Latest revision as of 14:36, 13 July 2026
| Author | Matrix TSL |
| Version | 1.0 |
| Category | Analog Output |
DAC (MCP47x6) component
Component to drive a digital to analogue converter (DAC) IC from Microchip via an I2C interface. Compatible with MCP4706 (8-Bit), MCP4716 (10-Bit) and MCP4726 (12-Bit) devices.
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
Disable
| Disable | |
| Disables the DAC output. | |
| Return | |
Enable
| Enable | |
| Enables the DAC Output. | |
| Return | |
Initialise
| Initialise | |
| Configures the I2C peripheral ready for communications and initialises the internal variables. DAC needs to be enabled before any output voltage can be generated. | |
| Return | |
SetOutput
| SetOutput | |
| Sets the output voltage of the DAC 8-Bit: Range 0-255 10-Bit: Range 0-1023 12-Bit: Range 0-4095 | |
| DAC_Value | |
| The value to output to the DAC | |
| Return | |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_DAC_MCP47x6.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_DAC_MCP47x6.fcfx