Difference between revisions of "Component: DAC (MCP47x6) (MCP47x6) (Analog Output)"
From Flowcode Help
Jump to navigationJump to search (XML import) |
|||
| 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== | ==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== | ||
| − | === | + | {| 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 | ||
| + | |- | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | |||
| − | 10- | + | {| 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. | ||
| + | |- | ||
| + | |- | ||
| + | | 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;" | '''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'' | ||
| + | |} | ||
| − | |||
| − | |||
| + | {| 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 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'' | ||
| + | |} | ||
| − | |||
| − | :'' | + | {| 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. | ||
| + | |- | ||
| + | |- | ||
| + | | 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;" | |
| − | + | |- | |
| − | 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''' | |
| − | + | |- | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |
| − | + | | width="90%" | DAC IC | |
| − | Sets the pull down resistance when the IC's DAC output is disabled. | + | |- |
| − | + | | 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 | |
| − | + | |- | |
| − | Sets the Voltage reference option | + | | 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 | |
| − | Provides a 1x or 2x gain on the output. For 2x gain the vref must be max 1/2 VCC. | + | |- |
| − | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |
| − | + | | 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. | |
| − | + | |- | |
| − | Reference Voltage, Used to calculate the Voltage resolution. | + | | width="10%" align="center" | [[File:Fc9-type-15-icon.png]] |
| − | + | | width="90%" | Vref Voltage | |
| − | + | |- | |
| − | + | | colspan="2" | Reference Voltage, Used to calculate the Voltage resolution. | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | |
| − | Number of discrete output states available from the DAC. | + | | width="90%" | Steps |
| − | + | |- | |
| − | + | | 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 | |
| − | Number of digital control bits | + | |- |
| − | + | | colspan="2" | Number of digital control bits | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-10-icon.png]] | |
| − | + | | width="90%" | Resolution | |
| − | + | |- | |
| − | Maximum output resolution based on number of control bits. | + | | 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. | |
| − | Specifies the Resolution per digital bit in terms of Voltage. | + | |- |
| − | + | | 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 | |
| − | + | |- | |
| − | 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]] | |
| − | Channel selection | + | | width="90%" | SDA |
| − | + | |- | |
| − | + | | colspan="2" | Pin used for SDA (data signal) | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |
| − | + | | width="90%" | SCL | |
| − | Pin used for SDA (data signal) | + | |- |
| − | + | | colspan="2" | Pin used for SCL (clock signal) | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |
| − | + | | width="90%" | Stop Delay | |
| − | + | |- | |
| − | Pin used for SCL (clock signal) | + | | 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 | |
| − | 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-14-icon.png]] | |
| − | a 10ms delay between an I2C stop event and the next I2C start event. | + | | width="90%" | Baud Rate |
| − | + | |- | |
| − | + | | colspan="2" | Baud rate to be used | |
| − | + | |- | |
| − | Most modern microcontrollers will not have a problem so this property can be disabled to speed up the | + | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]] |
| − | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections''' | |
| − | I2C communications. | + | |- |
| − | + | |- | |
| − | + | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]] | |
| − | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations''' | |
| − | + | |- | |
| − | + | |- | |
| − | Baud rate | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] |
| − | + | | width="90%" | Simulate Comms | |
| − | + | |- | |
| − | + | | colspan="2" | | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |
| − | + | | width="90%" | DAC Output Scope Trace | |
| − | + | |- | |
| − | + | | colspan="2" | Selects if the scope traces are automatically generated or not | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |
| − | + | | width="90%" | Scope Traces | |
| − | Selects if the scope traces are automatically generated or not | + | |- |
| − | + | | colspan="2" | Selects if the component pin connections are automatically generated on the data recorder window or not. Yes: Automatically add the component pins to a group on the data recorder which will reflect the sim data during simultion. No: Do not show the pin signals on the data recorder window. | |
| − | + | |- | |
| − | + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | |
| − | + | | width="90%" | Console Data | |
| − | + | |- | |
| − | Selects if the component pin connections are automatically generated on the data recorder window or not. | + | | colspan="2" | Selects if the console data is automatically generated or not |
| − | + | |- | |
| − | Yes: Automatically add the component pins to a group on the data recorder which will reflect the sim data during simultion. | + | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] |
| − | + | | width="90%" | API | |
| − | No: Do not show the pin signals on the data recorder window. | + | |- |
| − | + | | colspan="2" | Specifies the injector component on the panel to interact with to provide comms simulation. | |
| − | + | |} | |
| − | |||
| − | |||
| − | |||
| − | Selects if the console data is automatically generated or not | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | Specifies the injector component on the panel to interact with to provide comms simulation. | ||
Revision as of 21:05, 16 November 2021
| Author | Matrix TSL |
| Version | 1.0 |
| Category | Analog Output |
Contents
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
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 | |
| DAC_Value | |
| The value to output to the DAC | |
| Return | |
| Disable | |
| Disables the DAC output. | |
| Return | |
| Enable | |
| Enables the DAC Output. | |
| Return | |
| 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 | |
| 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. | |
| 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 | |