User manual

Table Of Contents
mikroC PRO for PIC32
MikroElektronika
473
SPI_Ethernet_24j600_doPacket
SPI_Ethernet_24j600_putByte
Prototype
unsigned int SPI_Ethernet_24j600_doPacket();
Description This is MAC module routine. It processes next received packet if such exists. Packets are processed
in the following manner:
- ARP & ICMP requests are replied automatically.
- upon TCP request the SPI_Ethernet_24j600_UserTCP function is called for further processing.
- upon UDP request the SPI_Ethernet_24j600_UserUDP function is called for further processing.
Parameters None.
Returns - 0 - upon successful packet processing (zero packets received or received packet processed
successfully).
- 1 - upon reception error or receive buffer corruption. ENC24J600 controller needs to be restarted.
- 2 - received packet was not sent to us (not our IP, nor IP broadcast address).
- 3 - received IP packet was not IPv4.
- 4 - received packet was of type unknown to the library.
Requires Ethernet module has to be initialized. See SPI_Ethernet_24j600_Init.
Example
if (SPI_Ethernet_24j600_doPacket() == 0)(1) { // process received packets
...
}
Notes SPI_Ethernet_24j600_doPacket must be called as often as possible in user’s code.
Prototype
void SPI_Ethernet_24j600_putByte(unsigned char v);
Description This is MAC module routine. It stores one byte to address pointed by the current ENC24J600 write
pointer (EWRPT).
Parameters - v: value to store
Returns Nothing.
Requires Ethernet module has to be initialized. See SPI_Ethernet_24j600_Init.
Example
char data_;
...
SPI_Ethernet_24j600_putByte(data); // put an byte into ENC24J600 buffer
Notes None.