W5200(WIZ820io) network interface
WIZ820ioNetIf.cpp@0:61831b843b44, 2012-04-14 (annotated)
- Committer:
- va009039
- Date:
- Sat Apr 14 17:21:11 2012 +0000
- Revision:
- 0:61831b843b44
- Child:
- 1:803123933c5a
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
va009039 | 0:61831b843b44 | 1 | // WIZ820ioNetIf.cpp 2012/4/13 |
va009039 | 0:61831b843b44 | 2 | #include "WIZ820ioNetIf.h" |
va009039 | 0:61831b843b44 | 3 | #include "w5100.h" |
va009039 | 0:61831b843b44 | 4 | |
va009039 | 0:61831b843b44 | 5 | bool wait_linkup(int timeout = 5000) { |
va009039 | 0:61831b843b44 | 6 | Timer link_t; |
va009039 | 0:61831b843b44 | 7 | link_t.start(); |
va009039 | 0:61831b843b44 | 8 | while(link_t.read_ms() < timeout) { |
va009039 | 0:61831b843b44 | 9 | if (0x20 & W5100.readPHYSTATUS()) { |
va009039 | 0:61831b843b44 | 10 | return true; |
va009039 | 0:61831b843b44 | 11 | } |
va009039 | 0:61831b843b44 | 12 | wait_ms(50); |
va009039 | 0:61831b843b44 | 13 | } |
va009039 | 0:61831b843b44 | 14 | return false; |
va009039 | 0:61831b843b44 | 15 | } |
va009039 | 0:61831b843b44 | 16 | |
va009039 | 0:61831b843b44 | 17 | int WIZ820ioNetIf::setup(int timeout_ms) { |
va009039 | 0:61831b843b44 | 18 | W5100.hardware_reset(); |
va009039 | 0:61831b843b44 | 19 | W5100.init(); |
va009039 | 0:61831b843b44 | 20 | wait_linkup(); |
va009039 | 0:61831b843b44 | 21 | return w5200NetIf::setup(timeout_ms); |
va009039 | 0:61831b843b44 | 22 | } |