This is Webservice SDK for mbed. LPCXpresso1769/LPC1768/FRDM-K64F/LPC4088

Fork of libMiMic by Ryo Iizuka

Committer:
furutani
Date:
Fri Feb 24 04:43:41 2017 +0000
Revision:
115:fa79286d8ea4
Parent:
109:18f12ac01097
Delete missing include line.; Add parameter "timeout" to TCPSocket::connect(), precv().; Fix to send ARP request to default gateway when connecting to IP address of different segment.;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nyatla 0:142ee8b12fef 1 /*********************************************************************************
nyatla 0:142ee8b12fef 2 * PROJECT: MiMic
nyatla 0:142ee8b12fef 3 * --------------------------------------------------------------------------------
nyatla 0:142ee8b12fef 4 *
nyatla 0:142ee8b12fef 5 * This file is part of MiMic
nyatla 0:142ee8b12fef 6 * Copyright (C)2011 Ryo Iizuka
nyatla 0:142ee8b12fef 7 *
nyatla 0:142ee8b12fef 8 * MiMic is free software: you can redistribute it and/or modify
nyatla 0:142ee8b12fef 9 * it under the terms of the GNU Lesser General Public License as published
nyatla 0:142ee8b12fef 10 * by the Free Software Foundation, either version 3 of the License, or
nyatla 0:142ee8b12fef 11 * (at your option) any later version.
nyatla 0:142ee8b12fef 12 *
nyatla 0:142ee8b12fef 13 * This program is distributed in the hope that it will be useful,
nyatla 0:142ee8b12fef 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
nyatla 0:142ee8b12fef 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
nyatla 0:142ee8b12fef 16 * GNU General Public License for more details.
nyatla 0:142ee8b12fef 17 *
nyatla 0:142ee8b12fef 18 * You should have received a copy of the GNU Lesser General Public License
nyatla 0:142ee8b12fef 19 * along with this program. If not, see <http://www.gnu.org/licenses/>.
nyatla 0:142ee8b12fef 20 *
nyatla 0:142ee8b12fef 21 * For further information please contact.
nyatla 0:142ee8b12fef 22 * http://nyatla.jp/
nyatla 0:142ee8b12fef 23 * <airmail(at)ebony.plala.or.jp> or <nyatla(at)nyatla.jp>
nyatla 0:142ee8b12fef 24 *
nyatla 0:142ee8b12fef 25 *********************************************************************************/
nyatla 0:142ee8b12fef 26 /**
nyatla 0:142ee8b12fef 27 * @file
nyatla 0:142ee8b12fef 28 * このファイルは、NyLPC全体に関わる、コンフィギュレーション定数を宣言します。
nyatla 0:142ee8b12fef 29 */
nyatla 0:142ee8b12fef 30 #ifndef NyLPC_config_h
nyatla 0:142ee8b12fef 31 #define NyLPC_config_h
nyatla 0:142ee8b12fef 32
nyatla 0:142ee8b12fef 33 #ifdef __cplusplus
nyatla 0:142ee8b12fef 34 extern "C" {
nyatla 0:142ee8b12fef 35 #endif /* __cplusplus */
nyatla 0:142ee8b12fef 36
nyatla 68:f7def7eb5504 37 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 68:f7def7eb5504 38 // ENDIAN
nyatla 68:f7def7eb5504 39 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 68:f7def7eb5504 40
nyatla 68:f7def7eb5504 41
nyatla 0:142ee8b12fef 42 /**
nyatla 0:142ee8b12fef 43 * 定義値です。LITTLE ENDIANを表します。
nyatla 0:142ee8b12fef 44 */
nyatla 0:142ee8b12fef 45 #define NyLPC_ENDIAN_LITTLE 0
nyatla 0:142ee8b12fef 46 /**
nyatla 0:142ee8b12fef 47 * 定義値です。BIG ENDIANを表します。
nyatla 0:142ee8b12fef 48 */
nyatla 0:142ee8b12fef 49 #define NyLPC_ENDIAN_BIG 1
nyatla 0:142ee8b12fef 50
nyatla 0:142ee8b12fef 51 /**
nyatla 0:142ee8b12fef 52 * 定義値です。CPUのエンディアンを定義します。
nyatla 0:142ee8b12fef 53 * この値は、NyLPClibに影響を及ぼします。
nyatla 0:142ee8b12fef 54 */
nyatla 0:142ee8b12fef 55 #define NyLPC_ENDIAN NyLPC_ENDIAN_LITTLE
nyatla 68:f7def7eb5504 56 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 68:f7def7eb5504 57 // MCU
nyatla 68:f7def7eb5504 58 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 68:f7def7eb5504 59 #define NyLPC_MCU_UNKNOWN 1
nyatla 68:f7def7eb5504 60 #define NyLPC_MCU_LPC17xx 2
nyatla 68:f7def7eb5504 61 #define NyLPC_MCU_LPC4088 3
nyatla 91:db8279c869d3 62 #define NyLPC_MCU_K64F 4
nyatla 68:f7def7eb5504 63
nyatla 68:f7def7eb5504 64 #define NyLPC_MCU NyLPC_MCU_LPC17xx
nyatla 68:f7def7eb5504 65
nyatla 0:142ee8b12fef 66
nyatla 0:142ee8b12fef 67 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 68:f7def7eb5504 68 // OS
nyatla 0:142ee8b12fef 69 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 0:142ee8b12fef 70
nyatla 0:142ee8b12fef 71 /**
nyatla 0:142ee8b12fef 72 * 環境定数です。WIN32環境でコンパイルすることを示します。
nyatla 0:142ee8b12fef 73 */
nyatla 0:142ee8b12fef 74 #define NyLPC_ARCH_WIN32 1
nyatla 0:142ee8b12fef 75 /**
nyatla 0:142ee8b12fef 76 * 環境定数です。FREERTOS環境でコンパイルすることを示します。
nyatla 0:142ee8b12fef 77 */
nyatla 0:142ee8b12fef 78 #define NyLPC_ARCH_FREERTOS 2
nyatla 0:142ee8b12fef 79 /**
nyatla 0:142ee8b12fef 80 * 環境定数です。MbedRTOR環境でコンパイルすることを示します。
nyatla 0:142ee8b12fef 81 */
nyatla 0:142ee8b12fef 82 #define NyLPC_ARCH_MBEDRTOS 3
nyatla 0:142ee8b12fef 83
nyatla 0:142ee8b12fef 84 /**
nyatla 0:142ee8b12fef 85 * 環境定数です。アーキテクチャを選択します。NyLPC_ARCH_WIN32は、デバック用の定数です。
nyatla 0:142ee8b12fef 86 * 通常は、NyLPC_ARCH_FREERTOSを使用します。
nyatla 0:142ee8b12fef 87 */
nyatla 41:2389bd6b6f74 88 #ifdef WIN_DEBUG
nyatla 41:2389bd6b6f74 89 #define NyLPC_ARCH NyLPC_ARCH_WIN32
nyatla 41:2389bd6b6f74 90 #else
nyatla 68:f7def7eb5504 91 #define NyLPC_ARCH NyLPC_ARCH_FREERTOS
nyatla 41:2389bd6b6f74 92 #endif
nyatla 41:2389bd6b6f74 93
nyatla 41:2389bd6b6f74 94
nyatla 41:2389bd6b6f74 95 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 41:2389bd6b6f74 96 //予約定義値の修正
nyatla 41:2389bd6b6f74 97 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 41:2389bd6b6f74 98
nyatla 41:2389bd6b6f74 99 #if NyLPC_ARCH==NyLPC_ARCH_WIN32
nyatla 68:f7def7eb5504 100 //PACKED STRUCTの無効化
nyatla 41:2389bd6b6f74 101 #define PACK_STRUCT_END
nyatla 68:f7def7eb5504 102 //OSタイプによりMCUを修正
nyatla 83:d46aa580722a 103 # undef NyLPC_MCU
nyatla 83:d46aa580722a 104 # define NyLPC_MCU NyLPC_MCU_UNKNOWN
nyatla 41:2389bd6b6f74 105 #endif
nyatla 0:142ee8b12fef 106
nyatla 0:142ee8b12fef 107
nyatla 68:f7def7eb5504 108
nyatla 0:142ee8b12fef 109 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 0:142ee8b12fef 110 //デバック情報
nyatla 0:142ee8b12fef 111 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 0:142ee8b12fef 112
nyatla 0:142ee8b12fef 113 /**
nyatla 0:142ee8b12fef 114 * デバック用の宣言。
nyatla 0:142ee8b12fef 115 * 定数が1の場合、メモリブロックをソースにして、TCPSocketをエミュレートします。
nyatla 0:142ee8b12fef 116 * ソケットを使わずにデバックをしたいときに使います。
nyatla 0:142ee8b12fef 117 */
nyatla 0:142ee8b12fef 118 #define NyLPC_CONFIG_cHttpStream_DEBUG 0
nyatla 0:142ee8b12fef 119
nyatla 68:f7def7eb5504 120 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 109:18f12ac01097 121 //Application Configuration
nyatla 68:f7def7eb5504 122 ////////////////////////////////////////////////////////////////////////////////////////////////
nyatla 68:f7def7eb5504 123
nyatla 86:a042fb18911b 124 #define NyLPC_cHttpdThread_SIZE_OF_THREAD_STACK (1024+512)
nyatla 84:a5f5973591d8 125 #define NyLPC_cHttpd_MAX_PERSISTENT_CONNECTION 1
nyatla 81:e5e4f2264d24 126
nyatla 109:18f12ac01097 127 #define NyLPC_cMiMicIpNetIf_config_TCPLISTENER_MAX 2
nyatla 109:18f12ac01097 128 #define NyLPC_cMiMicIpNetIf_config_TCPSOCKET_MAX 3
nyatla 109:18f12ac01097 129 #define NyLPC_cMiMicIpNetIf_config_UDPSOCKET_MAX 1
nyatla 109:18f12ac01097 130 #define NyLPC_cMiMicIpNetIf_config_NB_UDPSOCKET_MAX 2
nyatla 109:18f12ac01097 131
nyatla 109:18f12ac01097 132
nyatla 68:f7def7eb5504 133 /*固有プラットフォーム設定はここに記述します。*/
nyatla 68:f7def7eb5504 134 #undef NyLPC_ARCH
nyatla 68:f7def7eb5504 135 #define NyLPC_ARCH NyLPC_ARCH_MBEDRTOS
nyatla 68:f7def7eb5504 136
nyatla 69:8c5f220441f5 137 #ifdef TARGET_LPC4088
nyatla 91:db8279c869d3 138 # undef NyLPC_MCU
nyatla 91:db8279c869d3 139 # define NyLPC_MCU NyLPC_MCU_LPC4088
nyatla 91:db8279c869d3 140 #endif
nyatla 91:db8279c869d3 141 #ifdef TARGET_K64F
nyatla 91:db8279c869d3 142 # undef NyLPC_MCU
nyatla 91:db8279c869d3 143 # define NyLPC_MCU NyLPC_MCU_K64F
nyatla 92:4f77028cce64 144 # define NyLPC_TTxBufferHeader_ALIGNMENT 16 //EthernetのTXメモリブロックヘッダを16バイトアラインメントにする
nyatla 92:4f77028cce64 145 # define NyLPC_TcEthernetMM_BUF_PADDING 16 //2バイトでいいんだけど16バイトアライメントにするために16
nyatla 69:8c5f220441f5 146 #endif
nyatla 69:8c5f220441f5 147
nyatla 0:142ee8b12fef 148 #ifdef __cplusplus
nyatla 0:142ee8b12fef 149 }
nyatla 0:142ee8b12fef 150 #endif /* __cplusplus */
nyatla 0:142ee8b12fef 151
nyatla 0:142ee8b12fef 152 #endif