Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of libMiMic by
NyLPC_cMiMicConfiglation.h
00001 /* 00002 * cConfiglationStorage.h 00003 * 00004 * Created on: 2011/10/18 00005 * Author: nyatla 00006 */ 00007 00008 #include "NyLPC_stdlib.h" 00009 #include "NyLPC_net.h" 00010 #ifndef NYLPC_CCONFIGLATIONSTORAGE_H_ 00011 #define NYLPC_CCONFIGLATIONSTORAGE_H_ 00012 00013 #ifdef __cplusplus 00014 extern "C" { 00015 #endif /* __cplusplus */ 00016 00017 00018 /** 00019 * IPアドレスはネットワークオーダーで格納する。 00020 * 構造体は8バイトアライメントであること。 00021 */ 00022 struct NyLPC_TMiMicConfigulation{ 00023 /** ROM焼検出用。0xFFFFFFFFを書く */ 00024 NyLPC_TUInt32 fast_boot; 00025 /** ホスト名*/ 00026 NyLPC_TChar hostname[NyLPC_TcNetConfig_HOSTNAME_LEN]; 00027 /** MACアドレスの下位4bit*/ 00028 NyLPC_TUInt32 mac_00_01_02_03; 00029 /** MACアドレスの上位2bit*/ 00030 NyLPC_TUInt32 mac_04_05_xx_xx; //12+NyLPC_TcNetConfig_HOSTNAME_LEN 00031 /* 00032 * IPv4設定 00033 */ 00034 00035 /** 00036 * 0-1bit 起動モード 00037 * 0:default,1:DHCP,2:AUTOIP,3:APIPA 00038 */ 00039 NyLPC_TUInt32 ipv4_flags; 00040 /** IPV4アドレス*/ 00041 NyLPC_TUInt32 ipv4_addr_net; 00042 NyLPC_TUInt32 ipv4_mask_net; 00043 NyLPC_TUInt32 ipv4_drut_net; //16 00044 00045 /* 00046 * Service setting 00047 */ 00048 00049 /** 00050 * Service flags 00051 * 0:mdns ON/OFF 00052 */ 00053 NyLPC_TUInt32 srv_flags; 00054 /** HTTPポート番号*/ 00055 NyLPC_TUInt16 http_port; //6 00056 //total=(34=(12+16+6)+NyLPC_TcNetConfig_HOSTNAME_LEN) 00057 NyLPC_TUInt16 padding32; 00058 NyLPC_TUInt32 padding64; //total=40+NyLPC_TcNetConfig_HOSTNAME_LEN 00059 }; 00060 00061 /** 00062 * ユーザー定義コンフィギュレーションを持つ場合にtrue 00063 * falseなら初期設定と捉えることも出来ます。 00064 */ 00065 NyLPC_TBool NyLPC_cMiMicConfiglation_hasUserConfigulation(void); 00066 00067 /** 00068 * ユーザコンフィギュレーションを更新する。 00069 * この関数は、RTOSが停止中に実行すること。 00070 * この関数は384バイト程度のスタックが必要です。 00071 */ 00072 NyLPC_TBool NyLPC_cMiMicConfiglation_updateConfigulation(const struct NyLPC_TMiMicConfigulation* i_congfiglation); 00073 /** 00074 * コンフィギュレーション値を返す。 00075 * この関数は、RTOSが停止中に実行すること。 00076 */ 00077 const struct NyLPC_TMiMicConfigulation* NyLPC_cMiMicConfiglation_loadFromFlash(void); 00078 const struct NyLPC_TMiMicConfigulation* NyLPC_cMiMicConfiglation_loadFactoryDefault(void); 00079 00080 #ifdef __cplusplus 00081 } 00082 #endif /* __cplusplus */ 00083 00084 #endif /* CCONFIGLATIONSTORAGE_H_ */
Generated on Tue Jul 12 2022 16:22:57 by
