---
title: "Mbed wiz550io spi통신문의"
url: "https://maker.wiznet.io/forum/11603"
markdown_url: "https://maker.wiznet.io/forum/11603/md"
type: "Forum topic"
category: "Ethernet Chips"
author: "hyp6838"
created: "2016-01-18T08:07:53+09:00"
last_activity: "2017-05-04T08:38:01+09:00"
language: "en"
views: 793
replies: 2
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# Mbed wiz550io spi통신문의

## Question

Asked by hyp6838 on 2016-01-18 in Ethernet Chips.

mbed 에서 w5500 이더넷쉴드 예제 Nucleo_F103RB_W5500HelloWorld 사용.

MBED Nucleo F411RB 사용.

mosi = PA_7
miso = PA_6
sclk = PA_5
cs = PB_6
Reset = PA_9

spi 8비트, mode3 설정.

예제에서
const char * IP_Addr = “192.168.1.2”;
const char * IP_Subnet = “255.255.255.0”;
const char * IP_Gateway = “192.168.1.1”;
unsigned char MAC_Addr[6] = {0x00,0x08,0xDC,0x4D,0xD3,0x46};

ethernet.init(MAC_Addr,IP_Addr,IP_Subnet,IP_Gateway);

으로 설정하고,

ethernet.getMACAddress(), ethernet.getIPAddress(), ethernet.getNetworkMask(), ethernet.getGateway()

[b]함수로 설정을 불러오면,

W5500 Application Started
SPI Initialized
W5500 Networking Started
Initialized, MAC: 00:00:00:00:00:00
IP: 0.0.0.0, MASK: 0.0.0.0, GW: 0.0.0.0

으로 나옵니다. 아래 코드 전문과 연결사진 첨부합니다. 원인이 무엇인지 문의합니다. [/b]

#include “mbed.h”
#include “WIZnetInterface.h”

#define USE_DHCP 0

#define LOOPBACKPORT 5000

const char * IP_Addr = “192.168.1.2”;
const char * IP_Subnet = “255.255.255.0”;
const char * IP_Gateway = “192.168.1.1”;
unsigned char MAC_Addr[6] = {0x00,0x08,0xDC,0x4D,0xD3,0x46};

DigitalOut myled1(LED1);
Serial pc(USBTX, USBRX);

```
SPI spi(PA_7, PA_6, PA_5); // mosi, miso, sclk

WIZnetInterface ethernet(&spi, PB_6, PA_9);//scs(PB_6), nRESET(PA_9); // reset pin is dummy, don't affect any pin of WIZ550io
```

int main() {
spi.format(8,3);
spi.frequency(1000000);
mbed_mac_address((char *)MAC_Addr); //Use mbed mac addres

```
//Set serial port baudrate speed: 115200
pc.baud(9600);
wait(1);
pc.printf("W5500 Application Started \r\n");

char buffer[256];

while(1)
{
    //int ret;
    #if USE_DHCP
    int ret = ethernet.init(MAC_Addr);
    #else
    int ret = ethernet.init(MAC_Addr,IP_Addr,IP_Subnet,IP_Gateway);
    #endif
   
    
    printf("SPI Initialized \r\n");
    wait(1); // 1 second for stable state
    
    printf("W5500 Networking Started \r\n");
    wait(1); // 1 second for stable state
    
    
    if (!ret) {
        pc.printf("Initialized, MAC: %s\r\n", ethernet.getMACAddress());
        ret = ethernet.connect();
        if (!ret) {
            pc.printf("IP: %s, MASK: %s, GW: %s\r\n",
                      ethernet.getIPAddress(), ethernet.getNetworkMask(), ethernet.getGateway());
        } else {
            pc.printf("Error ethernet.connect() - ret = %d\r\n", ret);
            exit(0);
        }
    } else {
        pc.printf("Error ethernet.init() - ret = %d\r\n", ret);
        exit(0);
    }
    
    TCPSocketServer server;
    server.bind(LOOPBACKPORT);
    server.listen();

        pc.printf("Disconnected.\r\n");
    }
}
```

}

[![](https://maker.wiznet.io/forum_uploads/wiznet/original/1X/b2f68888e7346ee89eb6a8ac47d200bdf2b0a2fd.jpg) 2448×3264 2.62 MB](https://maker.wiznet.io/forum_uploads/wiznet/original/1X/b2f68888e7346ee89eb6a8ac47d200bdf2b0a2fd.jpg)

## Replies

### Reply 1 by hyp6838, 2016-01-18

스코프 확인결과

mosi 에서는 출력이 나가는데

miso 에서 아무런 값이 나오지않습니다.

답변 부탁드립니다.

### Reply 2 by Edward, 2016-01-18

안녕하세요.

WIZ550io는 MAC이 있는 Network module입니다.

따라서 MAC 세팅은 하지 않으셔도 됩니다.

SPI pin 세팅은 맞으시구요.

아래는 WIZ550io를 이용하여 구성한 코드입니다. 참고해주세요.

[developer.mbed.org/teams/Ethern … 9/main.cpp](https://developer.mbed.org/teams/EthernetInterfaceW5500-makers/code/HTTPServer_echoback_WIZ550io/file/f0c3af075949/main.cpp)

감사합니다.

---

Source: https://maker.wiznet.io/forum/11603
