teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

追記

2018/12/03 22:56

投稿

asm
asm

スコア15149

answer CHANGED
@@ -11,4 +11,89 @@
11
11
 
12
12
  1. `wizchip_conf.h`を編集もしくは全てのヘッダより前に`#define _WIZCHIP_ 5200`を行う
13
13
  必要に応じて、_WIZCHIP_IO_MODE_を編集する。
14
- 2. `wizchip_conf.h`を`#include`すると自動で`#include "W5200/w5200.h"`が行われる
14
+ 2. `wizchip_conf.h`を`#include`すると自動で`#include "W5200/w5200.h"`が行われる
15
+
16
+
17
+ ---
18
+
19
+ **追記**
20
+
21
+ 原因が判明しました。
22
+
23
+ ```diff
24
+ --- wizchip_conf.h 2018-12-04 07:33:56.965148400 +0900
25
+ +++ wizchip_conf_mod.h 2018-12-03 17:55:26.000000000 +0900
26
+ @@ -53,6 +53,7 @@
27
+
28
+ #ifndef _WIZCHIP_CONF_H_
29
+ #define _WIZCHIP_CONF_H_
30
+ +#endif
31
+
32
+ #ifdef __cplusplus
33
+ extern "C" {
34
+ @@ -98,7 +99,7 @@
35
+ */
36
+ // #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_BUS_DIR_
37
+ // #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_BUS_INDIR_
38
+ - #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_SPI_
39
+ +/* #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_SPI_
40
+
41
+ //A20150601 : Define the unit of IO DATA.
42
+ typedef uint8_t iodata_t;
43
+ @@ -113,13 +114,15 @@
44
+ */
45
+ // #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_BUS_INDIR_
46
+ //#define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_SPI_5500_
47
+ - #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_SPI_
48
+ + //#define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_SPI_
49
+
50
+ //A20150601 : Define the unit of IO DATA.
51
+ typedef uint8_t iodata_t;
52
+ //A20150401 : Indclude W5100.h file
53
+ - #include "W5100S/w5100s.h"
54
+ -#elif (_WIZCHIP_ == W5200)
55
+ + //#include "W5100S/w5100s.h"
56
+ +
57
+ +
58
+ +#if (_WIZCHIP_ == W5200)
59
+ #define _WIZCHIP_ID_ "W5200\0"
60
+ /**
61
+ * @brief Define interface mode.
62
+ @@ -132,8 +135,11 @@
63
+ //A20150601 : Define the unit of IO DATA.
64
+ typedef uint8_t iodata_t;
65
+ #include "W5200/w5200.h"
66
+ -#elif (_WIZCHIP_ == W5500)
67
+ - #define _WIZCHIP_ID_ "W5500\0"
68
+ +
69
+ +
70
+ +
71
+ +/*#elif (_WIZCHIP_ == W5500)
72
+ + /*#define _WIZCHIP_ID_ "W5500\0"
73
+
74
+ /**
75
+ * @brief Define interface mode. \n
76
+ @@ -148,7 +154,7 @@
77
+ * ex> <code> #define \_WIZCHIP_IO_MODE_ \_WIZCHIP_IO_MODE_SPI_VDM_ </code>
78
+ *
79
+ */
80
+ -#ifndef _WIZCHIP_IO_MODE_
81
+ +/*#ifndef _WIZCHIP_IO_MODE_
82
+ //#define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_SPI_FDM_
83
+ #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_SPI_VDM_
84
+ #endif
85
+ @@ -161,7 +167,7 @@
86
+ * @brief Define interface mode.
87
+ * @todo you should select interface mode as chip. Select one of @ref \_WIZCHIP_IO_MODE_SPI_ , @ref \_WIZCHIP_IO_MODE_BUS_DIR_ or @ref \_WIZCHIP_IO_MODE_BUS_INDIR_
88
+ */
89
+ -#ifndef _WIZCHIP_IO_MODE_
90
+ +/*#ifndef _WIZCHIP_IO_MODE_
91
+ // #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_BUS_DIR_
92
+ #define _WIZCHIP_IO_MODE_ _WIZCHIP_IO_MODE_BUS_INDIR_
93
+ #endif
94
+ ```
95
+
96
+ なんでしょうか、エラーをとにかく消そうとしたのでしょうか?
97
+
98
+ - `/*`で始まったコメントの終端`*/`が書き込まれておらず広範囲が消えている
99
+ - `#elif`から`#if`に書き換えたせいでw5200.hの読み込みが発生していない

2

修正

2018/12/03 22:56

投稿

asm
asm

スコア15149

answer CHANGED
@@ -6,8 +6,9 @@
6
6
 
7
7
  ---
8
8
 
9
+ [https://github.com/Wiznet/ioLibrary_Driver](https://github.com/Wiznet/ioLibrary_Driver)を調べたところ
9
10
  `w5200.h`の使い方が間違っています。
10
11
 
11
- 1. `wizchip_conf.h`を編集もしくは前に`#define _WIZCHIP_ 5200`を行う
12
+ 1. `wizchip_conf.h`を編集もしくは全てのヘッダより前に`#define _WIZCHIP_ 5200`を行う
12
13
  必要に応じて、_WIZCHIP_IO_MODE_を編集する。
13
14
  2. `wizchip_conf.h`を`#include`すると自動で`#include "W5200/w5200.h"`が行われる

1

追記

2018/12/03 15:13

投稿

asm
asm

スコア15149

answer CHANGED
@@ -2,4 +2,12 @@
2
2
  #define _WIZCHIP_ 5200
3
3
  ```
4
4
 
5
- を`#include "w5200.h"`より前で定義してください
5
+ を`#include "w5200.h"`より前で定義してください
6
+
7
+ ---
8
+
9
+ `w5200.h`の使い方が間違っています。
10
+
11
+ 1. `wizchip_conf.h`を編集もしくは事前に`#define _WIZCHIP_ 5200`を行う
12
+ 必要に応じて、_WIZCHIP_IO_MODE_を編集する。
13
+ 2. `wizchip_conf.h`を`#include`すると自動で`#include "W5200/w5200.h"`が行われる