Jump to content

Component: Data Transfer (API I2C) (): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead""
 
(8 intermediate revisions by 2 users not shown)
Line 22: Line 22:


==Detailed description==
==Detailed description==




Line 48: Line 50:


==Examples==
==Examples==




Line 75: Line 79:




==Macro reference==


{| 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;" | '''InitialiseInjector'''
|-
| colspan="2" | Sets up the injector ready to receive commands or send data 
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | InjectorName
|-
| colspan="2" | Name of the console that will be created 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| 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;" | '''TxByte'''
|-
| colspan="2" | Puts a byte onto the comms channel. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | DataByte
|-
| 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;" | '''RxByte'''
|-
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
| 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;" | '''GetConsoleHandle'''
|-
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
==Macro reference==
 
===ChangeState===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ChangeState'''
| width="90%" class="mtx-class-macrohead" | '''ChangeState'''
|-
|-
| colspan="2" | Sets the state of the bus. SPI - Controls the chip select pin I2C - Controls the start/restart/stop status 
| colspan="2" | Sets the state of the bus. SPI - Controls the chip select pin I2C - Controls the start/restart/stop status 
Line 157: Line 110:




 
===GetConsoleHandle===
 
{| class="mtx-class-macrotable wikitable"
==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-17-icon.png]]
| width="90%" | SCADA Slave
|-
| colspan="2" | SCADA Slave component to use to pipe data to a physical SPI bus 
|}==Macro reference==
 
{| 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;" | '''InitialiseInjector'''
|-
| colspan="2" | Sets up the injector ready to receive commands or send data 
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | InjectorName
|-
| colspan="2" | Name of the console that will be created 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| 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;" | '''TxByte'''
|-
| colspan="2" | Puts a byte onto the comms channel. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | DataByte
|-
| 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;" | '''RxByte'''
|-
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
| 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="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetConsoleHandle'''
| width="90%" class="mtx-class-macrohead" | '''GetConsoleHandle'''
|-
|-
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
Line 235: Line 124:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===InitialiseInjector===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ChangeState'''
|-
| colspan="2" | Sets the state of the bus. SPI - Controls the chip select pin I2C - Controls the start/restart/stop status 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | State
|-
| colspan="2" | SPI: 0=CSLow, 1=CSHigh  I2C: 0=Stop, 1=Start, 2=Restart, 3=LastRx 
|-
| 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="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-17-icon.png]]
| width="90%" | SCADA Slave
|-
| colspan="2" | SCADA Slave component to use to pipe data to a physical SPI bus 
|}==Macro reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''InitialiseInjector'''
| width="90%" class="mtx-class-macrohead" | '''InitialiseInjector'''
|-
|-
| colspan="2" | Sets up the injector ready to receive commands or send data 
| colspan="2" | Sets up the injector ready to receive commands or send data 
Line 287: Line 143:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===RxByte===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''TxByte'''
|-
| colspan="2" | Puts a byte onto the comms channel. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | DataByte
|-
| 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="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RxByte'''
| width="90%" class="mtx-class-macrohead" | '''RxByte'''
|-
|-
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
Line 318: Line 157:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===TxByte===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetConsoleHandle'''
|-
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE
| 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;" | '''ChangeState'''
|-
| colspan="2" | Sets the state of the bus. SPI - Controls the chip select pin I2C - Controls the start/restart/stop status 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | State
|-
| colspan="2" | SPI: 0=CSLow, 1=CSHigh  I2C: 0=Stop, 1=Start, 2=Restart, 3=LastRx 
|-
| 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="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-17-icon.png]]
| width="90%" | SCADA Slave
|-
| colspan="2" | SCADA Slave component to use to pipe data to a physical SPI bus 
|}==Macro reference==
 
{| 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;" | '''InitialiseInjector'''
|-
| colspan="2" | Sets up the injector ready to receive commands or send data 
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | InjectorName
|-
| colspan="2" | Name of the console that will be created 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| 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="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''TxByte'''
| width="90%" class="mtx-class-macrohead" | '''TxByte'''
|-
|-
| colspan="2" | Puts a byte onto the comms channel. 
| colspan="2" | Puts a byte onto the comms channel. 
Line 399: Line 174:
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| 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;" | '''RxByte'''
|-
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
| 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;" | '''GetConsoleHandle'''
|-
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE
| 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;" | '''ChangeState'''
|-
| colspan="2" | Sets the state of the bus. SPI - Controls the chip select pin I2C - Controls the start/restart/stop status 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | State
|-
| colspan="2" | SPI: 0=CSLow, 1=CSHigh  I2C: 0=Stop, 1=Start, 2=Restart, 3=LastRx 
|-
| 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;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|-
|-

Latest revision as of 14:22, 13 July 2026

Author Matrix Ltd
Version 1.2
Category


Data Transfer (API I2C) component

Comms data injector to allow a I2C bus peripheral to be attached to a comms component. The component will forward any byte transactions through to a SCADA Slave enabled hardware. Enabling the Flowcode simulation runtime to directly drive a physical I2C bus.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_InjectorSCADAI2C.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_InjectorSCADAI2C.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples







Macro reference

ChangeState

ChangeState
Sets the state of the bus. SPI - Controls the chip select pin I2C - Controls the start/restart/stop status 
- BYTE State
SPI: 0=CSLow, 1=CSHigh I2C: 0=Stop, 1=Start, 2=Restart, 3=LastRx 
- VOID Return


GetConsoleHandle

GetConsoleHandle
Gets the handle to the console allowing data displaying on the panel etc. 
- HANDLE Return


InitialiseInjector

InitialiseInjector
Sets up the injector ready to receive commands or send data 
- STRING InjectorName
Name of the console that will be created 
- BYTE Return


RxByte

RxByte
Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
- UINT Return


TxByte

TxByte
Puts a byte onto the comms channel. 
- BYTE DataByte
 
- VOID Return


Property reference

Properties
SCADA Slave
SCADA Slave component to use to pipe data to a physical SPI bus