Ethernet Module
Contents
Introduction
- This project aims to develop an Ethernet Module, to be used in conjunction with a 8/16 bits embedded system such as the dsPic33F development board.
- The entire Ethernet Module consists of:
Useful Links
DM9000A
- DM9000A Description
- DM9000A Datasheet
- Application Circuit
- Layout Guidelines
- Application Note
- DM9000A Official Drivers
uIP
lwIP
HTML
- W3 Schools: Learning how to write HTML and JavaScript
- Nvu: Open source HTML Editor
SNMP
Hardware
Component List
Special Item | Description | Quantity |
---|---|---|
DM9000AEP | Ethernet Controller | 1 |
HR911102A | RJ45 Connector with Integrated Magnetics for 10/100 Base-TX | 1 |
93LC46B-I/SN | 1K Serial EEPROM | 1 (Optional) |
25MHz Crystal | Crystal | 1 |
22pF | For Crystal Use | 2 |
220uF | For RXVDD25/TXVDD25 | 1 |
49.9ohm | For RX+/RX-/TX+/TX- | 4 |
6.8kohm | For BGRES/BGGND | 1 |
510ohm | For LEDs | 2 |
Circuit and PCB
in gEDA format and its gEDA sym and footprints
Software Driver
- Download here
- Base on FreeRTOS and dsPIC33 platform
- Using POSIX-like API:
- int dmfe_open(int flags): initialize the Ethernet controller for 10MHz Half-Duplex
- int dmfe_close(): turn off the PHY layer
- int dmfe_read(void): copy a packet to the default buffer
- int dmfe_write(unsigned char device, unsigned char *buf, int count): copy count bytes of the data from buf and transmit
- void dmfe_interrupt(void): process the transmit interrupt from DM9000A
TCP/IP Stack
- uIP and lwIP are light weight TCP/IP Stack designed for 8-bit/16-bit embedded systems.
uIP
- Develped by Adam Dunkels of the Networked Embedded Systems group at the Swedish Institute of Computer Science.
- uIP is under the BSD-style license
lwIP
- lwIP is a small independent implementation of uIP.
- It is more powerful than uIP but requires more memory.
- lwIP is under the Modified BSD License
Ethernet Application
DHCP Client
- To be added.
Web Server
- To be added.
SNMP Agent
- Simple Network Management Protocol (SNMP) is a standard protocol to access variables to remote device via the Internet.
- It belongs to the Application Layer, as in HTTP.
- If a device is SNMP compatible, any SNMP compatible host system can monitor and control that device.
Components in a SNMP System
- Network Management Station (NMS)
- This is a client, initiating SNMP communication.
- This can be a PC with an NMS software, polling data from the SNMP agents periodically.
- SNMP Agents
- These are servers, responding to one or multiple NMS requests.
- Management Information Base (MIB)
- A special collection of variables managed by the SNMP agents.
- MIB has a tree-like structure.
- An Object Identifier (OID) is given for each node.
- Data are stored at the end-nodes.
- Private variables may be constructed under the "enterprise" sub-tree.
- The OID (41.6.1.4.X) for "enterprise" can be obtained from Internet Assigned Number Authority (IANA).