---
title: "w5300사용시 소켓0번 1번 동시사용 질문입니다."
url: "https://maker.wiznet.io/forum/9945"
markdown_url: "https://maker.wiznet.io/forum/9945/md"
type: "Forum topic"
category: "Ethernet Chips"
author: "tgo1800"
created: "2014-02-18T01:04:37+09:00"
last_activity: "2017-05-04T08:31:27+09:00"
language: "ko"
views: 864
replies: 2
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# w5300사용시 소켓0번 1번 동시사용 질문입니다.

## Question

Asked by tgo1800 on 2014-02-18 in Ethernet Chips.

현재 DSP 28346 과 w5300을 사용하여 랜통신을 시도 하고 있습니다.

전송할 데이터의 크기가 100kbyte 라서

소켓을 50Kbyte로 지정해서 0번, 1번을 사용하려고 합니다.

그런데 소켓0번에 데이터는 잘 전송이 되는데 1번의 데이터는 전송이 안됩니다.

1. 소켓 0 번 , 소켓 1번을 동시 사용하여 데이터 전송이 가능합니까?

코드는 아래와 같이 예제를 수정하여 사용하였습니다.

(생략)
uint8 tx_mem_conf[8] = {50,50,10,10,0,0,0,0};
uint8 rx_mem_conf[8] = {1,1,1,1,1,1,1,1};
(생략)
while(1)
{
loopback_tcpc(0,ServerIP, 3000, data_buf,0);
loopback_tcpc(1,ServerIP, 3000, data_buf2,0);
}

## Replies

### Reply 1 by tgo1800, 2014-02-18

답변감사드립니다.

문제점을 파악하기 위해 데이터시트를 다시 한번 살펴보았습니다.

p.58의 3번째 줄에

’ 각 socket의 tx memory size는 0Kbyte 에서 64Kbytes내에 설정이 가능’

이라는 설명이 있는데

제가 이 부분을 '소켓 하나의 tx 사이즈가 최대 64Kbytes까지 가능하다’는 것으로 잘못이해 한것 같습니다.

답변해 주신내용은 소켓8개의 총 tx 사이즈합이 최대 64Kbytes까지 가능하다는 의미인가요?

그렇다면 p.91 의 그림 8에서 tx 사이즈가 (72Kbyte)로 되어있는데

이 그림은 어떤 의미인가요?

### Reply 2 by tgo1800, 2014-02-20

매번 친절한 답변 감사드립니다.

말씀해주신데로 MTYPER값을 확인해 보니 0x7fff값을 가지고 있었습니다.

소켓 영역 할당에는 문제가 없는것 같습니다.

1. 혹시 소켓의 포트가 같으면 사용이 불가능한건가요?

소켓 0번의 데이터와 1번의 데이터를 전송하기 위해 코드를 아래와 같이 예제를 수정하여 사용하였습니다.

(생략)
uint8 tx_mem_conf[8] = {50,50,10,10,0,0,0,0};
uint8 rx_mem_conf[8] = {1,1,1,1,1,1,1,1};
(생략)
while(1)
{
loopback_tcpc(0,ServerIP, 3000, data_buf,0);
loopback_tcpc(1,ServerIP, 3000, data_buf2,0);
}

추가 질문 있습니다.

소켓의 크기를 50Kbyte( 51200byte)로 설정하고 50000byte 크기의 데이터를 전송시키는 테스트를 해보았습니다.

그 결과 데이터 일부가 안나오는 현상을 확인하였습니다.

예로 0~25000이라는 숫자를 전송하는경우 0~12500, 12700~25000 이런 식으로 중간의 데이터를 건너 뛰고 전송이 됩니다.

그런데 데이터의 크기를 소켓의 크기와 동일하게 51200byte로 한 후 데이터를 전송한 경우에는

문제 없이 전송이 잘되는 것을 확인 하였습니다.

1. 데이터 전송 시 소켓의 크기와 동일한 크기의 데이터를 설정해야 하나요?

2. 데이터 일부가 전송되지 않는 원인이 버퍼를 리셋해주지 않아서 그런건가 의심되는데 확인할수 있는 방법이 있나요?

3. 위 3.번이 원인이라면 버퍼를 리셋하는 방법이 있나요?

---

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