mbed OS5
Fork of UIPEthernet by
Diff: UIPEthernet.h
- Revision:
- 8:4acb22344932
- Parent:
- 4:d774541a34da
--- a/UIPEthernet.h Tue Apr 26 18:37:14 2016 +0000 +++ b/UIPEthernet.h Fri Jun 30 19:51:28 2017 +0000 @@ -1,5 +1,5 @@ /* - UIPEthernet.h - Arduino implementation of a uIP wrapper class. + UIPEthernet.h - Arduino implementation of a UIP wrapper class. Copyright (c) 2013 Norbert Truchsess <norbert.truchsess@t-online.de> All rights reserved. @@ -19,56 +19,53 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #ifndef UIPETHERNET_H - #define UIPETHERNET_H +#define UIPETHERNET_H //#define UIPETHERNET_DEBUG //#define UIPETHERNET_DEBUG_CHKSUM //#define UIPETHERNET_DEBUG_UDP //#define UIPETHERNET_DEBUG_CLIENT - #include "ethernet_comp.h" - #include <mbed.h> - #include "Dhcp.h" - #include "IPAddress.h" - #include "utility/Enc28J60Network.h" - #include "UIPClient.h" - #include "UIPServer.h" - #include "UIPUdp.h" +#include "ethernet_comp.h" +#include "mbed.h" +#include "Dhcp.h" +#include "IPAddress.h" +#include "utility/Enc28J60Network.h" +#include "UIPClient.h" +#include "UIPServer.h" +#include "UIPUdp.h" extern "C" { - #include "utility/uip_timer.h" - #include "utility/uip.h" +#include "utility/uip_timer.h" +#include "utility/uip.h" } - #define UIPETHERNET_FREEPACKET 1 - #define UIPETHERNET_SENDPACKET 2 - #define UIPETHERNET_BUFFERREAD 4 +#define UIPETHERNET_FREEPACKET 1 +#define UIPETHERNET_SENDPACKET 2 - #define uip_ip_addr(addr, ip) \ - do \ - { \ +#define uip_ip_addr(addr, ip) \ + do { \ ((u16_t *) (addr))[0] = HTONS(((ip[0]) << 8) | (ip[1])); \ ((u16_t *) (addr))[1] = HTONS(((ip[2]) << 8) | (ip[3])); \ - } while(0) - #define ip_addr_uip(a) IPAddress(a[0] & 0xFF, a[0] >> 8, a[1] & 0xFF, a[1] >> 8) //TODO this is not IPV6 capable + } while (0) +#define ip_addr_uip(a) IPAddress(a[0] & 0xFF, a[0] >> 8, a[1] & 0xFF, a[1] >> 8) //TODO this is not IPV6 capable - #define uip_seteth_addr(eaddr) \ - do \ - { \ +#define uip_seteth_addr(eaddr) \ + do { \ uip_ethaddr.addr[0] = eaddr[0]; \ uip_ethaddr.addr[1] = eaddr[1]; \ uip_ethaddr.addr[2] = eaddr[2]; \ uip_ethaddr.addr[3] = eaddr[3]; \ uip_ethaddr.addr[4] = eaddr[4]; \ uip_ethaddr.addr[5] = eaddr[5]; \ - } while(0) - #define BUF ((struct uip_tcpip_hdr*) &uip_buf[UIP_LLH_LEN]) - class UIPEthernetClass + } while (0) +#define BUF ((struct uip_tcpip_hdr*) &uip_buf[UIP_LLH_LEN]) + class UIPEthernet { public: Enc28J60Network network; - UIPEthernetClass(PinName mosi, PinName miso, PinName sck, PinName cs); + UIPEthernet(PinName mosi, PinName miso, PinName sck, PinName cs); int begin(const uint8_t* mac); void begin(const uint8_t* mac, IPAddress ip); @@ -111,9 +108,9 @@ static uint16_t chksum(uint16_t sum, const uint8_t* data, uint16_t len); static uint16_t ipchksum(void); - #if UIP_UDP +#if UIP_UDP uint16_t upper_layer_chksum(uint8_t proto); - #endif +#endif friend uint16_t uip_ipchksum(void); friend uint16_t uip_tcpchksum(void); friend uint16_t uip_udpchksum(void); @@ -121,10 +118,10 @@ friend void uipclient_appcall(void); friend void uipudp_appcall(void); - #if UIP_CONF_IPV6 +#if UIP_CONF_IPV6 uint16_t uip_icmp6chksum(void); - #endif /* UIP_CONF_IPV6 */ +#endif /* UIP_CONF_IPV6 */ }; -extern UIPEthernetClass UIPEthernet; +extern UIPEthernet uIPEthernet; #endif