[INTERFACE]/WIZNET_EVM2014. 11. 22. 21:55

[W5500 EVM] 모듈 보드 제작

[W5500 EVM] 모듈 보드 제작




W5200 EVM 과 동일 한 핀맵으로 W5500 EVM 보드를 제작 했다. W5500 칩 자체 크기가 커져서 사이즈는 약간 크지만 저렴한 가격 때문에 사용할 곳이 많을것 같다.


W5500 은 W5200과 거의 동일한 기능을 하지만 칩 공정상 더 최신 기술이 들어가 저렴해 진것 같다. 


W5500은 기존 W5200 모듈 및 SPI 모듈의 핀맵과 호환되도록 제작해서 여러 확장 보드에서 쉽게 연결하여 테스트 가능하도록 제작했다.


W5500의 테스트 소스코드는 Winzet 에서 제공하는 W5500 Driver 파일을 수정해서 작성했다.






W5500 EVM에서 추가된 부분은 MAC Address 할당 메모리가 추가되었다. 필요에 따라 MAC Address 할당된 메모리 실장하면 MAC Address 할당을 해결할 수 있다.


Posted by nexp

댓글을 달아 주세요

[INTERFACE]/WIZNET_EVM2012. 8. 25. 17:39

[CANTUS] 원격방송용 네트웍 스피커 제작

[CANTUS] W5100을 이용한 네트웍 스피커 제작

 

 

 

CANTUS-EX 보드는 하드웨어 TCP/IP를 지원하는 W5100을 BUS방식으로 제어할 수 있기 때문에 네트웍 속도가 빠르다.

이 저렴한 솔루션을 이용하여 활용할 수 있는 어플리케이션으로 네트웍 스피커를 제작해 보았다.

 

네트웍 스피커는 이더넷으로 연결되는 스피커 이기 때문에 원격지에서 원하는 음원을 송출 가능하며 많은 수의 스피커를 원하는 형태로 제어 가능하다. 인터넷 라디오나 원격방송용으로 활용하면 좋을것 같다.

 

 

 

구성도

전체적인 구성도로 보면 아래와 같다.

 

네트웍은 하드웨어 TCP/IP를 지원하는  W5100을 이용하므로 쉽게 구현할 수 있다. 음원 전송은 UDP, 멀티캐스트 방식으로 원하는 IP의 스피커로 전송가능하다. MCU는 I2S와 소프트웨어 MP3코덱을 지원하는 CANTUS를 이용하여 아주 저렴하게 네트웍으로 받은 음원을 출력할 수 있다.

 

스피커 출력은 15W출력을 가진 소형의 Class-D AMP [TPA-3110 EVM] 보드를 이용했다.

 

 

 

PC 서버 프로그램

PC용 소프트웨어는 네트웍에 연결된 스피커들의 IP를 찾고 원하는 IP에 음원을 전송하거나 제어 명령을 보낼 수 있다. 또한 네트웍 상에서 IP를 변경하거나 LCD에 메세지를 출력할 수 있다.

 

 

 

마무리

테스트용이라 스피커 위에 그냥 고정했다.  

케이스가 있으면 좋겠는데.. 아니면 스피커 속으로 들어가면 더 좋을것도 같고...

추후 아크릴로 판넬하나 만들면 좋을것 같다.

 

 

 

 

 

 

네트웍 스피커 테스트 동영상

TCP/IP 프로그램으로 네트웍상의 스피커를 검색하고 원하는 IP로 보드상의 LED를 제어 하거나  MP3파일 혹은 WAV파을 전송하여 스피커로 출력하는 테스트 동영상이다.

Posted by nexp

댓글을 달아 주세요

[INTERFACE]/WIZNET_EVM2011. 9. 9. 23:30

[W5200 EVM] TCP 전송 속도 테스트

[W5200 EVM] TCP 전송 속도 테스트


W5200을 이용하여 MCU별로 TCP/IP Loopback 전송 속도를 테스트 해 보았다.
MCU별 SPI최대 속도도 참고 할 수 있는 자료가 될것 같다.
TCP/IP 전송 속도 테스트 결과 참고 

PIC32
마이크로 칩사의 PIC32는 SPI최대 속도가 20Mhz임에도 불구 하고 4MBps정도 까지 출력된다. SPI로 데이터 읽고 쓰는데 상당히 빠른것 같다. 저렴하면서 성능이 좋아 가장 마음에 든다.




dsPIC33
SPI클럭 13Mhz 에서 최대로 나오며 2.4Mbps 정도 출력 된다.

[3] iInChip Send: 2.3772 Mbps(6596649 bytes, 21.1710 sec)
iInChip Recv: 2.4131 Mbps(6596649 bytes, 20.8568 sec)
------------------------------------------------------------
[4] iInChip Send: 2.3933 Mbps(6596649 bytes, 21.0288 sec)
iInChip Recv: 2.4132 Mbps(6596649 bytes, 20.8557 sec)
------------------------------------------------------------


STM32
최대 SPI클럭 18Mhz 인 [STM32 EVM]에서 전송 속도는 2.5Mbps정도 출력된다.





CANTUS
국산 32bit MCU코어인 CANTUS는 SPI 최대 클럭이 23Mhz이고 이때 전송 속도는 2.38Mbps가 출력 된다.
 ar

인다이렉트/다이렉트 모드로 테스트시

[1] iInChip Send: 7.4276 Mbps(11983617 bytes, 12.3092 sec)
iInChip Recv: 7.4303 Mbps(11983617 bytes, 12.3048 sec)
------------------------------------------------------------


[adStar]

108Mhz로 동작하는 adStar에서는 W5200에서 TPC송수신 속도가 3Mbps정도로 측정된다. 





LPC1LK
Cortex-M0코어의 저렴한 LPC1113의 SPI최대 속도가 12Mhz이고 W5200 TCP전송 속도는 1.5Mbps정도 나온다.
[1] iInChip Send: 1.5744 Mbps(3966014 bytes, 19.2184 sec)
iInChip Recv: 1.5546 Mbps(3966014 bytes, 19.4632 sec)
------------------------------------------------------------
[2] iInChip Send: 1.5687 Mbps(3966014 bytes, 19.2887 sec)
iInChip Recv: 1.5694 Mbps(3966014 bytes, 19.2800 sec)
------------------------------------------------------------


LM3S5732
TI의 Cortex-M3 LM3S5732의 12Mhz일 때 TCP 전송 속도는 1.79Mbps정도 된다. 
[1] iInChip Send: 1.7998 Mbps(3966014 bytes, 16.8116 sec)
iInChip Recv: 1.7996 Mbps(3966014 bytes, 16.8136 sec)
------------------------------------------------------------


DSP (TMS320F2808)
TMS320F2808의 SPI 최대 속도는 6.2Mhz 정도 이고 이때 TCP 전송 속도는 1.5831 Mbps 정도 나온다.


DSP(TMS320F28335)
TMS32F28335에서 SPI방식의 W5200을 이용하여 TCP Server 전송 속도 테스트 결과 SPI Clock 10MHz에서 대략 2.3Mbps정도 출력된다.


LPC1756 (Cortex-M3)
SPI클럭 24Mhz에서 2.8Mbps 정도 출력된다.

[31] iInChip Send: 2.8086 Mbps(348160 bytes, 0.9457 sec)
iInChip Recv: 2.5316 Mbps(348160 bytes, 1.0492 sec)
------------------------------------------------------------
[32] iInChip Send: 2.8575 Mbps(348160 bytes, 0.9296 sec)
iInChip Recv: 2.4732 Mbps(348160 bytes, 1.0740 sec)
-------------------------------------------------------


MSP430 (MSP430F5529)
메인 클럭을 32Mhz로 설정하고 SPI클럭을 16Mhz로 설정하여 테스트한 결과 2.2Mbps 정도의 전송 속도가 나온다.

-----------------------------------------------------------
[8] iInChip Send: 2.2657 Mbps(3880723 bytes, 13.0676 sec)
iInChip Recv: 2.1496 Mbps(3880723 bytes, 13.7736 sec)
------------------------------------------------------------
[9] iInChip Send: 2.1323 Mbps(3880723 bytes, 13.8855 sec)
iInChip Recv: 2.2160 Mbps(3880723 bytes, 13.3608 sec)
-------------------------------------------------------



Cortex-M4 STM32F4
SPI 최대 클럭 21Mhz에서 3.5Mbps 정도 나온다
------------------------------------------------------------
[7] iInChip Send: 3.5567 Mbps(5278574 bytes, 11.3230 sec)
iInChip Recv: 3.5074 Mbps(5278574 bytes, 11.4822 sec)
------------------------------------------------------------
[8] iInChip Send: 3.5647 Mbps(5278574 bytes, 11.2975 sec)
iInChip Recv: 3.3565 Mbps(5278574 bytes, 11.9982 sec)
--------------------------------------------------------


EFM32G210 - 저전력 Cortex-M3

EFM32를 이용하여 TCP/IP 전송율 테스트 결과 1.4Mbps 정도

Posted by nexp

댓글을 달아 주세요

  1. 캐럴리

    관리자의 승인을 기다리고 있는 댓글입니다

    2011.09.14 17:55 [ ADDR : EDIT/ DEL : REPLY ]
  2. december

    관리자의 승인을 기다리고 있는 댓글입니다

    2012.07.18 12:52 [ ADDR : EDIT/ DEL : REPLY ]

[INTERFACE]/WIZNET_EVM2011. 9. 9. 08:30

[W5200 EVM] 보드 제작

[W5200 EVM] 보드 제작


하드웨어 TCP/IP 스택을 지원하는 W5100의 신버전 W5200 테스트 보드를 제작했다. SPI방식만 지원해서 더 소형 으로 제작 가능하다. SPI 클럭속도가 훨씩 더 빨라지고 8개의 스택을 지원하므로 웹서와 같은 어플리케이션에 저렴하고 간단하게 적용할 수 있다. 




기존 W5100 EVM과 비교해서 크기가 더 작아지고



기존 보드와 핀맵을 동일하게 제작하여 확장보드에 연결 가능하다.



W5200, W5100 확장 테스트 보드 [NET-EVM]



[W5200 EVM] 핀맵 회로도



Posted by nexp

댓글을 달아 주세요

[INTERFACE]/WIZNET_EVM2011. 5. 23. 16:06

[W5100] TCP/IP 코드 사이즈 실험

[W5100] TCP/IP 코드 사이즈
하드웨어 TCP/IP 스텍을 가진 W5100/W5200의 코드 사이즈를 최소한으로 줄여 보는 테스트를 해보았다.
기본적인 TCP루프백 테스트를 해 볼수 있는 코드로 작성하였다.


LPC1113 (Cortex-M0)
코드 효율이 좋은 Cortex-M0 코어의 LPC1113을 이용하여 W5200의  TCP/IP 스텍을 최소한 줄여보았다.
w5200s.c 로 드라이버 코드를 수정 했다.

일단 필요한것만 추려보니 8.25Kbyte 정도 나온다.

  8 252 bytes of readonly  code memory
    652 bytes of readonly  data memory
  6 662 bytes of readwrite data memory


[AVR]
동일한 코드를 AVR  에서 컴파일하니 6.9Kbyte정도 된다. (UART 디버깅 코드를 빼면 더 줄어들것 같다.)
Cortex-M3는 코어 설정해 줄 부분이 많긴하지만... AVR보다 못하다니

Program:    6896 bytes (42.1% Full)
(.text + .data + .bootloader)

Data:       2520 bytes (246.1% Full)
(.data + .bss + .noinit)


Serial 디버깅을 제거하니 4Kbye정도 이다. TCP처리 하는데 4Kbyte이하면 나쁘지 않은것 같다.
Program:    4442 bytes (27.1% Full)
(.text + .data + .bootloader)

Data:       2190 bytes (213.9% Full)
(.data + .bss + .noinit)


 

Posted by nexp
TAG W5100, W5200

댓글을 달아 주세요