Jump to content

Component: Webserver (EB023 v1) (E-blocks 1): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(12 intermediate revisions by 2 users not shown)
Line 16: Line 16:


==Component Source Code==
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx]


Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx]


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




Line 28: Line 36:


==Examples==
==Examples==




Line 37: Line 51:




==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;" | '''SetOutValue'''
|-
| colspan="2" | Set the value of an outbound substitution string 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | index
|-
| 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;" | '''Send_Embedded_HTML_Page4'''
|-
| 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;" | '''Send_Embedded_HTML_Page3'''
|-
| 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;" | '''Send_Embedded_HTML_Page2'''
|-
| 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;" | '''Send_Embedded_HTML_Page1'''
|-
| 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''
|}


==Macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===CheckSocketActivity===
{| 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;" | '''GetInValue'''
| width="90%" class="mtx-class-macrohead" | '''CheckSocketActivity'''
|-
|-
| colspan="2" | Returns the string value of a Request parameter 
| colspan="2" | Checks for activity on the server socket and serves out the webpages to any requesting parties. 
|-
|-
|-
|-
| 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%" | index
|-
| 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''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===CreateServerSocket===
{| 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;" | '''CreateServerSocket'''
| width="90%" class="mtx-class-macrohead" | '''CreateServerSocket'''
|-
|-
| colspan="2" | Creates a listening socket on the selected channel and port ready to accept incoming web page requests. 
| colspan="2" | Creates a listening socket on the selected channel and port ready to accept incoming web page requests. 
Line 160: Line 106:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===GetInValue===
{| 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;" | '''IncRxPtr'''
| width="90%" class="mtx-class-macrohead" | '''GetInValue'''
|-
|-
| colspan="2" |  
| colspan="2" | Returns the string value of a Request parameter 
|-
|-
|-
|-
| 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%" | index
|-
|-
| colspan="2" |  
| 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-string-icon.png]] - STRING
| 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;"
===IncRxPtr===
{| 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;" | '''CheckSocketActivity'''
| width="90%" class="mtx-class-macrohead" | '''IncRxPtr'''
|-
|-
| colspan="2" | Checks for activity on the server socket and serves out the webpages to any requesting parties. 
| colspan="2" |  
|-
|-
|-
|-
| 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%" | Channel
|}
 
 
{| 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" |  
|-
|-
| 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 204: Line 144:




 
===Initialise===
 
{| class="mtx-class-macrotable wikitable"
==Property reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''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" | [[File:Fc9-type-10-icon.png]]
| width="90%" | Label
|-
| colspan="2" | Label used to help identify the component on the panel. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Max Channels
|-
| colspan="2" | Max number of concurrent channels allowed 
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | I2C Address
|-
| colspan="2" | I2C address of the module - bit 0 
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | HTML Source
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | HTML Source
|-
| colspan="2" | Sets the method for streaming data, we can either host it loacally using a property or refer to external files. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Max Pages
|-
| colspan="2" | Maximum number of pages we can serve using the embedded page type webserver. 
|-
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
| width="90%" | Name Page 1
|-
| colspan="2" | Name of HTML page 1 - index.htm is the default page that will be presented. 
|-
| width="10%" align="center" | [[File:Fc9-type-11-icon.png]]
| width="90%" | HTML Page 1
|-
| colspan="2" | Embedded HTML code used for page 1 
|-
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
| width="90%" | Name Page 2
|-
| colspan="2" | Name of HTML page 2 
|-
| width="10%" align="center" | [[File:Fc9-type-11-icon.png]]
| width="90%" | HTML Page 2
|-
| colspan="2" | Embedded HTML code used for page 2 
|-
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
| width="90%" | Name Page 3
|-
| colspan="2" | Name of HTML page 3  
|-
| width="10%" align="center" | [[File:Fc9-type-11-icon.png]]
| width="90%" | HTML Page 3
|-
| colspan="2" | Embedded HTML code used for page 3  
|-
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
| width="90%" | Name Page 4
|-
| colspan="2" | Name of HTML page 4 
|-
| width="10%" align="center" | [[File:Fc9-type-11-icon.png]]
| width="90%" | HTML Page 4
|-
| colspan="2" | Embedded HTML code used for page 4 
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Channel
|-
| colspan="2" | Channel selection 
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Baud Select
|-
| colspan="2" | Baud rate option selector 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Baud Rate
|-
| colspan="2" | Baud rate to be used 
|-
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
| width="90%" | Stop Delay
|-
| colspan="2" | On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not  a 10ms delay between an I2C stop event and the next I2C start event.  Most modern microcontrollers will not have a problem so this property can be disabled to speed up the  I2C communications.  
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | SDA
|-
| colspan="2" | Pin used for SDA (data signal) 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | SCL
|-
| colspan="2" | Pin used for SCL (clock signal) 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Int Pin
|-
| colspan="2" | Interrupt pin connection on Wiznet module 
|-
| 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" | IP address of the gateway to the internet if applicable. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Gateway1
|-
| colspan="2" | IP address of the gateway to the internet if applicable. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Gateway2
|-
| colspan="2" | IP address of the gateway to the internet if applicable. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Gateway3
|-
| colspan="2" | IP address of the gateway to the internet if applicable. 
|-
| 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" | Subnet mask of the server - usually 255.255.255.0 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Subnet1
|-
| colspan="2" | Subnet mask of the server - usually 255.255.255.0 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Subnet2
|-
| colspan="2" | Subnet mask of the server - usually 255.255.255.0 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Subnet3
|-
| colspan="2" | Subnet mask of the server - usually 255.255.255.0 
|-
| 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" | IP address of the server - usually 192.168.0.x or 192.168.1.x 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | IP1
|-
| colspan="2" | IP address of the server - usually 192.168.0.x or 192.168.1.x 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | IP2
|-
| colspan="2" | IP address of the server - usually 192.168.0.x or 192.168.1.x 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | IP3
|-
| colspan="2" | IP address of the server - usually 192.168.0.x or 192.168.1.x 
|-
| 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" | MAC address of the server 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | MAC1
|-
| colspan="2" | MAC address of the server 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | MAC2
|-
| colspan="2" | MAC address of the server 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | MAC3
|-
| colspan="2" | MAC address of the server 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | MAC4
|-
| colspan="2" | MAC address of the server 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | MAC5
|-
| colspan="2" | MAC address of the server 
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Substitutions
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Outgoing
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Count
|-
| colspan="2" | Maximum number of outbound string substitutions 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | Length 0
|-
| colspan="2" | Number of bytes to reserve for data string. 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | Length 1
|-
| colspan="2" | Number of bytes to reserve for data string. 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | Length 2
|-
| colspan="2" | Number of bytes to reserve for data string. 
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Incoming
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Count
|-
| colspan="2" | Maximum number of inbound string substitutions 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | Length 0
|-
| colspan="2" | Number of bytes to reserve for data string. 
|}==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;" | '''SetOutValue'''
|-
| colspan="2" | Set the value of an outbound substitution string 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | index
|-
| 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 494: Line 158:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Send_Embedded_HTML_Page1===
{| 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_Embedded_HTML_Page4'''
| width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page1'''
|-
|-
| colspan="2" |  
| colspan="2" |  
Line 507: Line 172:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Send_Embedded_HTML_Page2===
{| 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_Embedded_HTML_Page3'''
| width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page2'''
|-
|-
| colspan="2" |  
| colspan="2" |  
Line 520: Line 186:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Send_Embedded_HTML_Page3===
{| 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_Embedded_HTML_Page2'''
| width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page3'''
|-
|-
| colspan="2" |  
| colspan="2" |  
Line 533: Line 200:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Send_Embedded_HTML_Page4===
{| 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_Embedded_HTML_Page1'''
| width="90%" class="mtx-class-macrohead" | '''Send_Embedded_HTML_Page4'''
|-
|-
| colspan="2" |  
| colspan="2" |  
Line 546: Line 214:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===SetOutValue===
{| 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;" | '''GetInValue'''
| width="90%" class="mtx-class-macrohead" | '''SetOutValue'''
|-
|-
| colspan="2" | Returns the string value of a Request parameter 
| colspan="2" | Set the value of an outbound substitution string 
|-
|-
|-
|-
Line 559: Line 228:
| colspan="2" |  
| colspan="2" |  
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | value
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CreateServerSocket'''
|-
| colspan="2" | Creates a listening socket on the selected channel and port ready to accept incoming web page requests. 
|-
|-
| 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%" | Port_Hi
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Port_Lo
|-
| 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;" | '''IncRxPtr'''
|-
| colspan="2" |  
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Channel
|-
|-
| colspan="2" |  
| colspan="2" |  
Line 608: Line 236:
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CheckSocketActivity'''
|-
| colspan="2" | Checks for activity on the server socket and serves out the webpages to any requesting parties. 
|-
|-
| 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''
|}




==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 661: Line 261:
| colspan="2" | I2C address of the module - bit 0 
| colspan="2" | I2C address of the module - bit 0 
|-
|-
| 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;" | HTML Source
| width="90%" class="mtx-class-propfolder" | HTML Source
|-
|-
|-
|-
Line 715: Line 315:
| colspan="2" | Embedded HTML code used for page 4 
| colspan="2" | Embedded HTML code used for page 4 
|-
|-
| 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;" | Connections
| width="90%" class="mtx-class-propfolder" | Connections
|-
|-
|-
|-
Line 754: Line 354:
| colspan="2" | Interrupt pin connection on Wiznet module 
| colspan="2" | Interrupt pin connection on Wiznet module 
|-
|-
| 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 778: Line 378:
| colspan="2" | IP address of the gateway to the internet if applicable. 
| colspan="2" | IP address of the gateway to the internet if applicable. 
|-
|-
| 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 802: Line 402:
| colspan="2" | Subnet mask of the server - usually 255.255.255.0 
| colspan="2" | Subnet mask of the server - usually 255.255.255.0 
|-
|-
| 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 826: Line 426:
| colspan="2" | IP address of the server - usually 192.168.0.x or 192.168.1.x 
| colspan="2" | IP address of the server - usually 192.168.0.x or 192.168.1.x 
|-
|-
| 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 860: Line 460:
| colspan="2" | MAC address of the server 
| colspan="2" | MAC address of the server 
|-
|-
| 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;" | Substitutions
| width="90%" class="mtx-class-propfolder" | Substitutions
|-
|-
|-
|-
| 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;" | Outgoing
| width="90%" class="mtx-class-propfolder" | Outgoing
|-
|-
|-
|-
Line 888: Line 488:
| colspan="2" | Number of bytes to reserve for data string. 
| colspan="2" | Number of bytes to reserve for data string. 
|-
|-
| 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;" | Incoming
| width="90%" class="mtx-class-propfolder" | Incoming
|-
|-
|-
|-

Latest revision as of 14:37, 13 July 2026

Author Matrix TSL
Version 2.0
Category E-blocks 1


Webserver component

Webserver component designed to work with the NM7010A module from Wiznet, as used in the version 1 EB023 E-block. Provides a very simple interface to allow webpages to be hosted from hardware or simulation.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_WebServer_EB023-00-1_EB.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples







Macro reference

CheckSocketActivity

CheckSocketActivity
Checks for activity on the server socket and serves out the webpages to any requesting parties. 
- BYTE Return


CreateServerSocket

CreateServerSocket
Creates a listening socket on the selected channel and port ready to accept incoming web page requests. 
- BYTE Channel
 
- BYTE Port_Hi
 
- BYTE Port_Lo
 
- BYTE Return


GetInValue

GetInValue
Returns the string value of a Request parameter 
- BYTE index
 
- STRING Return


IncRxPtr

IncRxPtr
 
- BYTE Channel
 
- VOID Return


Initialise

Initialise
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  
- VOID Return


Send_Embedded_HTML_Page1

Send_Embedded_HTML_Page1
 
- VOID Return


Send_Embedded_HTML_Page2

Send_Embedded_HTML_Page2
 
- VOID Return


Send_Embedded_HTML_Page3

Send_Embedded_HTML_Page3
 
- VOID Return


Send_Embedded_HTML_Page4

Send_Embedded_HTML_Page4
 
- VOID Return


SetOutValue

SetOutValue
Set the value of an outbound substitution string 
- BYTE index
 
- STRING value
 
- VOID Return


Property reference

Properties
Label
Label used to help identify the component on the panel. 
Max Channels
Max number of concurrent channels allowed 
I2C Address
I2C address of the module - bit 0 
HTML Source
HTML Source
Sets the method for streaming data, we can either host it loacally using a property or refer to external files. 
Max Pages
Maximum number of pages we can serve using the embedded page type webserver. 
Name Page 1
Name of HTML page 1 - index.htm is the default page that will be presented. 
HTML Page 1
Embedded HTML code used for page 1 
Name Page 2
Name of HTML page 2 
HTML Page 2
Embedded HTML code used for page 2 
Name Page 3
Name of HTML page 3  
HTML Page 3
Embedded HTML code used for page 3  
Name Page 4
Name of HTML page 4 
HTML Page 4
Embedded HTML code used for page 4 
Connections
Channel
Channel selection 
Baud Select
Baud rate option selector 
Baud Rate
Baud rate to be used 
Stop Delay
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications.  
SDA
Pin used for SDA (data signal) 
SCL
Pin used for SCL (clock signal) 
Int Pin
Interrupt pin connection on Wiznet module 
Gateway IP
Gateway0
IP address of the gateway to the internet if applicable. 
Gateway1
IP address of the gateway to the internet if applicable. 
Gateway2
IP address of the gateway to the internet if applicable. 
Gateway3
IP address of the gateway to the internet if applicable. 
Subnet Mask
Subnet0
Subnet mask of the server - usually 255.255.255.0 
Subnet1
Subnet mask of the server - usually 255.255.255.0 
Subnet2
Subnet mask of the server - usually 255.255.255.0 
Subnet3
Subnet mask of the server - usually 255.255.255.0 
IP Address
IP0
IP address of the server - usually 192.168.0.x or 192.168.1.x 
IP1
IP address of the server - usually 192.168.0.x or 192.168.1.x 
IP2
IP address of the server - usually 192.168.0.x or 192.168.1.x 
IP3
IP address of the server - usually 192.168.0.x or 192.168.1.x 
MAC Address
MAC0
MAC address of the server 
MAC1
MAC address of the server 
MAC2
MAC address of the server 
MAC3
MAC address of the server 
MAC4
MAC address of the server 
MAC5
MAC address of the server 
Substitutions
Outgoing
Count
Maximum number of outbound string substitutions 
Length 0
Number of bytes to reserve for data string. 
Length 1
Number of bytes to reserve for data string. 
Length 2
Number of bytes to reserve for data string. 
Incoming
Count
Maximum number of inbound string substitutions 
Length 0
Number of bytes to reserve for data string.