---
title: "w5300 네트웍 설정 문의"
url: "https://maker.wiznet.io/forum/10194"
markdown_url: "https://maker.wiznet.io/forum/10194/md"
type: "Forum topic"
category: "Ethernet Chips"
author: "cc1915"
created: "2014-05-01T05:16:19+09:00"
last_activity: "2017-05-04T08:32:38+09:00"
language: "en"
views: 1176
replies: 6
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# w5300 네트웍 설정 문의

## Question

Asked by cc1915 on 2014-05-01 in Ethernet Chips.

stm32계열 cpu로 w5300 direct mode(16bit) 사용중입니다.
아래와 같이 네트웍 설정 후 확인 시 아래와 같이 읽히는데 뭐가 문제일까요??

//////////설정 후 read////////////////
SHAR : b8:00:b8:00:b8:00
GWR : 184.0.184.0
SUBR : 255.255.255.0
SIPR : 184.0.184.0

/////////////////////////////////////소스코드///////////////////////////////
u8 ip[4] = {192, 168, 0, 100};
u8 mac[6] = {0x00, 0x08, 0xdc, 0x00, 0x00, 0x02};
u8 sn[4] = {255, 255, 255, 0};
u8 gw[4] = {192, 168, 0, 254};

void BSP_ETH_Init(void)
{
uint8 tx_mem_conf[8] = {8,8,8,8,8,8,8,8}; // for setting TMSR regsiter
uint8 rx_mem_conf[8] = {8,8,8,8,8,8,8,8}; // for setting RMSR regsiter

W5300_Reset();
W5300_FSMC_Init();
/* initiate W5300 */
iinchip_init();

/* allocate internal TX/RX Memory of W5300 */
if(!sysinit(tx_mem_conf,rx_mem_conf))
{
printf(“MEMORY CONFIG ERR.\r\n”);
while(1);
}

setMR(getMR()|MR_FS); // If Little-endian, set MR_FS.

setSHAR(mac); // set source hardware address

#ifdef **DEF_IINCHIP_PPP**
if(pppinit((uint8*)“test01”, 6, (uint8*)“pppoe1000”, 9)!=1)
{
printf(“PPPoE fail.\r\n”);
while(1);
}
close(0);
#else
/* configure network information */
setGAR(gw); // set gateway IP address
setSUBR(sn); // set subnet mask address
setSIPR(ip); // set source IP address
#endif

/* verify network information */
getSHAR(mac); // get source hardware address
getGAR(gw); // get gateway IP address
getSUBR(sn); // get subnet mask address
getSIPR(ip); // get source IP address

```
 EthMsg("\r\nSHAR : %02x:%02x:%02x:%02x",mac[0],mac[1],mac[2],mac[3]);
 EthMsg(":%02x:%02x\r\n",mac[4],mac[5],0,0);
```

EthMsg(“\r\nGWR : %d.%d.%d.%d”,gw[0],gw[1],gw[2],gw[3]);
EthMsg(“\r\nSUBR : %d.%d.%d.%d”,sn[0],sn[1],sn[2],sn[3]);
EthMsg(“\r\nSIPR : %d.%d.%d.%d”,ip[0],ip[1],ip[2],ip[3]);

## Replies

### Reply 1 by cc1915, 2014-05-07

한가지 이상한 현상이 발생합니다.
address 연결시 ad0-addr0 … ad9-addr9 이렇게 연결되어 있는데요
16비트로 설정해서 사용중입니다.
getIDR() 함수를 이용하여 id를 읽어보니 어드레스가 반토막되어 들어가더군요…

아래와 같이 어드레스를 2배로 하면 정상으로 읽힙니다.
add를 4로 설정하면 실제로 나가는 핀은 2로 나가는데요…
도무지 이해가 안가네요… 도움 부탁드립니다.

uint16 getIDR(void)
{
//return IINCHIP_READ(IDR_BASE); //IDR_BASE => 0x680000FE : 실패
return IINCHIP_READ(IDR_BASE); //IDR_BASE => 0x680001FC : 정상(return: 5300)
}

### Reply 2 by cc1915, 2014-05-07

16비트 데이터 버스를 유지하고 어드레스 주소를 2배로 설정하였습니다.

#define GAR (COMMON_REG_BASE + 0x10*2)
#define GAR0 GAR
#define GAR1 (GAR + 1*2)
#define GAR2 (GAR + 2*2)
#define GAR3 (GAR + 3*2)
;
;
;
이렇게 하니 getIDR();는 5300으로 정상으로 읽히는데요
net 설정은 아래와 같이 잘 안되네요

////설정값////
u8 ip[4] = {192, 168, 0, 100};
u8 mac[6] = {0x00, 0x08, 0xdc, 0x00, 0x00, 0x02};
u8 sn[4] = {255, 255, 255, 0};
u8 gw[4] = {192, 168, 0, 254};

////읽은값////
SIPR : 255.168.192.100
SHAR : 00:08:00:00:dc:02
SUBR : 0.255.255.0
GWR : 0.168.192.254

### Reply 3 by cc1915, 2014-05-07

이번엔 8bit로 설정 후 테스트하였습니다. address은 x2를 하지 않고 원래대로 했구요…
당연히 bit 16en 핀은 gnd처리 하였습니다.

질문1>setMR(getMR()|MR_FS); 설정에 따라 아래와 같이 결과가 다릅니다.
설정했을때 값이 아주 엉뚱하게 나오는데 설정안했을때는 "읽은데이터 #1"처럼 뒤바뀐상태로
읽히는데 STM32에서는 Little endian이므로 설정하는것이 맞지 않을까요??

질문2>아래 #1처럼 순서가 바뀌어 읽히는 이유를 모르겠네요…

//설정 데이타//
SHAR : 01:02:03:04:05:06
GWR : 7.8.9.10
SUBR : 11.12.13.14
SIPR : 15.16.17.18

//읽은 데이타 #1//
getIDR(); =>정상
SHAR : 02:01:04:03:06:05 =>비정상
GWR : 8.7.10.9 =>비정상
SUBR : 12.11.14.13 =>비정상
SIPR : 16.15.18.17 =>비정상

//읽은 데이타 #2//
setMR(getMR()|MR_FS);
getIDR(); =>비정상
SHAR : 10:0b:10:10:ff:ff =>비정상
GWR : 16.11.16.16 =>비정상
SUBR : 255.255.255.255 =>비정상
SIPR : 16.11.16.16 =>비정상

### Reply 4 by cc1915, 2014-05-08

현재는 그냥 8비트로 운영할 계획입니다.
그럴러면 w5300.c 파일이 8bit에 맞도록 변경해 줘야하나요??

위 질문처럼 8bit시 뒤집혀서 출력이 되는 현상은 해결못했네요

### Reply 5 by cc1915, 2014-05-08

메일드렸습니다.
도움 부탁드립니다.

### Reply 6 by cc1915, 2014-05-08

클럭 타이밍 문제로 해결했습니다. ㅠㅠ

---

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