mbed OS5

Fork of UIPEthernet by Zoltan Hudak

Committer:
hudakz
Date:
Mon Sep 15 11:12:30 2014 +0000
Revision:
0:5350a66d5279
Child:
4:d774541a34da
rev. 00

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hudakz 0:5350a66d5279 1 This is UIPEthernet version 1.07
hudakz 0:5350a66d5279 2
hudakz 0:5350a66d5279 3 Ethernet library for ENC28J60 shields and breakout boards. Full support for persistent (streaming) TCP-connections and UDP (Client and Server each), ARP, ICMP, DHCP and DNS.
hudakz 0:5350a66d5279 4 Just include 'UIPEthernet.h' and create one IUPEthernet object initialized with the SPI pins of your ENC28J60 board.
hudakz 0:5350a66d5279 5
hudakz 0:5350a66d5279 6 UIPEthernet is written as a wrapper around the mature uIP Stack by Adam Dunkels, which provides the low-level implementation for all supported protocols. To overcome the memory-constrains (a 'regular' uIP-application does all processing in RAM) the ENC28J60 internal memory is used for all stream buffers (in and out). Only 400-600 Bytes of Arduinos RAM are used (depending on the number of concurrently open connections). As of Flash-memory a ATmega368-based Arduino is the minimum requirenment.
hudakz 0:5350a66d5279 7
hudakz 0:5350a66d5279 8 This library is written by Norbert Truchsess <norbert.truchsess@t-online.de>
hudakz 0:5350a66d5279 9
hudakz 0:5350a66d5279 10 uIP was written by Adam Dunkels of the Networked Embedded Systems group at the Swedish Institute of Computer Science.
hudakz 0:5350a66d5279 11
hudakz 0:5350a66d5279 12 This library was inspired by the SerialIP implementation by Adam Nielsen <malvineous@shikadi.net>, actually I took this code as a starting point, but in the latest versions there are very few lines left.
hudakz 0:5350a66d5279 13
hudakz 0:5350a66d5279 14 Installation
hudakz 0:5350a66d5279 15 ------------
hudakz 0:5350a66d5279 16
hudakz 0:5350a66d5279 17 Import into your project as any other mbed library.
hudakz 0:5350a66d5279 18
hudakz 0:5350a66d5279 19 Additional information can be found on the mbed website: https://mbed.org/handbook/mbed-Compiler
hudakz 0:5350a66d5279 20
hudakz 0:5350a66d5279 21 Documentation
hudakz 0:5350a66d5279 22 -------------
hudakz 0:5350a66d5279 23
hudakz 0:5350a66d5279 24 For more information visit:
hudakz 0:5350a66d5279 25
hudakz 0:5350a66d5279 26 - UIPEthernet Repository on github:
hudakz 0:5350a66d5279 27 https://github.com/ntruchsess/arduino_uip
hudakz 0:5350a66d5279 28
hudakz 0:5350a66d5279 29 - Arduino Ethernet library description
hudakz 0:5350a66d5279 30 http://arduino.cc/en/Reference/Ethernet
hudakz 0:5350a66d5279 31 (Arduino_uip uses the same API as that, just include "UIPEthernet.h", "UIPClient.h", "UIPServer.h" and "UIPUDP.h" instead of the stock "Ethernet.h", "EthernetClient.h", "EthernetServer.h " and "EthernetUDP.h")
hudakz 0:5350a66d5279 32
hudakz 0:5350a66d5279 33 - uIP API reference:
hudakz 0:5350a66d5279 34 http://www.sics.se/~adam/uip/uip-1.0-refman/
hudakz 0:5350a66d5279 35
hudakz 0:5350a66d5279 36 - uIP homepage:
hudakz 0:5350a66d5279 37 http://www.sics.se/~adam/uip/index.php/Main_Page
hudakz 0:5350a66d5279 38
hudakz 0:5350a66d5279 39 Licenses
hudakz 0:5350a66d5279 40 -------------
hudakz 0:5350a66d5279 41
hudakz 0:5350a66d5279 42 UIPEthernet.h
hudakz 0:5350a66d5279 43 UIPEthernet.cpp
hudakz 0:5350a66d5279 44
hudakz 0:5350a66d5279 45 Copyright (c) 2013 Norbert Truchsess <norbert.truchsess@t-online.de>
hudakz 0:5350a66d5279 46 All rights reserved.
hudakz 0:5350a66d5279 47
hudakz 0:5350a66d5279 48 Modified (ported to mbed) by Zoltan Hudak <hudakz@inbox.com>
hudakz 0:5350a66d5279 49
hudakz 0:5350a66d5279 50 UIPServer.h
hudakz 0:5350a66d5279 51 UIPServer.cpp
hudakz 0:5350a66d5279 52 UIPClient.h
hudakz 0:5350a66d5279 53 UIPClient.cpp
hudakz 0:5350a66d5279 54 UIPUdp.h
hudakz 0:5350a66d5279 55 UIPUdp.cpp
hudakz 0:5350a66d5279 56 utility/mempool.h
hudakz 0:5350a66d5279 57 utility/mempool.cpp
hudakz 0:5350a66d5279 58
hudakz 0:5350a66d5279 59 Copyright (c) 2013 Norbert Truchsess <norbert.truchsess@t-online.de>
hudakz 0:5350a66d5279 60 All rights reserved.
hudakz 0:5350a66d5279 61
hudakz 0:5350a66d5279 62 This program is free software: you can redistribute it and/or modify
hudakz 0:5350a66d5279 63 it under the terms of the GNU General Public License as published by
hudakz 0:5350a66d5279 64 the Free Software Foundation, either version 3 of the License, or
hudakz 0:5350a66d5279 65 (at your option) any later version.
hudakz 0:5350a66d5279 66
hudakz 0:5350a66d5279 67 This program is distributed in the hope that it will be useful,
hudakz 0:5350a66d5279 68 but WITHOUT ANY WARRANTY; without even the implied warranty of
hudakz 0:5350a66d5279 69 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
hudakz 0:5350a66d5279 70 GNU General Public License for more details.
hudakz 0:5350a66d5279 71
hudakz 0:5350a66d5279 72 You should have received a copy of the GNU General Public License
hudakz 0:5350a66d5279 73 along with this program. If not, see <http://www.gnu.org/licenses/>.
hudakz 0:5350a66d5279 74
hudakz 0:5350a66d5279 75 --------------
hudakz 0:5350a66d5279 76
hudakz 0:5350a66d5279 77 utility/enc28j60.h
hudakz 0:5350a66d5279 78
hudakz 0:5350a66d5279 79 Author : Pascal Stang (c)2005
hudakz 0:5350a66d5279 80 Modified by Norbert Truchsess
hudakz 0:5350a66d5279 81 Copyright: GPL V2
hudakz 0:5350a66d5279 82
hudakz 0:5350a66d5279 83 --------------
hudakz 0:5350a66d5279 84
hudakz 0:5350a66d5279 85 utility/Enc28J60Network.h
hudakz 0:5350a66d5279 86 utility/Enc28J60Network.cpp
hudakz 0:5350a66d5279 87
hudakz 0:5350a66d5279 88 Copyright (c) 2013 Norbert Truchsess <norbert.truchsess@t-online.de>
hudakz 0:5350a66d5279 89 All rights reserved.
hudakz 0:5350a66d5279 90
hudakz 0:5350a66d5279 91 inspired and based on enc28j60.c file from the AVRlib library by Pascal Stang.
hudakz 0:5350a66d5279 92
hudakz 0:5350a66d5279 93 Modified (ported to mbed) by Zoltan Hudak <hudakz@inbox.com>
hudakz 0:5350a66d5279 94
hudakz 0:5350a66d5279 95 This program is free software: you can redistribute it and/or modify
hudakz 0:5350a66d5279 96 it under the terms of the GNU General Public License as published by
hudakz 0:5350a66d5279 97 the Free Software Foundation, either version 3 of the License, or
hudakz 0:5350a66d5279 98 (at your option) any later version.
hudakz 0:5350a66d5279 99
hudakz 0:5350a66d5279 100 This program is distributed in the hope that it will be useful,
hudakz 0:5350a66d5279 101 but WITHOUT ANY WARRANTY; without even the implied warranty of
hudakz 0:5350a66d5279 102 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
hudakz 0:5350a66d5279 103 GNU General Public License for more details.
hudakz 0:5350a66d5279 104
hudakz 0:5350a66d5279 105 You should have received a copy of the GNU General Public License
hudakz 0:5350a66d5279 106 along with this program. If not, see <http://www.gnu.org/licenses/>.
hudakz 0:5350a66d5279 107
hudakz 0:5350a66d5279 108 --------------
hudakz 0:5350a66d5279 109
hudakz 0:5350a66d5279 110 utility/uip.c
hudakz 0:5350a66d5279 111 utility/uip_arp.h
hudakz 0:5350a66d5279 112 utility/uip_arp.c
hudakz 0:5350a66d5279 113 utility/uip_arch.h
hudakz 0:5350a66d5279 114 utility/uip.h
hudakz 0:5350a66d5279 115 utility/uipopt.h
hudakz 0:5350a66d5279 116
hudakz 0:5350a66d5279 117 Copyright (c) 2001-2003, Adam Dunkels <adam@sics.se>, <adam@dunkels.com>.
hudakz 0:5350a66d5279 118 All rights reserved.
hudakz 0:5350a66d5279 119
hudakz 0:5350a66d5279 120 Redistribution and use in source and binary forms, with or without
hudakz 0:5350a66d5279 121 modification, are permitted provided that the following conditions
hudakz 0:5350a66d5279 122 are met:
hudakz 0:5350a66d5279 123 1. Redistributions of source code must retain the above copyright
hudakz 0:5350a66d5279 124 notice, this list of conditions and the following disclaimer.
hudakz 0:5350a66d5279 125 2. Redistributions in binary form must reproduce the above copyright
hudakz 0:5350a66d5279 126 notice, this list of conditions and the following disclaimer in the
hudakz 0:5350a66d5279 127 documentation and/or other materials provided with the distribution.
hudakz 0:5350a66d5279 128 3. Neither the name of the Institute nor the names of its contributors
hudakz 0:5350a66d5279 129 may be used to endorse or promote products derived from this software
hudakz 0:5350a66d5279 130 without specific prior written permission.
hudakz 0:5350a66d5279 131
hudakz 0:5350a66d5279 132 THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
hudakz 0:5350a66d5279 133 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
hudakz 0:5350a66d5279 134 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
hudakz 0:5350a66d5279 135 ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
hudakz 0:5350a66d5279 136 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
hudakz 0:5350a66d5279 137 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
hudakz 0:5350a66d5279 138 OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
hudakz 0:5350a66d5279 139 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
hudakz 0:5350a66d5279 140 LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
hudakz 0:5350a66d5279 141 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
hudakz 0:5350a66d5279 142 SUCH DAMAGE.
hudakz 0:5350a66d5279 143
hudakz 0:5350a66d5279 144 --------------
hudakz 0:5350a66d5279 145
hudakz 0:5350a66d5279 146 uip-conf.h
hudakz 0:5350a66d5279 147 utility/uip-neighbor.h
hudakz 0:5350a66d5279 148 utility/uip-neighbor.c
hudakz 0:5350a66d5279 149 utility/uip_timer.h
hudakz 0:5350a66d5279 150 utility/uip_timer.c
hudakz 0:5350a66d5279 151 utility/uip_clock.h
hudakz 0:5350a66d5279 152
hudakz 0:5350a66d5279 153 Author Adam Dunkels Adam Dunkels <adam@sics.se>, <adam@dunkels.com>
hudakz 0:5350a66d5279 154 Copyright (c) 2004,2006, Swedish Institute of Computer Science.
hudakz 0:5350a66d5279 155 All rights reserved.
hudakz 0:5350a66d5279 156
hudakz 0:5350a66d5279 157 Redistribution and use in source and binary forms, with or without
hudakz 0:5350a66d5279 158 modification, are permitted provided that the following conditions
hudakz 0:5350a66d5279 159 are met:
hudakz 0:5350a66d5279 160 1. Redistributions of source code must retain the above copyright
hudakz 0:5350a66d5279 161 notice, this list of conditions and the following disclaimer.
hudakz 0:5350a66d5279 162 2. Redistributions in binary form must reproduce the above copyright
hudakz 0:5350a66d5279 163 notice, this list of conditions and the following disclaimer in the
hudakz 0:5350a66d5279 164 documentation and/or other materials provided with the distribution.
hudakz 0:5350a66d5279 165 3. Neither the name of the Institute nor the names of its contributors
hudakz 0:5350a66d5279 166 may be used to endorse or promote products derived from this software
hudakz 0:5350a66d5279 167 without specific prior written permission.
hudakz 0:5350a66d5279 168
hudakz 0:5350a66d5279 169 THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
hudakz 0:5350a66d5279 170 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
hudakz 0:5350a66d5279 171 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
hudakz 0:5350a66d5279 172 ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
hudakz 0:5350a66d5279 173 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
hudakz 0:5350a66d5279 174 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
hudakz 0:5350a66d5279 175 OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
hudakz 0:5350a66d5279 176 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
hudakz 0:5350a66d5279 177 LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
hudakz 0:5350a66d5279 178 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
hudakz 0:5350a66d5279 179 SUCH DAMAGE.
hudakz 0:5350a66d5279 180
hudakz 0:5350a66d5279 181 --------------
hudakz 0:5350a66d5279 182
hudakz 0:5350a66d5279 183 Dhcp.h
hudakz 0:5350a66d5279 184 Dhcp.cpp
hudakz 0:5350a66d5279 185
hudakz 0:5350a66d5279 186 DHCP Library v0.3 - April 25, 2009
hudakz 0:5350a66d5279 187 Author: Jordan Terrell - blog.jordanterrell.com
hudakz 0:5350a66d5279 188 - as included in Arduinos stock Ethernet-library, no special licence mentioned here
hudakz 0:5350a66d5279 189
hudakz 0:5350a66d5279 190 --------------
hudakz 0:5350a66d5279 191
hudakz 0:5350a66d5279 192 Dns.h
hudakz 0:5350a66d5279 193 Dns.cpp
hudakz 0:5350a66d5279 194
hudakz 0:5350a66d5279 195 (c) Copyright 2009-2010 MCQN Ltd.
hudakz 0:5350a66d5279 196 Released under Apache License, version 2.0
hudakz 0:5350a66d5279 197
hudakz 0:5350a66d5279 198 --------------
hudakz 0:5350a66d5279 199
hudakz 0:5350a66d5279 200 clock-arch.h
hudakz 0:5350a66d5279 201 clock-arch.c
hudakz 0:5350a66d5279 202
hudakz 0:5350a66d5279 203 Copyright (c) 2010 Adam Nielsen <malvineous@shikadi.net>
hudakz 0:5350a66d5279 204 All rights reserved.
hudakz 0:5350a66d5279 205
hudakz 0:5350a66d5279 206 Modified (ported to mbed) by Zoltan Hudak <hudakz@inbox.com>
hudakz 0:5350a66d5279 207
hudakz 0:5350a66d5279 208 This library is free software; you can redistribute it and/or
hudakz 0:5350a66d5279 209 modify it under the terms of the GNU Lesser General Public
hudakz 0:5350a66d5279 210 License as published by the Free Software Foundation; either
hudakz 0:5350a66d5279 211 version 2.1 of the License, or (at your option) any later version.
hudakz 0:5350a66d5279 212
hudakz 0:5350a66d5279 213 This library is distributed in the hope that it will be useful,
hudakz 0:5350a66d5279 214 but WITHOUT ANY WARRANTY; without even the implied warranty of
hudakz 0:5350a66d5279 215 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
hudakz 0:5350a66d5279 216 Lesser General Public License for more details.
hudakz 0:5350a66d5279 217
hudakz 0:5350a66d5279 218 You should have received a copy of the GNU Lesser General Public
hudakz 0:5350a66d5279 219 License along with this library; if not, write to the Free Software
hudakz 0:5350a66d5279 220 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
hudakz 0:5350a66d5279 221
hudakz 0:5350a66d5279 222 --------------
hudakz 0:5350a66d5279 223
hudakz 0:5350a66d5279 224 Client.h
hudakz 0:5350a66d5279 225 IPAddress.h
hudakz 0:5350a66d5279 226 IPAddress.cpp
hudakz 0:5350a66d5279 227 Server.h
hudakz 0:5350a66d5279 228 Copyright (c) 2011 Adrian McEwen. All right reserved.
hudakz 0:5350a66d5279 229
hudakz 0:5350a66d5279 230 Modified (ported to mbed) by Zoltan Hudak <hudakz@inbox.com>
hudakz 0:5350a66d5279 231
hudakz 0:5350a66d5279 232 This library is free software; you can redistribute it and/or
hudakz 0:5350a66d5279 233 modify it under the terms of the GNU Lesser General Public
hudakz 0:5350a66d5279 234 License as published by the Free Software Foundation; either
hudakz 0:5350a66d5279 235 version 2.1 of the License, or (at your option) any later version.
hudakz 0:5350a66d5279 236
hudakz 0:5350a66d5279 237 This library is distributed in the hope that it will be useful,
hudakz 0:5350a66d5279 238 but WITHOUT ANY WARRANTY; without even the implied warranty of
hudakz 0:5350a66d5279 239 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
hudakz 0:5350a66d5279 240 Lesser General Public License for more details.
hudakz 0:5350a66d5279 241
hudakz 0:5350a66d5279 242 You should have received a copy of the GNU Lesser General Public
hudakz 0:5350a66d5279 243 License along with this library; if not, write to the Free Software
hudakz 0:5350a66d5279 244 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
hudakz 0:5350a66d5279 245