Component: TCP/IP (ENC28J60) (Comms: Networking)
From Flowcode Help
(Redirected from Component: ID 8aab4b54 a912 449c b11a 7c1a5db8d591)
Jump to navigationJump to searchAuthor | Matrix TSL |
Version | 2.2 |
Category | Comms: Networking |
Contents
- 1 TCP/IP (ENC28J60) component
- 2 Component Source Code
- 3 Detailed description
- 4 Examples
- 5 Macro reference
- 5.1 CheckArpPacketIsMyreplyArp
- 5.2 CheckForARP
- 5.3 CheckForIp
- 5.4 CheckForPing
- 5.5 CheckForTCPPort
- 5.6 CheckForTCPType
- 5.7 ClientSendPacket
- 5.8 ControlLEDs
- 5.9 FillTcpArray
- 5.10 FillTcpData
- 5.11 GetDataLength
- 5.12 GetModuleRevision
- 5.13 GetSendersMAC
- 5.14 GetTcpDataPointer
- 5.15 Initialise
- 5.16 InitialiseDataLengthInfo
- 5.17 MakeArpAnswerFromRequest
- 5.18 MakeArpRequest
- 5.19 MakeEchoReplyFromRequest
- 5.20 MakeTcpAckFromAny
- 5.21 MakeTcpAckWithData
- 5.22 MakeTcpSynackFromSyn
- 5.23 PacketReceive
- 5.24 PacketSend
- 5.25 ReadArrayFromBuffer
- 5.26 ReadRegister
- 5.27 ReadStringFromBuffer
- 5.28 SetMyIPAddress
- 5.29 SetMyMACAddress
- 5.30 WriteRegister
- 6 Property reference
TCP/IP (ENC28J60) component
A set of routines used to control a ENC28J60 TCP/IP Module. Required connections VCC, Reset, GND, SCK, MISO, MOSI, CS. Leave these pins disconnected CLKOUT, ENC_WOL, ENC_INT
Component Source Code
Please click here to download the component source project: FC_Comp_Source_TCPIP_ENC28J60.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_TCPIP_ENC28J60.fcfx
Detailed description
No detailed description exists yet for this component
Examples
Here is a simple example to help get started with the ENC28J60 module.
The example program creates a web page server on the network and will also respond to ping requests.
The HTML to drive the web pages is included in the flowchart near the bottom of the main program loop.
Macro reference
CheckArpPacketIsMyreplyArp
![]() |
CheckArpPacketIsMyreplyArp |
![]() |
Return |
CheckForARP
![]() |
CheckForARP |
Checks to see if the received data is an ARP request with my IP address. | |
![]() |
Length |
![]() |
Return |
CheckForIp
![]() |
CheckForIp |
Checks to see if the received data is an IP request with my IP address. | |
![]() |
Length |
![]() |
Return |
CheckForPing
![]() |
CheckForPing |
Checks to see if the received data is a Ping request | |
![]() |
Return |
CheckForTCPPort
![]() |
CheckForTCPPort |
Checks to see if the received data is requesting the server port | |
![]() |
Port |
![]() |
Return |
CheckForTCPType
![]() |
CheckForTCPType |
Checks to what kind of TCP type the received data is requesting. Returns a bit field specifying the type of request. 0x01 = Ack Requires, 0x02 = Synchronise 0x10 = Ack | |
![]() |
Return |
ClientSendPacket
![]() |
ClientSendPacket |
![]() |
DestPort |
![]() |
SourcePort |
![]() |
Flags |
![]() |
MaxSegmentSize |
![]() |
ClearSeqAck |
![]() |
NextAckNum |
![]() |
DataLength |
![]() |
DestMac |
![]() |
DestIp |
![]() |
Return |
ControlLEDs
![]() |
ControlLEDs |
Allows both the LEDs on the Ethernet socket to be controlled. Useful for checking if the SPI communications are functioning correctly. | |
![]() |
Mode |
0=Off, 1=On, 2=Auto | |
![]() |
Return |
FillTcpArray
![]() |
FillTcpArray |
![]() |
Position |
![]() |
Count |
![]() |
Data |
![]() |
Return |
FillTcpData
![]() |
FillTcpData |
![]() |
Position |
![]() |
Data |
![]() |
Return |
GetDataLength
![]() |
GetDataLength |
Returns the number of received data bytes after the headers | |
![]() |
Return |
GetModuleRevision
![]() |
GetModuleRevision |
Requets the module revision number and returns the value supplied by the module's firmware. | |
![]() |
Return |
GetSendersMAC
![]() |
GetSendersMAC |
Gets the MAC address from locations 6-11 of the IP Header | |
![]() |
MAC |
6-byte Array to store the MAC address | |
![]() |
Return |
GetTcpDataPointer
![]() |
GetTcpDataPointer |
![]() |
Return |
Initialise
InitialiseDataLengthInfo
![]() |
InitialiseDataLengthInfo |
Initialises the data pointers to allow us to craft a response containing data | |
![]() |
Return |
MakeArpAnswerFromRequest
![]() |
MakeArpAnswerFromRequest |
![]() |
Return |
MakeArpRequest
![]() |
MakeArpRequest |
![]() |
ServerIP |
![]() |
Return |
MakeEchoReplyFromRequest
![]() |
MakeEchoReplyFromRequest |
![]() |
Length |
![]() |
Return |
MakeTcpAckFromAny
![]() |
MakeTcpAckFromAny |
![]() |
Port |
![]() |
Return |
MakeTcpAckWithData
![]() |
MakeTcpAckWithData |
![]() |
DataLength |
![]() |
Return |
MakeTcpSynackFromSyn
![]() |
MakeTcpSynackFromSyn |
![]() |
Port |
![]() |
Return |
PacketReceive
![]() |
PacketReceive |
Attempts to receive a data packet from the ENC28J60 module. Returns the number of bytes received. | |
![]() |
Return |
PacketSend
![]() |
PacketSend |
Attempts to transmit a data packet to the ENC28J60 module. | |
![]() |
Length |
![]() |
Return |
ReadArrayFromBuffer
ReadRegister
![]() |
ReadRegister |
Reads the value from a single register onboard the ENC28J60 module. | |
![]() |
Address |
![]() |
Return |
ReadStringFromBuffer
SetMyIPAddress
SetMyMACAddress
WriteRegister
![]() |
WriteRegister |
Writes a value to a single register onboard the ENC28J60 module. | |
![]() |
Address |
![]() |
Data |
![]() |
Return |