Register definitions for W5100 devices. More...
Register definitions for W5100 devices.
Definition in file w5100_regs.h.
Go to the source code of this file.
SPI commands | |
| #define | CMD_READ (0x0f) |
| #define | CMD_WRITE (0xf0) |
Common registers | |
| #define | REG_MODE (0x0000) |
| mode | |
| #define | REG_GAR0 (0x0001) |
| gateway address 0 | |
| #define | REG_GAR1 (0x0002) |
| gateway address 1 | |
| #define | REG_GAR2 (0x0003) |
| gateway address 2 | |
| #define | REG_GAR3 (0x0004) |
| gateway address 3 | |
| #define | REG_SUB0 (0x0005) |
| subnet mask 0 | |
| #define | REG_SUB1 (0x0006) |
| subnet mask 1 | |
| #define | REG_SUB2 (0x0007) |
| subnet mask 2 | |
| #define | REG_SUB3 (0x0008) |
| subnet mask 3 | |
| #define | REG_SHAR0 (0x0009) |
| source hardware address 0 | |
| #define | REG_SHAR1 (0x000a) |
| source hardware address 1 | |
| #define | REG_SHAR2 (0x000b) |
| source hardware address 2 | |
| #define | REG_SHAR3 (0x000c) |
| source hardware address 3 | |
| #define | REG_SHAR4 (0x000d) |
| source hardware address 4 | |
| #define | REG_SHAR5 (0x000e) |
| source hardware address 5 | |
| #define | REG_SIPR0 (0x000f) |
| source IP address 0 | |
| #define | REG_SIPR1 (0x0010) |
| source IP address 1 | |
| #define | REG_SIPR2 (0x0011) |
| source IP address 2 | |
| #define | REG_SIPR3 (0x0012) |
| source IP address 3 | |
| #define | REG_IR (0x0015) |
| interrupt flags | |
| #define | REG_IMR (0x0016) |
| interrupt masks | |
| #define | REG_RTR0 (0x0017) |
| retry time 0 | |
| #define | REG_RTR1 (0x0018) |
| retry time 1 | |
| #define | REG_RCR (0x0019) |
| retry count | |
| #define | REG_RMSR (0x001a) |
| RX memory size. | |
| #define | REG_TMSR (0x001b) |
| TX memory size. | |
| #define | REG_PATR0 (0x001c) |
| PPPoE auth type 0. | |
| #define | REG_PATR1 (0x001d) |
| PPPoE auth type 1. | |
| #define | REG_PTIMER (0x0028) |
| PPP LCP request timer. | |
| #define | REG_PMAGIC (0x0029) |
| PPP LCP magic number. | |
| #define | REG_UIPR0 (0x002a) |
| unreachable IP address 0 | |
| #define | REG_UIPR1 (0x002b) |
| unreachable IP address 1 | |
| #define | REG_UIPR2 (0x002c) |
| unreachable IP address 2 | |
| #define | REG_UIPR3 (0x002d) |
| unreachable IP address 3 | |
| #define | REG_UPORT0 (0x00fe) |
| unreachable port 0 | |
| #define | REG_UPORT1 (0x002f) |
| unreachable port 1 | |
Socket 0 registers | |
As we are using the device in MACRAW mode, we only need socket 0. | |
| #define | S0_MR (0x0400) |
| mode | |
| #define | S0_CR (0x0401) |
| control | |
| #define | S0_IR (0x0402) |
| interrupt flags | |
| #define | S0_SR (0x0403) |
| state | |
| #define | S0_DHAR0 (0x0406) |
| destination hardware address 0 | |
| #define | S0_DHAR1 (0x0407) |
| destination hardware address 1 | |
| #define | S0_DHAR2 (0x0408) |
| destination hardware address 2 | |
| #define | S0_DHAR3 (0x0409) |
| destination hardware address 3 | |
| #define | S0_DHAR4 (0x040a) |
| destination hardware address 4 | |
| #define | S0_DHAR5 (0x040b) |
| destination hardware address 5 | |
| #define | S0_DIPR0 (0x040c) |
| destination IP address 0 | |
| #define | S0_DIPR1 (0x040d) |
| destination IP address 1 | |
| #define | S0_DIPR2 (0x040e) |
| destination IP address 2 | |
| #define | S0_DIPR3 (0x040f) |
| destination IP address 3 | |
| #define | S0_DPORT0 (0x0410) |
| destination port 0 | |
| #define | S0_DPORT1 (0x0411) |
| destination port 1 | |
| #define | S0_MSSR0 (0x0412) |
| maximum segment size 0 | |
| #define | S0_MSSR1 (0x0413) |
| maximum segment size 1 | |
| #define | S0_PROTO (0x0414) |
| protocol in IP raw mode | |
| #define | S0_TOS (0x0415) |
| IP TOS. | |
| #define | S0_TTL (0x0416) |
| IP TTL. | |
| #define | S0_TX_FSR0 (0x0420) |
| TX free size 0. | |
| #define | S0_TX_FSR1 (0x0421) |
| TX free size 1. | |
| #define | S0_TX_RD0 (0x0422) |
| TX read pointer 0. | |
| #define | S0_TX_RD1 (0x0423) |
| TX read pointer 1. | |
| #define | S0_TX_WR0 (0x0424) |
| TX write pointer 0. | |
| #define | S0_TX_WR1 (0x0425) |
| TX write pointer 1. | |
| #define | S0_RX_RSR0 (0x0426) |
| RX receive size 0. | |
| #define | S0_RX_RSR1 (0x0427) |
| RX receive size 1. | |
| #define | S0_RX_RD0 (0x0428) |
| RX read pointer 0. | |
| #define | S0_RX_RD1 (0x0429) |
| RX read pointer 1. | |
Some selected bitfield definitions | |
| #define | MODE_RESET (0x80) |
| device mode: reset | |
| #define | RMSR_8KB_TO_S0 (0x03) |
| receive memory size: 8kib | |
| #define | TMSR_8KB_TO_S0 (0x03) |
| transmit memory size: 8kib | |
| #define | IMR_S0_INT (0x01) |
| global socket 0 interrupt mask | |
| #define | MR_UDP (0x02) |
| socket mode: UDP | |
| #define | MR_MACRAW (0x04) |
| socket mode: raw Ethernet | |
| #define | CR_OPEN (0x01) |
| socket command: open | |
| #define | CR_CLOSE (0x10) |
| socket command: close | |
| #define | CR_SEND_MAC (0x21) |
| socket command: send raw | |
| #define | CR_RECV (0x40) |
| socket command: receive new data | |
| #define | IR_SEND_OK (0x10) |
| socket interrupt: send ok | |
| #define | IR_RECV (0x04) |
| socket interrupt: data received | |