|
|
| (10 intermediate revisions by 2 users not shown) |
| Line 22: |
Line 22: |
|
| |
|
| ==Detailed description== | | ==Detailed description== |
| | |
| | |
|
| |
|
|
| |
|
| Line 46: |
Line 48: |
|
| |
|
| ==Examples== | | ==Examples== |
| | |
| | |
|
| |
|
|
| |
|
| Line 73: |
Line 77: |
|
| |
|
| [[Wireless_LAN_Application_Guide | Wireless LAN Application Guide]] | | [[Wireless_LAN_Application_Guide | Wireless LAN Application Guide]] |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
|
| |
|
| ==Macro reference== | | ==Macro reference== |
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===AcceptClose=== |
| | {| 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;" | '''TxSendMyIP''' | | | width="90%" class="mtx-class-macrohead" | '''AcceptClose''' |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 4 bytes of data representing this Internet E-Block's IP address as specified in the component's property page.
| |
| |- | | |- |
| | | colspan="2" | Close the accept socket |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 94: |
Line 104: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===AcceptOpen=== |
| | {| 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;" | '''RxMatchMyIP''' | | | width="90%" class="mtx-class-macrohead" | '''AcceptOpen''' |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's IP address.
| |
| |- | | |- |
| | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 112: |
Line 118: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===Connect=== |
| | {| 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;" | '''RxMatch_4_Bytes''' | | | width="90%" class="mtx-class-macrohead" | '''Connect''' |
| |- | | |- |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 6 bytes. | | | colspan="2" | Attempt to connect to the given address and port. First open a socket on the local device using the Socket function and check that it is successful. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Channel | | | width="90%" | Address |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Remote destination address |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | | width="90%" | Port |
| | |- |
| | | colspan="2" | Remote destination port |
| | |- |
| | | 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'' |
| | |} |
| | |
| | |
| | ===CreateIPSocket=== |
| | {| class="mtx-class-macrotable wikitable" |
| | |- |
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''CreateIPSocket''' |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | colspan="2" | Note that sockets on up to 4 channels can be simultaneously opened and these channels are numbered 0 to 3. Note that sockets with different modes can be opened on different channels. |
| | width="90%" | Byte1
| |
| |- | | |- |
| | colspan="2" | Specifies the value of the first byte
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Byte2 | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Specifies the value of the second byte | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Byte3 | | | width="90%" | Protocol |
| |- | | |- |
| | colspan="2" | Specifies the value of the third byte | | | colspan="2" | Specifies which IP protocol to use |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Byte4 | | | width="90%" | Broadcast |
| |- | | |- |
| | colspan="2" | Specifies the value of the fourth byte | | | colspan="2" | Allows broadcast type packets to be sent and received |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 150: |
Line 171: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===CreateMACSocket=== |
| | {| 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;" | '''SetPropertyVal''' | | | width="90%" class="mtx-class-macrohead" | '''CreateMACSocket''' |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | This macro creates a socket for sending and receiving Ethernet data using raw data. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Property | | | width="90%" | Promiscuous |
| | |- |
| | | colspan="2" | Receive everything (1) or just data bound for your MAC (0) |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Broadcast |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Allows broadcast messages to be accepted (1) or rejected (0) |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Value | | | width="90%" | Error |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Allowsmessages with errors to be accepted (1) or rejected (0) |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===CreateTCPSocket=== |
| | {| 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;" | '''SetMyIP''' | | | width="90%" class="mtx-class-macrohead" | '''CreateTCPSocket''' |
| |- | | |- |
| | colspan="2" | This macro sets up the Internet E-Block's own IP address. In most circumstances, this macro will not be required as the IP address setting in the component property page will remain constant throughout your application. | | | colspan="2" | This macro creates a socket for sending and receiving TCP data. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | IP0 | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | First Byte of IP address | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | IP1 | | | width="90%" | Src_Port_Hi |
| |- | | |- |
| | colspan="2" | Second Byte of IP address | | | colspan="2" | Port High Byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | IP2 | | | width="90%" | Src_Port_Lo |
| |- | | |- |
| | colspan="2" | Third Byte of IP address | | | colspan="2" | Port Low Byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | IP3
| | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |-
| |
| | colspan="2" | Fourth Byte of IP address
| |
| |-
| |
| | 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;" | | ===CreateUDPSocket=== |
| | {| 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;" | '''TxSendString''' | | | width="90%" class="mtx-class-macrohead" | '''CreateUDPSocket''' |
| |- | | |- |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information. | | | colspan="2" | This macro creates a socket for sending and receiving UDP data. |
| |- | | |- |
| |- | | |- |
| Line 219: |
Line 243: |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Data | | | width="90%" | Src_Port_Hi |
| | |- |
| | | colspan="2" | Port High Byte |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Src_Port_Lo |
| |- | | |- |
| | colspan="2" | Data byte to append to Tx buffer. | | | colspan="2" | Port Low Byte |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===ForcePropEvent=== |
| | {| 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;" | '''SecureWrite''' | | | width="90%" class="mtx-class-macrohead" | '''ForcePropEvent''' |
| |- | | |- |
| | colspan="2" | Attempts to write max number of bytes to the secure socket from the buffer. Returns actual number of bytes written. | | | colspan="2" | Allows the property event to be fired, doing things like fetching the correct IP for the network interface. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| | width="90%" | buffer | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| | |} |
| | |
| | |
| | ===GetConsole=== |
| | {| class="mtx-class-macrotable wikitable" |
| |- | | |- |
| | colspan="2" | | | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''GetConsole''' |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT | | | colspan="2" | Obtain the console instance for the TCP/IP base. |
| | width="90%" | max
| |
| |- | | |- |
| | colspan="2" |
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetPropertyVal=== |
| | {| 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;" | '''Connect''' | | | width="90%" class="mtx-class-macrohead" | '''GetPropertyVal''' |
| |- | | |- |
| | colspan="2" | Attempt to connect to the given address and port. First open a socket on the local device using the Socket function and check that it is successful. | | | colspan="2" | |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Address | | | width="90%" | Property |
| | |- |
| | | colspan="2" | |
| | |- |
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING |
| | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| | |} |
| | |
| | |
| | ===GetSocketStatus=== |
| | {| class="mtx-class-macrotable wikitable" |
| | |- |
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''GetSocketStatus''' |
| | |- |
| | | colspan="2" | This returns the state of the requested channel's socket. |
| |- | | |- |
| | colspan="2" | Remote destination address
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Port | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Remote destination port | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 275: |
Line 324: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===Initialise=== |
| | {| 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;" | '''ForcePropEvent''' | | | width="90%" class="mtx-class-macrohead" | '''Initialise''' |
| |- | | |- |
| | colspan="2" | Allows the property event to be fired, doing things like fetching the correct IP for the network interface. | | | colspan="2" | Resets and initialises the Internet E-Block. It sets up the gateway address, subnet mask, device IP address and device MAC address as defined in the properties of the Flowcode component. This macro must be called before any other TCP_IP component macros |
| |- | | |- |
| |- | | |- |
| Line 288: |
Line 338: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===Listen=== |
| | {| 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;" | '''Receive''' | | | width="90%" class="mtx-class-macrohead" | '''Listen''' |
| |- | | |- |
| | colspan="2" | Receive data into the data buffer. Returns the number of bytes received | | | colspan="2" | Bind the socket to a port on the local host and set to listen mode. First open a socket on the local device using the Socket function and check that it is successful. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" | Data | | | width="90%" | Port |
| |- | | |- |
| | colspan="2" | Data byte buffer to receive the data | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Maximum number of bytes to read
| |
| |-
| |
| | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===Receive=== |
| | {| 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;" | '''SendTo''' | | | width="90%" class="mtx-class-macrohead" | '''Receive''' |
| |- | | |- |
| | colspan="2" | Send data to a destination host. Returns the number of bytes sent. | | | colspan="2" | Receive data into the data buffer. Returns the number of bytes received |
| |- | | |- |
| |- | | |- |
| Line 322: |
Line 369: |
| | width="90%" | Data | | | width="90%" | Data |
| |- | | |- |
| | colspan="2" | Data byte buffer to send | | | colspan="2" | Data byte buffer to receive the data |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" | Count | | | width="90%" | Count |
| |- | | |- |
| | colspan="2" | Number of bytes to send | | | colspan="2" | Maximum number of bytes to read |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Address
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" |
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT |
| Line 344: |
Line 381: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxDataAvailable=== |
| | {| 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;" | '''SecureConnect''' | | | width="90%" class="mtx-class-macrohead" | '''RxDataAvailable''' |
| |- | | |- |
| | colspan="2" | Connect securely to host and port. e.g. “www.bbc.co.uk:443” Returns 1 if successful, 0 if not | | | colspan="2" | This macro is used to check whether or not data has been received by the Internet E-Block. A return value of zero indicated that no data has been received. A positive return value indicates that data is available. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | host | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Host:Port as string | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxDataSize=== |
| | {| 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;" | '''RxReadHeader''' | | | width="90%" class="mtx-class-macrohead" | '''RxDataSize''' |
| |- | | |- |
| | colspan="2" | Once data in a particular channel has been received, the header will be filled with information about the received data. This macro will return the information in the header. The idx parameter specifies which byte of information in the header to read | | | colspan="2" | This macro is used to detect the size of data collected by the Rx_data_available macro. |
| |- | | |- |
| |- | | |- |
| Line 374: |
Line 413: |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Idx
| |
| |-
| |
| | colspan="2" | Specifies the byte index to return
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 385: |
Line 419: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxFlushData=== |
| | {| 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;" | '''RxSkipBytes''' | | | width="90%" class="mtx-class-macrohead" | '''RxFlushData''' |
| |- | | |- |
| | colspan="2" | Often when receiving data packets, it may be necessary to ignore large sections of the data. This can be achieved by reading each byte individually (and ignoring the returned data), but a better way is to use this Rx_skipbytes macro. | | | colspan="2" | Once data reception has been completed, this macro should be called to discard the data packet and allow other data packets to be read. |
| |- | | |- |
| |- | | |- |
| Line 397: |
Line 432: |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Specifies how many bytes to skip
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 408: |
Line 438: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxMatchMyIP=== |
| | {| 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;" | '''CreateIPSocket''' | | | width="90%" class="mtx-class-macrohead" | '''RxMatchMyIP''' |
| |- | | |- |
| | colspan="2" | Note that sockets on up to 4 channels can be simultaneously opened and these channels are numbered 0 to 3. Note that sockets with different modes can be opened on different channels. | | | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's IP address. |
| |- | | |- |
| |- | | |- |
| Line 421: |
Line 452: |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Protocol | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| | |} |
| | |
| | |
| | ===RxMatchMyMAC=== |
| | {| class="mtx-class-macrotable wikitable" |
| | |- |
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''RxMatchMyMAC''' |
| | |- |
| | | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's MAC address entered in the component's property page. |
| |- | | |- |
| | colspan="2" | Specifies which IP protocol to use
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Broadcast | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Allows broadcast type packets to be sent and received | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 436: |
Line 476: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxMatch_2_Bytes=== |
| | {| 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;" | '''SetDestination''' | | | width="90%" class="mtx-class-macrohead" | '''RxMatch_2_Bytes''' |
| |- | | |- |
| | colspan="2" | This is used in IP and UDP modes to set the destination of the intended data transfer. The destination IP address needs to be set for both IP and UDP modes. | | | colspan="2" | This macro returns a non-zero value when the next 2 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 4 bytes and 6 bytes. |
| |- | | |- |
| |- | | |- |
| Line 450: |
Line 491: |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Dst_IP0 | | | width="90%" | Byte1 |
| |- | | |- |
| | colspan="2" | Specifies the first byte of an IP address | | | colspan="2" | Specifies the value of the first byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Dst_IP1 | | | width="90%" | Byte2 |
| | |- |
| | | colspan="2" | Specifies the value of the second byte |
| | |- |
| | | 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'' |
| | |} |
| | |
| | |
| | ===RxMatch_4_Bytes=== |
| | {| class="mtx-class-macrotable wikitable" |
| | |- |
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''RxMatch_4_Bytes''' |
| | |- |
| | | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 6 bytes. |
| |- | | |- |
| | colspan="2" | Specifies the second byte of an IP address
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Dst_IP2 | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Specifies the third byte of an IP address | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Dst_IP3 | | | width="90%" | Byte1 |
| |- | | |- |
| | colspan="2" | Specifies the fourth byte of an IP address | | | colspan="2" | Specifies the value of the first byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Dst_Port_Hi | | | width="90%" | Byte2 |
| |- | | |- |
| | colspan="2" | Port High Byte | | | colspan="2" | Specifies the value of the second byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Dst_Port_Lo | | | width="90%" | Byte3 |
| |- | | |- |
| | colspan="2" | Port Low Byte | | | colspan="2" | Specifies the value of the third byte |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Byte4 |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | colspan="2" | Specifies the value of the fourth byte |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetConsole'''
| |
| |- | | |- |
| | colspan="2" | Obtain the console instance for the TCP/IP base.
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| |-
| |
| |-
| |
| | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxMatch_6_Bytes=== |
| | {| 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;" | '''TxStart''' | | | width="90%" class="mtx-class-macrohead" | '''RxMatch_6_Bytes''' |
| |- | | |- |
| | colspan="2" | This macro indicates the start of data transmission for the specified buffer. In TCP mode, data transmission can only begin once the socket has become established. In other modes, data transmission can occur as soon as the socket has been opened. | | | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 4 bytes. |
| |- | | |- |
| |- | | |- |
| Line 510: |
Line 558: |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Byte1 |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | colspan="2" | Specifies the value of the first byte |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RxReadByte'''
| |
| |- | | |- |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'RxReadByte' (or any other read function) will read the next byte | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Byte2 |
| |- | | |- |
| | | colspan="2" | Specifies the value of the second byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Channel | | | width="90%" | Byte3 |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Specifies the value of the third byte |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Byte4 |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | colspan="2" | Specifies the value of the fourth byte |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CreateUDPSocket'''
| |
| |- | | |- |
| | colspan="2" | This macro creates a socket for sending and receiving UDP data. | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Byte5 |
| |- | | |- |
| | | colspan="2" | Specifies the value of the fifth byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Channel | | | width="90%" | Byte6 |
| | |- |
| | | colspan="2" | Specifies the value of the sixth byte |
| | |- |
| | | 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'' |
| | |} |
| | |
| | |
| | ===RxReadByte=== |
| | {| class="mtx-class-macrotable wikitable" |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''RxReadByte''' |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'RxReadByte' (or any other read function) will read the next byte |
| | width="90%" | Src_Port_Hi
| |
| |- | | |- |
| | colspan="2" | Port High Byte
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Src_Port_Lo | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Port Low Byte | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 561: |
Line 612: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxReadHeader=== |
| | {| 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;" | '''Send''' | | | width="90%" class="mtx-class-macrohead" | '''RxReadHeader''' |
| |- | | |- |
| | colspan="2" | Send data | | | colspan="2" | Once data in a particular channel has been received, the header will be filled with information about the received data. This macro will return the information in the header. The idx parameter specifies which byte of information in the header to read |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Data | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Data byte buffer to send | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Count | | | width="90%" | Idx |
| |- | | |- |
| | colspan="2" | Number of bytes to send | | | colspan="2" | Specifies the byte index to return |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===RxReadString=== |
| | {| 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;" | '''RxMatch_6_Bytes''' | | | width="90%" class="mtx-class-macrohead" | '''RxReadString''' |
| |- | | |- |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 4 bytes. | | | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'Rx_readbyte' (or any other read function) will read the next byte |
| |- | | |- |
| |- | | |- |
| Line 598: |
Line 651: |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Byte1 | | | width="90%" | Length |
| |- | | |- |
| | colspan="2" | Specifies the value of the first byte | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Byte2 | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| | |} |
| | |
| | |
| | ===RxSkipBytes=== |
| | {| class="mtx-class-macrotable wikitable" |
| |- | | |- |
| | colspan="2" | Specifies the value of the second byte | | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''RxSkipBytes''' |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | colspan="2" | Often when receiving data packets, it may be necessary to ignore large sections of the data. This can be achieved by reading each byte individually (and ignoring the returned data), but a better way is to use this Rx_skipbytes macro. |
| | width="90%" | Byte3
| |
| |- | | |- |
| | colspan="2" | Specifies the value of the third byte
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Byte4 | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Specifies the value of the fourth byte | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Byte5 | | | width="90%" | Count |
| |- | | |- |
| | colspan="2" | Specifies the value of the fifth byte | | | colspan="2" | Specifies how many bytes to skip |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| | width="90%" | Byte6
| |
| |-
| |
| | colspan="2" | Specifies the value of the sixth byte
| |
| |-
| |
| | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SecureClose=== |
| | {| 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;" | '''RxMatch_2_Bytes''' | | | width="90%" class="mtx-class-macrohead" | '''SecureClose''' |
| |- | | |- |
| | colspan="2" | This macro returns a non-zero value when the next 2 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 4 bytes and 6 bytes. | | | colspan="2" | Close the secure connection |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| | width="90%" | Channel | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| | |} |
| | |
| | |
| | ===SecureConnect=== |
| | {| class="mtx-class-macrotable wikitable" |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''SecureConnect''' |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | colspan="2" | Connect securely to host and port. e.g. “www.bbc.co.uk:443” Returns 1 if successful, 0 if not |
| | width="90%" | Byte1
| |
| |- | | |- |
| | colspan="2" | Specifies the value of the first byte
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Byte2 | | | width="90%" | host |
| |- | | |- |
| | colspan="2" | Specifies the value of the second byte | | | colspan="2" | Host:Port as string |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT |
| | 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;" | | ===SecureInit=== |
| | {| 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;" | '''SecureClose''' | | | width="90%" class="mtx-class-macrohead" | '''SecureInit''' |
| |- | | |- |
| | colspan="2" | Close the secure connection | | | colspan="2" | Call once to initialise the secure socket funtionality |
| |- | | |- |
| |- | | |- |
| Line 673: |
Line 731: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SecureRead=== |
| | {| 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;" | '''RxReadString''' | | | width="90%" class="mtx-class-macrohead" | '''SecureRead''' |
| |- | | |- |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'Rx_readbyte' (or any other read function) will read the next byte | | | colspan="2" | Attempts to read max number of bytes from the secure socket into the buffer. Returns actual number of bytes read. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Channel | | | width="90%" | buffer |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT |
| | width="90%" | Length | | | width="90%" | max |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT |
| | 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;" | | ===SecureWrite=== |
| | {| class="mtx-class-macrotable wikitable" |
| | |- |
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''SecureWrite''' |
| | |- |
| | | colspan="2" | Attempts to write max number of bytes to the secure socket from the buffer. Returns actual number of bytes written. |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''TxEnd'''
| |
| |- | | |- |
| | colspan="2" | Once the transmit buffer has been filled with data, call this macro to actually send the data. | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | | width="90%" | buffer |
| |- | | |- |
| | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT |
| | width="90%" | Channel | | | width="90%" | max |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT |
| | 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;" | | ===Send=== |
| | {| 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;" | '''SetChannel''' | | | width="90%" class="mtx-class-macrohead" | '''Send''' |
| |- | | |- |
| | colspan="2" | Dictates the TCP IP channel used for socket communications allowing for multiple parrallel communication streams to co-exist, Used by the network comms component to drive the TCP IP runtime comms | | | colspan="2" | Send data |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Channel | | | width="90%" | Data |
| |- | | |- |
| | colspan="2" | Range: 0 to 3 | | | colspan="2" | Data byte buffer to send |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | | width="90%" | Count |
| | |- |
| | | colspan="2" | Number of bytes to send |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SendTo=== |
| | {| class="mtx-class-macrotable wikitable" |
| | |- |
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''SendTo''' |
| | |- |
| | | colspan="2" | Send data to a destination host. Returns the number of bytes sent. |
| | |- |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | | width="90%" | Data |
| | |- |
| | | colspan="2" | Data byte buffer to send |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Listen''' | | | width="90%" | Count |
| |- | | |- |
| | colspan="2" | Bind the socket to a port on the local host and set to listen mode. First open a socket on the local device using the Socket function and check that it is successful. | | | colspan="2" | Number of bytes to send |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | | width="90%" | Address |
| |- | | |- |
| | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| Line 745: |
Line 832: |
| | colspan="2" | | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetChannel=== |
| | {| 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;" | '''CreateTCPSocket''' | | | width="90%" class="mtx-class-macrohead" | '''SetChannel''' |
| |- | | |- |
| | colspan="2" | This macro creates a socket for sending and receiving TCP data. | | | colspan="2" | Dictates the TCP IP channel used for socket communications allowing for multiple parrallel communication streams to co-exist, Used by the network comms component to drive the TCP IP runtime comms |
| |- | | |- |
| |- | | |- |
| Line 761: |
Line 849: |
| | width="90%" | Channel | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Range: 0 to 3 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| | width="90%" | Src_Port_Hi
| | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | | ===SetDestination=== |
| | {| 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;" | '''RxDataAvailable''' | | | width="90%" class="mtx-class-macrohead" | '''SetDestination''' |
| |- | | |- |
| | colspan="2" | This macro is used to check whether or not data has been received by the Internet E-Block. A return value of zero indicated that no data has been received. A positive return value indicates that data is available. | | | colspan="2" | This is used in IP and UDP modes to set the destination of the intended data transfer. The destination IP address needs to be set for both IP and UDP modes. |
| |- | | |- |
| |- | | |- |
| Line 791: |
Line 870: |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Dst_IP0 |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | colspan="2" | Specifies the first byte of an IP address |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SocketOpen'''
| |
| |- | | |- |
| | colspan="2" | Attempts to create a socket on the local device. Type =0 for TCP, =1 for UDP This must be successfully done before attempting connection with a remote destination. Returns 1 if successful, 0 if not. | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Dst_IP1 |
| |- | | |- |
| | | colspan="2" | Specifies the second byte of an IP address |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Type | | | width="90%" | Dst_IP2 |
| | |- |
| | | colspan="2" | Specifies the third byte of an IP address |
| |- | | |- |
| | colspan="2" | Type of socket to create
| | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| |-
| | | width="90%" | Dst_IP3 |
| | 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;" | '''TxSendByte'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information.
| |
| |- | | |- |
| | | colspan="2" | Specifies the fourth byte of an IP address |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Channel | | | width="90%" | Dst_Port_Hi |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Port High Byte |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Data | | | width="90%" | Dst_Port_Lo |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Port Low Byte |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 837: |
Line 905: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetMyIP=== |
| | {| 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;" | '''TCPListen''' | | | width="90%" class="mtx-class-macrohead" | '''SetMyIP''' |
| |- | | |- |
| | colspan="2" | This macro puts a previously opened TCP channel in "passive open" mode. This is the required mode when writing a TCP server application (e.g. a web server to display HTML web pages). | | | colspan="2" | This macro sets up the Internet E-Block's own IP address. In most circumstances, this macro will not be required as the IP address setting in the component property page will remain constant throughout your application. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Channel | | | width="90%" | IP0 |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | First Byte of IP address |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | IP1 |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | colspan="2" | Second Byte of IP address |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RxFlushData'''
| |
| |- | | |- |
| | colspan="2" | Once data reception has been completed, this macro should be called to discard the data packet and allow other data packets to be read. | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | IP2 |
| |- | | |- |
| | | colspan="2" | Third Byte of IP address |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Channel | | | width="90%" | IP3 |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Fourth Byte of IP address |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 873: |
Line 939: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetPropertyVal=== |
| | {| 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;" | '''TCPConnect''' | | | width="90%" class="mtx-class-macrohead" | '''SetPropertyVal''' |
| |- | | |- |
| | colspan="2" | This macro puts a previously opened TCP channel in "active open" mode. This is the required mode when writing a TCP client application (e.g. using SMTP to send an email). | | | colspan="2" | |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Channel | | | width="90%" | Property |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Dst_IP0 | | | width="90%" | Value |
| |- | | |- |
| | colspan="2" | First Byte of IP address | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| | width="90%" | Dst_IP1 | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| | |} |
| | |
| | |
| | ===SocketClose=== |
| | {| class="mtx-class-macrotable wikitable" |
| |- | | |- |
| | colspan="2" | Second Byte of IP address | | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''SocketClose''' |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | colspan="2" | Close the socket |
| | width="90%" | Dst_IP2
| |
| |- | | |- |
| | colspan="2" | Third Byte of IP address
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| | width="90%" | Dst_IP3 | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| | |} |
| | |
| | |
| | ===SocketOpen=== |
| | {| class="mtx-class-macrotable wikitable" |
| |- | | |- |
| | colspan="2" | Fourth Byte of IP address | | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | | width="90%" class="mtx-class-macrohead" | '''SocketOpen''' |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | colspan="2" | Attempts to create a socket on the local device. Type =0 for TCP, =1 for UDP This must be successfully done before attempting connection with a remote destination. Returns 1 if successful, 0 if not. |
| | width="90%" | Dst_Port_Hi
| |
| |- | | |- |
| | colspan="2" | High Byte of destination port
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Dst_Port_Lo | | | width="90%" | Type |
| |- | | |- |
| | colspan="2" | Low Byte of destination port | | | colspan="2" | Type of socket to create |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 921: |
Line 996: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TCPClose=== |
| | {| 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;" | '''GetPropertyVal''' | | | width="90%" class="mtx-class-macrohead" | '''TCPClose''' |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | When an established TCP connection has finished transmission of data, either the local application (i.e. your code) or the remote application (i.e. the application at the other end of the connection) can initiate closure of the socket. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Property | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TCPConnect=== |
| | {| 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;" | '''SocketClose''' | | | width="90%" class="mtx-class-macrohead" | '''TCPConnect''' |
| |- | | |- |
| | colspan="2" | Close the socket | | | colspan="2" | This macro puts a previously opened TCP channel in "active open" mode. This is the required mode when writing a TCP client application (e.g. using SMTP to send an email). |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Channel |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | colspan="2" | Specifies the communications channel 0-3 |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SecureRead'''
| |
| |- | | |- |
| | colspan="2" | Attempts to read max number of bytes from the secure socket into the buffer. Returns actual number of bytes read. | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Dst_IP0 |
| |- | | |- |
| | | colspan="2" | First Byte of IP address |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | buffer | | | width="90%" | Dst_IP1 |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Second Byte of IP address |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | max | | | width="90%" | Dst_IP2 |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Third Byte of IP address |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Dst_IP3 |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | | colspan="2" | Fourth Byte of IP address |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RxMatchMyMAC'''
| |
| |- | | |- |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's MAC address entered in the component's property page. | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Dst_Port_Hi |
| |- | | |- |
| | | colspan="2" | High Byte of destination port |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Channel | | | width="90%" | Dst_Port_Lo |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Low Byte of destination port |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| Line 993: |
Line 1,064: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TCPListen=== |
| | {| 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;" | '''AcceptOpen''' | | | width="90%" class="mtx-class-macrohead" | '''TCPListen''' |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | This macro puts a previously opened TCP channel in "passive open" mode. This is the required mode when writing a TCP server application (e.g. a web server to display HTML web pages). |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| | | width="10%" align="center" | [[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;" | '''RxDataSize'''
| |
| |-
| |
| | colspan="2" | This macro is used to detect the size of data collected by the Rx_data_available macro.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |
| | width="90%" | Channel | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TxEnd=== |
| | {| 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;" | '''TxSendMyMAC''' | | | width="90%" class="mtx-class-macrohead" | '''TxEnd''' |
| |- | | |- |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 6 bytes of data representing this Internet E-Block's MAC address as specified in the component's property page. | | | colspan="2" | Once the transmit buffer has been filled with data, call this macro to actually send the data. |
| |- | | |- |
| |- | | |- |
| Line 1,042: |
Line 1,102: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TxSendByte=== |
| | {| 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;" | '''CreateMACSocket''' | | | width="90%" class="mtx-class-macrohead" | '''TxSendByte''' |
| |- | | |- |
| | colspan="2" | This macro creates a socket for sending and receiving Ethernet data using raw data. | | | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Promiscuous | | | width="90%" | Channel |
| |- | | |- |
| | colspan="2" | Receive everything (1) or just data bound for your MAC (0) | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Broadcast | | | width="90%" | Data |
| |- | | |- |
| | colspan="2" | Allows broadcast messages to be accepted (1) or rejected (0) | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| | width="90%" | Error
| |
| |-
| |
| | colspan="2" | Allowsmessages with errors to be accepted (1) or rejected (0)
| |
| |-
| |
| | 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'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TxSendMyIP=== |
| | {| 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;" | '''AcceptClose''' | | | width="90%" class="mtx-class-macrohead" | '''TxSendMyIP''' |
| |- | | |- |
| | colspan="2" | Close the accept socket | | | colspan="2" | This macro fills the specified channel's transmit buffer with 4 bytes of data representing this Internet E-Block's IP address as specified in the component's property page. |
| |- | | |- |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Channel |
| | |- |
| | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 1,083: |
Line 1,145: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TxSendMyMAC=== |
| | {| 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;" | '''SecureInit''' | | | width="90%" class="mtx-class-macrohead" | '''TxSendMyMAC''' |
| |- | | |- |
| | colspan="2" | Call once to initialise the secure socket funtionality | | | colspan="2" | This macro fills the specified channel's transmit buffer with 6 bytes of data representing this Internet E-Block's MAC address as specified in the component's property page. |
| | |- |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | | width="90%" | Channel |
| |- | | |- |
| | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 1,096: |
Line 1,164: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TxSendString=== |
| | {| 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;" | '''GetSocketStatus''' | | | width="90%" class="mtx-class-macrohead" | '''TxSendString''' |
| |- | | |- |
| | colspan="2" | This returns the state of the requested channel's socket. | | | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information. |
| |- | | |- |
| |- | | |- |
| Line 1,109: |
Line 1,178: |
| | colspan="2" | Specifies the communications channel 0-3 | | | colspan="2" | Specifies the communications channel 0-3 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Data |
| |}
| |
| | |
| | |
| {| 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" | Resets and initialises the Internet E-Block. It sets up the gateway address, subnet mask, device IP address and device MAC address as defined in the properties of the Flowcode component. This macro must be called before any other TCP_IP component macros
| |
| |- | | |- |
| | | colspan="2" | Data byte to append to Tx buffer. |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 1,127: |
Line 1,188: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===TxStart=== |
| | {| 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;" | '''TCPClose''' | | | width="90%" class="mtx-class-macrohead" | '''TxStart''' |
| |- | | |- |
| | colspan="2" | When an established TCP connection has finished transmission of data, either the local application (i.e. your code) or the remote application (i.e. the application at the other end of the connection) can initiate closure of the socket. | | | colspan="2" | This macro indicates the start of data transmission for the specified buffer. In TCP mode, data transmission can only begin once the socket has become established. In other modes, data transmission can occur as soon as the socket has been opened. |
| |- | | |- |
| |- | | |- |
| Line 1,143: |
Line 1,205: |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | 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-10-icon.png]]
| |
| | width="90%" | Hostname
| |
| |-
| |
| | colspan="2" | Local PC's hostname
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| |
| | width="90%" | Network Interface
| |
| |-
| |
| | colspan="2" | List of network interfaces connected to the PC. Sets which interface we are communicating via.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Gateway IP
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway0
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway1
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway2
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway3
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Subnet Mask
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet0
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet1
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet2
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet3
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | IP Address
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP0
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP1
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP2
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP3
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | MAC Address
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC0
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC1
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC2
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC3
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC4
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC5
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Notify
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
| |
| | width="90%" | Console Data
| |
| |-
| |
| | colspan="2" | Generate Console Data
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
| |
| | width="90%" | Target
| |
| |-
| |
| | colspan="2" | Sets a target object, to which User.Notify events will be sent when data is sent and received. Events are send with Message ID = this component's handle, Data: 1=Send, 2=Receive.
| |
| |}==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;" | '''TxSendMyIP'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 4 bytes of data representing this Internet E-Block's IP address as specified in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxMatchMyIP'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's IP address.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxMatch_4_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 6 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte3
| |
| |-
| |
| | colspan="2" | Specifies the value of the third byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte4
| |
| |-
| |
| | colspan="2" | Specifies the value of the fourth byte
| |
| |-
| |
| | 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;" | '''SetPropertyVal'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Property
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Value
| |
| |-
| |
| | 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;" | '''SetMyIP'''
| |
| |-
| |
| | colspan="2" | This macro sets up the Internet E-Block's own IP address. In most circumstances, this macro will not be required as the IP address setting in the component property page will remain constant throughout your application.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP0
| |
| |-
| |
| | colspan="2" | First Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP1
| |
| |-
| |
| | colspan="2" | Second Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP2
| |
| |-
| |
| | colspan="2" | Third Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP3
| |
| |-
| |
| | colspan="2" | Fourth Byte of IP address
| |
| |-
| |
| | 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;" | '''TxSendString'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte to append to Tx buffer.
| |
| |-
| |
| | 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;" | '''SecureWrite'''
| |
| |-
| |
| | colspan="2" | Attempts to write max number of bytes to the secure socket from the buffer. Returns actual number of bytes written.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | buffer
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | max
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''Connect'''
| |
| |-
| |
| | colspan="2" | Attempt to connect to the given address and port. First open a socket on the local device using the Socket function and check that it is successful.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Address
| |
| |-
| |
| | colspan="2" | Remote destination address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" | Remote destination port
| |
| |-
| |
| | 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;" | '''ForcePropEvent'''
| |
| |-
| |
| | colspan="2" | Allows the property event to be fired, doing things like fetching the correct IP for the network interface.
| |
| |-
| |
| |-
| |
| | 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;" | '''Receive'''
| |
| |-
| |
| | colspan="2" | Receive data into the data buffer. Returns the number of bytes received
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to receive the data
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Maximum number of bytes to read
| |
| |-
| |
| | 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;" | '''SendTo'''
| |
| |-
| |
| | colspan="2" | Send data to a destination host. Returns the number of bytes sent.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Number of bytes to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Address
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''SecureConnect'''
| |
| |-
| |
| | colspan="2" | Connect securely to host and port. e.g. “www.bbc.co.uk:443” Returns 1 if successful, 0 if not
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | host
| |
| |-
| |
| | colspan="2" | Host:Port as string
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''RxReadHeader'''
| |
| |-
| |
| | colspan="2" | Once data in a particular channel has been received, the header will be filled with information about the received data. This macro will return the information in the header. The idx parameter specifies which byte of information in the header to read
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Idx
| |
| |-
| |
| | colspan="2" | Specifies the byte index to return
| |
| |-
| |
| | 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;" | '''RxSkipBytes'''
| |
| |-
| |
| | colspan="2" | Often when receiving data packets, it may be necessary to ignore large sections of the data. This can be achieved by reading each byte individually (and ignoring the returned data), but a better way is to use this Rx_skipbytes macro.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Specifies how many bytes to skip
| |
| |-
| |
| | 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;" | '''CreateIPSocket'''
| |
| |-
| |
| | colspan="2" | Note that sockets on up to 4 channels can be simultaneously opened and these channels are numbered 0 to 3. Note that sockets with different modes can be opened on different channels.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Protocol
| |
| |-
| |
| | colspan="2" | Specifies which IP protocol to use
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Broadcast
| |
| |-
| |
| | colspan="2" | Allows broadcast type packets to be sent and received
| |
| |-
| |
| | 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;" | '''SetDestination'''
| |
| |-
| |
| | colspan="2" | This is used in IP and UDP modes to set the destination of the intended data transfer. The destination IP address needs to be set for both IP and UDP modes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP0
| |
| |-
| |
| | colspan="2" | Specifies the first byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP1
| |
| |-
| |
| | colspan="2" | Specifies the second byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP2
| |
| |-
| |
| | colspan="2" | Specifies the third byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP3
| |
| |-
| |
| | colspan="2" | Specifies the fourth byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''GetConsole'''
| |
| |-
| |
| | colspan="2" | Obtain the console instance for the TCP/IP base.
| |
| |-
| |
| |-
| |
| | 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;" | '''TxStart'''
| |
| |-
| |
| | colspan="2" | This macro indicates the start of data transmission for the specified buffer. In TCP mode, data transmission can only begin once the socket has become established. In other modes, data transmission can occur as soon as the socket has been opened.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxReadByte'''
| |
| |-
| |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'RxReadByte' (or any other read function) will read the next byte
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''CreateUDPSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving UDP data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''Send'''
| |
| |-
| |
| | colspan="2" | Send data
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Number of bytes to send
| |
| |-
| |
| | 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;" | '''RxMatch_6_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 4 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte3
| |
| |-
| |
| | colspan="2" | Specifies the value of the third byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte4
| |
| |-
| |
| | colspan="2" | Specifies the value of the fourth byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte5
| |
| |-
| |
| | colspan="2" | Specifies the value of the fifth byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte6
| |
| |-
| |
| | colspan="2" | Specifies the value of the sixth byte
| |
| |-
| |
| | 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;" | '''RxMatch_2_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 2 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 4 bytes and 6 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | 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;" | '''SecureClose'''
| |
| |-
| |
| | colspan="2" | Close the secure connection
| |
| |-
| |
| |-
| |
| | 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;" | '''RxReadString'''
| |
| |-
| |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'Rx_readbyte' (or any other read function) will read the next byte
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Length
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| |
| | 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;" | '''TxEnd'''
| |
| |-
| |
| | colspan="2" | Once the transmit buffer has been filled with data, call this macro to actually send the data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''SetChannel'''
| |
| |-
| |
| | colspan="2" | Dictates the TCP IP channel used for socket communications allowing for multiple parrallel communication streams to co-exist, Used by the network comms component to drive the TCP IP runtime comms
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Range: 0 to 3
| |
| |-
| |
| | 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;" | '''Listen'''
| |
| |-
| |
| | colspan="2" | Bind the socket to a port on the local host and set to listen mode. First open a socket on the local device using the Socket function and check that it is successful.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''CreateTCPSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving TCP data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''RxDataAvailable'''
| |
| |-
| |
| | colspan="2" | This macro is used to check whether or not data has been received by the Internet E-Block. A return value of zero indicated that no data has been received. A positive return value indicates that data is available.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''SocketOpen'''
| |
| |-
| |
| | colspan="2" | Attempts to create a socket on the local device. Type =0 for TCP, =1 for UDP This must be successfully done before attempting connection with a remote destination. Returns 1 if successful, 0 if not.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Type
| |
| |-
| |
| | colspan="2" | Type of socket to create
| |
| |-
| |
| | 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;" | '''TxSendByte'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Data
| |
| |-
| |
| | 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;" | '''TCPListen'''
| |
| |-
| |
| | colspan="2" | This macro puts a previously opened TCP channel in "passive open" mode. This is the required mode when writing a TCP server application (e.g. a web server to display HTML web pages).
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxFlushData'''
| |
| |-
| |
| | colspan="2" | Once data reception has been completed, this macro should be called to discard the data packet and allow other data packets to be read.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''TCPConnect'''
| |
| |-
| |
| | colspan="2" | This macro puts a previously opened TCP channel in "active open" mode. This is the required mode when writing a TCP client application (e.g. using SMTP to send an email).
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP0
| |
| |-
| |
| | colspan="2" | First Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP1
| |
| |-
| |
| | colspan="2" | Second Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP2
| |
| |-
| |
| | colspan="2" | Third Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP3
| |
| |-
| |
| | colspan="2" | Fourth Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Hi
| |
| |-
| |
| | colspan="2" | High Byte of destination port
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Lo
| |
| |-
| |
| | colspan="2" | Low Byte of destination port
| |
| |-
| |
| | 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;" | '''GetPropertyVal'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Property
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| |
| | 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;" | '''SocketClose'''
| |
| |-
| |
| | colspan="2" | Close the socket
| |
| |-
| |
| |-
| |
| | 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;" | '''SecureRead'''
| |
| |-
| |
| | colspan="2" | Attempts to read max number of bytes from the secure socket into the buffer. Returns actual number of bytes read.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | buffer
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | max
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''RxMatchMyMAC'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's MAC address entered in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''AcceptOpen'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | 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;" | '''RxDataSize'''
| |
| |-
| |
| | colspan="2" | This macro is used to detect the size of data collected by the Rx_data_available macro.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''TxSendMyMAC'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 6 bytes of data representing this Internet E-Block's MAC address as specified in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''CreateMACSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving Ethernet data using raw data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Promiscuous
| |
| |-
| |
| | colspan="2" | Receive everything (1) or just data bound for your MAC (0)
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Broadcast
| |
| |-
| |
| | colspan="2" | Allows broadcast messages to be accepted (1) or rejected (0)
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Error
| |
| |-
| |
| | colspan="2" | Allowsmessages with errors to be accepted (1) or rejected (0)
| |
| |-
| |
| | 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;" | '''AcceptClose'''
| |
| |-
| |
| | colspan="2" | Close the accept socket
| |
| |-
| |
| |-
| |
| | 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;" | '''SecureInit'''
| |
| |-
| |
| | colspan="2" | Call once to initialise the secure socket funtionality
| |
| |-
| |
| |-
| |
| | 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;" | '''GetSocketStatus'''
| |
| |-
| |
| | colspan="2" | This returns the state of the requested channel's socket.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''Initialise'''
| |
| |-
| |
| | colspan="2" | Resets and initialises the Internet E-Block. It sets up the gateway address, subnet mask, device IP address and device MAC address as defined in the properties of the Flowcode component. This macro must be called before any other TCP_IP component macros
| |
| |-
| |
| |-
| |
| | 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;" | '''TCPClose'''
| |
| |-
| |
| | colspan="2" | When an established TCP connection has finished transmission of data, either the local application (i.e. your code) or the remote application (i.e. the application at the other end of the connection) can initiate closure of the socket.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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-10-icon.png]]
| |
| | width="90%" | Hostname
| |
| |-
| |
| | colspan="2" | Local PC's hostname
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| |
| | width="90%" | Network Interface
| |
| |-
| |
| | colspan="2" | List of network interfaces connected to the PC. Sets which interface we are communicating via.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Gateway IP
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway0
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway1
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway2
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway3
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Subnet Mask
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet0
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet1
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet2
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet3
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | IP Address
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP0
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP1
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP2
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP3
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | MAC Address
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC0
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC1
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC2
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC3
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC4
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC5
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Notify
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
| |
| | width="90%" | Console Data
| |
| |-
| |
| | colspan="2" | Generate Console Data
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
| |
| | width="90%" | Target
| |
| |-
| |
| | colspan="2" | Sets a target object, to which User.Notify events will be sent when data is sent and received. Events are send with Message ID = this component's handle, Data: 1=Send, 2=Receive.
| |
| |}==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;" | '''TxSendMyIP'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 4 bytes of data representing this Internet E-Block's IP address as specified in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxMatchMyIP'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's IP address.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxMatch_4_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 6 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte3
| |
| |-
| |
| | colspan="2" | Specifies the value of the third byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte4
| |
| |-
| |
| | colspan="2" | Specifies the value of the fourth byte
| |
| |-
| |
| | 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;" | '''SetPropertyVal'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Property
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Value
| |
| |-
| |
| | 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;" | '''SetMyIP'''
| |
| |-
| |
| | colspan="2" | This macro sets up the Internet E-Block's own IP address. In most circumstances, this macro will not be required as the IP address setting in the component property page will remain constant throughout your application.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP0
| |
| |-
| |
| | colspan="2" | First Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP1
| |
| |-
| |
| | colspan="2" | Second Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP2
| |
| |-
| |
| | colspan="2" | Third Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP3
| |
| |-
| |
| | colspan="2" | Fourth Byte of IP address
| |
| |-
| |
| | 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;" | '''TxSendString'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte to append to Tx buffer.
| |
| |-
| |
| | 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;" | '''SecureWrite'''
| |
| |-
| |
| | colspan="2" | Attempts to write max number of bytes to the secure socket from the buffer. Returns actual number of bytes written.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | buffer
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | max
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''Connect'''
| |
| |-
| |
| | colspan="2" | Attempt to connect to the given address and port. First open a socket on the local device using the Socket function and check that it is successful.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Address
| |
| |-
| |
| | colspan="2" | Remote destination address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" | Remote destination port
| |
| |-
| |
| | 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;" | '''ForcePropEvent'''
| |
| |-
| |
| | colspan="2" | Allows the property event to be fired, doing things like fetching the correct IP for the network interface.
| |
| |-
| |
| |-
| |
| | 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;" | '''Receive'''
| |
| |-
| |
| | colspan="2" | Receive data into the data buffer. Returns the number of bytes received
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to receive the data
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Maximum number of bytes to read
| |
| |-
| |
| | 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;" | '''SendTo'''
| |
| |-
| |
| | colspan="2" | Send data to a destination host. Returns the number of bytes sent.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Number of bytes to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Address
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''SecureConnect'''
| |
| |-
| |
| | colspan="2" | Connect securely to host and port. e.g. “www.bbc.co.uk:443” Returns 1 if successful, 0 if not
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | host
| |
| |-
| |
| | colspan="2" | Host:Port as string
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''RxReadHeader'''
| |
| |-
| |
| | colspan="2" | Once data in a particular channel has been received, the header will be filled with information about the received data. This macro will return the information in the header. The idx parameter specifies which byte of information in the header to read
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Idx
| |
| |-
| |
| | colspan="2" | Specifies the byte index to return
| |
| |-
| |
| | 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;" | '''RxSkipBytes'''
| |
| |-
| |
| | colspan="2" | Often when receiving data packets, it may be necessary to ignore large sections of the data. This can be achieved by reading each byte individually (and ignoring the returned data), but a better way is to use this Rx_skipbytes macro.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Specifies how many bytes to skip
| |
| |-
| |
| | 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;" | '''CreateIPSocket'''
| |
| |-
| |
| | colspan="2" | Note that sockets on up to 4 channels can be simultaneously opened and these channels are numbered 0 to 3. Note that sockets with different modes can be opened on different channels.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Protocol
| |
| |-
| |
| | colspan="2" | Specifies which IP protocol to use
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Broadcast
| |
| |-
| |
| | colspan="2" | Allows broadcast type packets to be sent and received
| |
| |-
| |
| | 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;" | '''SetDestination'''
| |
| |-
| |
| | colspan="2" | This is used in IP and UDP modes to set the destination of the intended data transfer. The destination IP address needs to be set for both IP and UDP modes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP0
| |
| |-
| |
| | colspan="2" | Specifies the first byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP1
| |
| |-
| |
| | colspan="2" | Specifies the second byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP2
| |
| |-
| |
| | colspan="2" | Specifies the third byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP3
| |
| |-
| |
| | colspan="2" | Specifies the fourth byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''GetConsole'''
| |
| |-
| |
| | colspan="2" | Obtain the console instance for the TCP/IP base.
| |
| |-
| |
| |-
| |
| | 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;" | '''TxStart'''
| |
| |-
| |
| | colspan="2" | This macro indicates the start of data transmission for the specified buffer. In TCP mode, data transmission can only begin once the socket has become established. In other modes, data transmission can occur as soon as the socket has been opened.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxReadByte'''
| |
| |-
| |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'RxReadByte' (or any other read function) will read the next byte
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''CreateUDPSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving UDP data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''Send'''
| |
| |-
| |
| | colspan="2" | Send data
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Number of bytes to send
| |
| |-
| |
| | 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;" | '''RxMatch_6_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 4 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte3
| |
| |-
| |
| | colspan="2" | Specifies the value of the third byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte4
| |
| |-
| |
| | colspan="2" | Specifies the value of the fourth byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte5
| |
| |-
| |
| | colspan="2" | Specifies the value of the fifth byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte6
| |
| |-
| |
| | colspan="2" | Specifies the value of the sixth byte
| |
| |-
| |
| | 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;" | '''RxMatch_2_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 2 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 4 bytes and 6 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | 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;" | '''SecureClose'''
| |
| |-
| |
| | colspan="2" | Close the secure connection
| |
| |-
| |
| |-
| |
| | 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;" | '''RxReadString'''
| |
| |-
| |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'Rx_readbyte' (or any other read function) will read the next byte
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Length
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| |
| | 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;" | '''TxEnd'''
| |
| |-
| |
| | colspan="2" | Once the transmit buffer has been filled with data, call this macro to actually send the data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''SetChannel'''
| |
| |-
| |
| | colspan="2" | Dictates the TCP IP channel used for socket communications allowing for multiple parrallel communication streams to co-exist, Used by the network comms component to drive the TCP IP runtime comms
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Range: 0 to 3
| |
| |-
| |
| | 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;" | '''Listen'''
| |
| |-
| |
| | colspan="2" | Bind the socket to a port on the local host and set to listen mode. First open a socket on the local device using the Socket function and check that it is successful.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''CreateTCPSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving TCP data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''RxDataAvailable'''
| |
| |-
| |
| | colspan="2" | This macro is used to check whether or not data has been received by the Internet E-Block. A return value of zero indicated that no data has been received. A positive return value indicates that data is available.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''SocketOpen'''
| |
| |-
| |
| | colspan="2" | Attempts to create a socket on the local device. Type =0 for TCP, =1 for UDP This must be successfully done before attempting connection with a remote destination. Returns 1 if successful, 0 if not.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Type
| |
| |-
| |
| | colspan="2" | Type of socket to create
| |
| |-
| |
| | 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;" | '''TxSendByte'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Data
| |
| |-
| |
| | 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;" | '''TCPListen'''
| |
| |-
| |
| | colspan="2" | This macro puts a previously opened TCP channel in "passive open" mode. This is the required mode when writing a TCP server application (e.g. a web server to display HTML web pages).
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxFlushData'''
| |
| |-
| |
| | colspan="2" | Once data reception has been completed, this macro should be called to discard the data packet and allow other data packets to be read.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''TCPConnect'''
| |
| |-
| |
| | colspan="2" | This macro puts a previously opened TCP channel in "active open" mode. This is the required mode when writing a TCP client application (e.g. using SMTP to send an email).
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP0
| |
| |-
| |
| | colspan="2" | First Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP1
| |
| |-
| |
| | colspan="2" | Second Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP2
| |
| |-
| |
| | colspan="2" | Third Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP3
| |
| |-
| |
| | colspan="2" | Fourth Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Hi
| |
| |-
| |
| | colspan="2" | High Byte of destination port
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Lo
| |
| |-
| |
| | colspan="2" | Low Byte of destination port
| |
| |-
| |
| | 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;" | '''GetPropertyVal'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Property
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| |
| | 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;" | '''SocketClose'''
| |
| |-
| |
| | colspan="2" | Close the socket
| |
| |-
| |
| |-
| |
| | 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;" | '''SecureRead'''
| |
| |-
| |
| | colspan="2" | Attempts to read max number of bytes from the secure socket into the buffer. Returns actual number of bytes read.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | buffer
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | max
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''RxMatchMyMAC'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's MAC address entered in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''AcceptOpen'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | 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;" | '''RxDataSize'''
| |
| |-
| |
| | colspan="2" | This macro is used to detect the size of data collected by the Rx_data_available macro.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''TxSendMyMAC'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 6 bytes of data representing this Internet E-Block's MAC address as specified in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''CreateMACSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving Ethernet data using raw data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Promiscuous
| |
| |-
| |
| | colspan="2" | Receive everything (1) or just data bound for your MAC (0)
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Broadcast
| |
| |-
| |
| | colspan="2" | Allows broadcast messages to be accepted (1) or rejected (0)
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Error
| |
| |-
| |
| | colspan="2" | Allowsmessages with errors to be accepted (1) or rejected (0)
| |
| |-
| |
| | 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;" | '''AcceptClose'''
| |
| |-
| |
| | colspan="2" | Close the accept socket
| |
| |-
| |
| |-
| |
| | 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;" | '''SecureInit'''
| |
| |-
| |
| | colspan="2" | Call once to initialise the secure socket funtionality
| |
| |-
| |
| |-
| |
| | 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;" | '''GetSocketStatus'''
| |
| |-
| |
| | colspan="2" | This returns the state of the requested channel's socket.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''Initialise'''
| |
| |-
| |
| | colspan="2" | Resets and initialises the Internet E-Block. It sets up the gateway address, subnet mask, device IP address and device MAC address as defined in the properties of the Flowcode component. This macro must be called before any other TCP_IP component macros
| |
| |-
| |
| |-
| |
| | 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;" | '''TCPClose'''
| |
| |-
| |
| | colspan="2" | When an established TCP connection has finished transmission of data, either the local application (i.e. your code) or the remote application (i.e. the application at the other end of the connection) can initiate closure of the socket.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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-10-icon.png]]
| |
| | width="90%" | Hostname
| |
| |-
| |
| | colspan="2" | Local PC's hostname
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| |
| | width="90%" | Network Interface
| |
| |-
| |
| | colspan="2" | List of network interfaces connected to the PC. Sets which interface we are communicating via.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Gateway IP
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway0
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway1
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway2
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Gateway3
| |
| |-
| |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Subnet Mask
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet0
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet1
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet2
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | Subnet3
| |
| |-
| |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | IP Address
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP0
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP1
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP2
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | IP3
| |
| |-
| |
| | colspan="2" | Network IP address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | MAC Address
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC0
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC1
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC2
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC3
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC4
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| |
| | width="90%" | MAC5
| |
| |-
| |
| | colspan="2" | Network MAC address, auto populated from the selected interface.
| |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Notify
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
| |
| | width="90%" | Console Data
| |
| |-
| |
| | colspan="2" | Generate Console Data
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
| |
| | width="90%" | Target
| |
| |-
| |
| | colspan="2" | Sets a target object, to which User.Notify events will be sent when data is sent and received. Events are send with Message ID = this component's handle, Data: 1=Send, 2=Receive.
| |
| |}==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;" | '''TxSendMyIP'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 4 bytes of data representing this Internet E-Block's IP address as specified in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxMatchMyIP'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's IP address.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxMatch_4_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 4 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 6 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte3
| |
| |-
| |
| | colspan="2" | Specifies the value of the third byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte4
| |
| |-
| |
| | colspan="2" | Specifies the value of the fourth byte
| |
| |-
| |
| | 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;" | '''SetPropertyVal'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Property
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Value
| |
| |-
| |
| | 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;" | '''SetMyIP'''
| |
| |-
| |
| | colspan="2" | This macro sets up the Internet E-Block's own IP address. In most circumstances, this macro will not be required as the IP address setting in the component property page will remain constant throughout your application.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP0
| |
| |-
| |
| | colspan="2" | First Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP1
| |
| |-
| |
| | colspan="2" | Second Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP2
| |
| |-
| |
| | colspan="2" | Third Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | IP3
| |
| |-
| |
| | colspan="2" | Fourth Byte of IP address
| |
| |-
| |
| | 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;" | '''TxSendString'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte to append to Tx buffer.
| |
| |-
| |
| | 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;" | '''SecureWrite'''
| |
| |-
| |
| | colspan="2" | Attempts to write max number of bytes to the secure socket from the buffer. Returns actual number of bytes written.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | buffer
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | max
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''Connect'''
| |
| |-
| |
| | colspan="2" | Attempt to connect to the given address and port. First open a socket on the local device using the Socket function and check that it is successful.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Address
| |
| |-
| |
| | colspan="2" | Remote destination address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" | Remote destination port
| |
| |-
| |
| | 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;" | '''ForcePropEvent'''
| |
| |-
| |
| | colspan="2" | Allows the property event to be fired, doing things like fetching the correct IP for the network interface.
| |
| |-
| |
| |-
| |
| | 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;" | '''Receive'''
| |
| |-
| |
| | colspan="2" | Receive data into the data buffer. Returns the number of bytes received
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to receive the data
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Maximum number of bytes to read
| |
| |-
| |
| | 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;" | '''SendTo'''
| |
| |-
| |
| | colspan="2" | Send data to a destination host. Returns the number of bytes sent.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Number of bytes to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Address
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''SecureConnect'''
| |
| |-
| |
| | colspan="2" | Connect securely to host and port. e.g. “www.bbc.co.uk:443” Returns 1 if successful, 0 if not
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | host
| |
| |-
| |
| | colspan="2" | Host:Port as string
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''RxReadHeader'''
| |
| |-
| |
| | colspan="2" | Once data in a particular channel has been received, the header will be filled with information about the received data. This macro will return the information in the header. The idx parameter specifies which byte of information in the header to read
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Idx
| |
| |-
| |
| | colspan="2" | Specifies the byte index to return
| |
| |-
| |
| | 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;" | '''RxSkipBytes'''
| |
| |-
| |
| | colspan="2" | Often when receiving data packets, it may be necessary to ignore large sections of the data. This can be achieved by reading each byte individually (and ignoring the returned data), but a better way is to use this Rx_skipbytes macro.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Specifies how many bytes to skip
| |
| |-
| |
| | 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;" | '''CreateIPSocket'''
| |
| |-
| |
| | colspan="2" | Note that sockets on up to 4 channels can be simultaneously opened and these channels are numbered 0 to 3. Note that sockets with different modes can be opened on different channels.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Protocol
| |
| |-
| |
| | colspan="2" | Specifies which IP protocol to use
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Broadcast
| |
| |-
| |
| | colspan="2" | Allows broadcast type packets to be sent and received
| |
| |-
| |
| | 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;" | '''SetDestination'''
| |
| |-
| |
| | colspan="2" | This is used in IP and UDP modes to set the destination of the intended data transfer. The destination IP address needs to be set for both IP and UDP modes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP0
| |
| |-
| |
| | colspan="2" | Specifies the first byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP1
| |
| |-
| |
| | colspan="2" | Specifies the second byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP2
| |
| |-
| |
| | colspan="2" | Specifies the third byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP3
| |
| |-
| |
| | colspan="2" | Specifies the fourth byte of an IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''GetConsole'''
| |
| |-
| |
| | colspan="2" | Obtain the console instance for the TCP/IP base.
| |
| |-
| |
| |-
| |
| | 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;" | '''TxStart'''
| |
| |-
| |
| | colspan="2" | This macro indicates the start of data transmission for the specified buffer. In TCP mode, data transmission can only begin once the socket has become established. In other modes, data transmission can occur as soon as the socket has been opened.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxReadByte'''
| |
| |-
| |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'RxReadByte' (or any other read function) will read the next byte
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''CreateUDPSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving UDP data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''Send'''
| |
| |-
| |
| | colspan="2" | Send data
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Data
| |
| |-
| |
| | colspan="2" | Data byte buffer to send
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Count
| |
| |-
| |
| | colspan="2" | Number of bytes to send
| |
| |-
| |
| | 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;" | '''RxMatch_6_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 2 bytes and 4 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte3
| |
| |-
| |
| | colspan="2" | Specifies the value of the third byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte4
| |
| |-
| |
| | colspan="2" | Specifies the value of the fourth byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte5
| |
| |-
| |
| | colspan="2" | Specifies the value of the fifth byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte6
| |
| |-
| |
| | colspan="2" | Specifies the value of the sixth byte
| |
| |-
| |
| | 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;" | '''RxMatch_2_Bytes'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 2 bytes of data in the specified channel's reception buffer are the same as those passed as parameters. There are similar functions that check for 4 bytes and 6 bytes.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte1
| |
| |-
| |
| | colspan="2" | Specifies the value of the first byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Byte2
| |
| |-
| |
| | colspan="2" | Specifies the value of the second byte
| |
| |-
| |
| | 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;" | '''SecureClose'''
| |
| |-
| |
| | colspan="2" | Close the secure connection
| |
| |-
| |
| |-
| |
| | 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;" | '''RxReadString'''
| |
| |-
| |
| | colspan="2" | A call to this macro will return a byte of data in the reception buffer of the specified channel. It will also internally increment a pointer to that data so that the next call to 'Rx_readbyte' (or any other read function) will read the next byte
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Length
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| |
| | 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;" | '''TxEnd'''
| |
| |-
| |
| | colspan="2" | Once the transmit buffer has been filled with data, call this macro to actually send the data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''SetChannel'''
| |
| |-
| |
| | colspan="2" | Dictates the TCP IP channel used for socket communications allowing for multiple parrallel communication streams to co-exist, Used by the network comms component to drive the TCP IP runtime comms
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Range: 0 to 3
| |
| |-
| |
| | 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;" | '''Listen'''
| |
| |-
| |
| | colspan="2" | Bind the socket to a port on the local host and set to listen mode. First open a socket on the local device using the Socket function and check that it is successful.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | 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;" | '''CreateTCPSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving TCP data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Hi
| |
| |-
| |
| | colspan="2" | Port High Byte
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Src_Port_Lo
| |
| |-
| |
| | colspan="2" | Port Low Byte
| |
| |-
| |
| | 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;" | '''RxDataAvailable'''
| |
| |-
| |
| | colspan="2" | This macro is used to check whether or not data has been received by the Internet E-Block. A return value of zero indicated that no data has been received. A positive return value indicates that data is available.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''SocketOpen'''
| |
| |-
| |
| | colspan="2" | Attempts to create a socket on the local device. Type =0 for TCP, =1 for UDP This must be successfully done before attempting connection with a remote destination. Returns 1 if successful, 0 if not.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Type
| |
| |-
| |
| | colspan="2" | Type of socket to create
| |
| |-
| |
| | 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;" | '''TxSendByte'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with data. It can fill the buffer with a single byte of data, or with a string of information.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Data
| |
| |-
| |
| | 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;" | '''TCPListen'''
| |
| |-
| |
| | colspan="2" | This macro puts a previously opened TCP channel in "passive open" mode. This is the required mode when writing a TCP server application (e.g. a web server to display HTML web pages).
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''RxFlushData'''
| |
| |-
| |
| | colspan="2" | Once data reception has been completed, this macro should be called to discard the data packet and allow other data packets to be read.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''TCPConnect'''
| |
| |-
| |
| | colspan="2" | This macro puts a previously opened TCP channel in "active open" mode. This is the required mode when writing a TCP client application (e.g. using SMTP to send an email).
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP0
| |
| |-
| |
| | colspan="2" | First Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP1
| |
| |-
| |
| | colspan="2" | Second Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP2
| |
| |-
| |
| | colspan="2" | Third Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_IP3
| |
| |-
| |
| | colspan="2" | Fourth Byte of IP address
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Hi
| |
| |-
| |
| | colspan="2" | High Byte of destination port
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Dst_Port_Lo
| |
| |-
| |
| | colspan="2" | Low Byte of destination port
| |
| |-
| |
| | 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;" | '''GetPropertyVal'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Property
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| |
| | 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;" | '''SocketClose'''
| |
| |-
| |
| | colspan="2" | Close the socket
| |
| |-
| |
| |-
| |
| | 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;" | '''SecureRead'''
| |
| |-
| |
| | colspan="2" | Attempts to read max number of bytes from the secure socket into the buffer. Returns actual number of bytes read.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | buffer
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | max
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| |
| | 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;" | '''RxMatchMyMAC'''
| |
| |-
| |
| | colspan="2" | This macro returns a non-zero value when the next 6 bytes of data in the specified channel's reception buffer are the same as the Internet E-block's MAC address entered in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''AcceptOpen'''
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| |-
| |
| | 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;" | '''RxDataSize'''
| |
| |-
| |
| | colspan="2" | This macro is used to detect the size of data collected by the Rx_data_available macro.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''TxSendMyMAC'''
| |
| |-
| |
| | colspan="2" | This macro fills the specified channel's transmit buffer with 6 bytes of data representing this Internet E-Block's MAC address as specified in the component's property page.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''CreateMACSocket'''
| |
| |-
| |
| | colspan="2" | This macro creates a socket for sending and receiving Ethernet data using raw data.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Promiscuous
| |
| |-
| |
| | colspan="2" | Receive everything (1) or just data bound for your MAC (0)
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Broadcast
| |
| |-
| |
| | colspan="2" | Allows broadcast messages to be accepted (1) or rejected (0)
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Error
| |
| |-
| |
| | colspan="2" | Allowsmessages with errors to be accepted (1) or rejected (0)
| |
| |-
| |
| | 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;" | '''AcceptClose'''
| |
| |-
| |
| | colspan="2" | Close the accept socket
| |
| |-
| |
| |-
| |
| | 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;" | '''SecureInit'''
| |
| |-
| |
| | colspan="2" | Call once to initialise the secure socket funtionality
| |
| |-
| |
| |-
| |
| | 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;" | '''GetSocketStatus'''
| |
| |-
| |
| | colspan="2" | This returns the state of the requested channel's socket.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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;" | '''Initialise'''
| |
| |-
| |
| | colspan="2" | Resets and initialises the Internet E-Block. It sets up the gateway address, subnet mask, device IP address and device MAC address as defined in the properties of the Flowcode component. This macro must be called before any other TCP_IP component macros
| |
| |-
| |
| |-
| |
| | 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;" | '''TCPClose'''
| |
| |-
| |
| | colspan="2" | When an established TCP connection has finished transmission of data, either the local application (i.e. your code) or the remote application (i.e. the application at the other end of the connection) can initiate closure of the socket.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Channel
| |
| |-
| |
| | colspan="2" | Specifies the communications channel 0-3
| |
| |-
| |
| | 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''' |
| |- | | |- |
| |- | | |- |
| Line 4,795: |
Line 1,225: |
| | colspan="2" | List of network interfaces connected to the PC. Sets which interface we are communicating via. | | | colspan="2" | List of network interfaces connected to the PC. Sets which interface we are communicating via. |
| |- | | |- |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Gateway IP | | | width="90%" class="mtx-class-propfolder" | Gateway IP |
| |- | | |- |
| |- | | |- |
| Line 4,819: |
Line 1,249: |
| | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface. | | | colspan="2" | Gateway IP address to the Internet, auto populated from the selected interface. |
| |- | | |- |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Subnet Mask | | | width="90%" class="mtx-class-propfolder" | Subnet Mask |
| |- | | |- |
| |- | | |- |
| Line 4,843: |
Line 1,273: |
| | colspan="2" | Network IP subnet mask, auto populated from the selected interface. | | | colspan="2" | Network IP subnet mask, auto populated from the selected interface. |
| |- | | |- |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | IP Address | | | width="90%" class="mtx-class-propfolder" | IP Address |
| |- | | |- |
| |- | | |- |
| Line 4,867: |
Line 1,297: |
| | colspan="2" | Network IP address, auto populated from the selected interface. | | | colspan="2" | Network IP address, auto populated from the selected interface. |
| |- | | |- |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | MAC Address | | | width="90%" class="mtx-class-propfolder" | MAC Address |
| |- | | |- |
| |- | | |- |
| Line 4,901: |
Line 1,331: |
| | colspan="2" | Network MAC address, auto populated from the selected interface. | | | colspan="2" | Network MAC address, auto populated from the selected interface. |
| |- | | |- |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Notify | | | width="90%" class="mtx-class-propfolder" | Notify |
| |- | | |- |
| |- | | |- |