[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

댓글을 달아 주세요

[MCU]/CANTUS2011. 4. 10. 21:13

[CANTUS EVM] 이더넷을 이용한 전자액자 테스트

[CANTUS EVM] 이더넷을 이용한 전자액자 테스트



CANTUS와 W5100을 이용하여 이더넷 전자 액자를 만들어 보았다. 이더넷을 이용하면 속도도 빠르고 네트웍으로 제어 할 수 있기 때문에 여러가지 이점이 많다. 일단 네트웍으로 기본 이미지 전송하고 LCD에 표시하는 간단한 예제를 작성해 보았다.

LCD_EXP_EVM 보드 를 이용하면 TFT-LCD및 W5100연결이 가능하다.



W5100모듈을 뒷면에 연결할 수있다.





CANTUS, W5100을이용한 이더넷 전자액자 테스트 동영상
UDP로 접속하여 이미지 데이터를 고속으로 전송하고 TFT LCD에 출력하도록 했다.




USB 전송과비교해 보면 두배 정도의 차이가 나는것을 확인할 수 있다. W5100을 SPI방식이 아닌 인다이렉트모드로 바꾸면 속도는 훨씬더 빨리질것이다.




이더넷 호스트 프로그램
BMP파일을 열어 16비트 이미지로 변환후 이더넷으로 데이터 전송하는 프로그램




Posted by nexp

댓글을 달아 주세요

[Microchip]/PIC322011. 3. 13. 00:52

[PIC32-SM EVM] W5100을 이용한 USB 메모리스틱 웹서버 테스트

[PIC32-SM EVM] W5100을 이용한 USB 메모리스틱 웹서버 테스트


PIC32의 강점은 저렴하면서도 고성능의 USB호스트 기능이 있기 때문에 웹서버 어플리케이션에 사용하기에 좋다.  웹페이지를 USB메모리 스틱에 저장하기 때문에 페이지 업데이트와 같은 관리가 편리하고 범용성이 좋다. 뿐만아니라 고용량 이기 때문에 웹페이지 제작시 메모리 문제 없이 작성할 수 있다.
물론 고용량 데이터를 처리하기 위해 PIC32의 PMP기능을 이용하여 이더넷 속도를 좀 더 올릴 필요가 있다.

간단히 웹페이지 몇개와 이미지를 이용하여 웹서버를 테스트 해 보았다.
메인페이지



PIC32 보드 LED테스트 페이지



PIC32 USB메모리스틱을 이용한 웹서버 테스트 동영상

Posted by nexp

댓글을 달아 주세요

[Microchip]/PIC322011. 3. 13. 00:46

[PIC32-SM EVM] W5100을 TCP서버 전송속도 테스트 - SPI모드

[PIC32-SM EVM] W5100을 TCP서버 전송속도 테스트 - SPI모드


PIC32를 이용하여 W5100 이더넷 테스트를 해 보았다. PIC32는 저렴하지만 W5100을 빠르게 제어할 수 있는 PMP기능과 USB호스트가 있기 때문에 웹서버 어플리케이션에 적용하기 좋을것 같다.

일단 W5100 을 테스트하기 위해 간단히 연결할 수 있는 SPI방식으로 [NET-EVM]보드에테스트 했다.
W5100제어를 위한 드라이버 코드는 아래와 같다.
//-----------------------------------------------------------------------------
// W5100 HAL
#define W5100_CS_PORT     LATG
#define W5100_CS_BIT     BIT9

#define W5100_IO_INIT()     (TRISGbits.TRISG9 = 0)
#define IINCHIP_CSoff()     Cbi(W5100_CS_PORT, W5100_CS_BIT)
#define IINCHIP_CSon()     Sbi(W5100_CS_PORT, W5100_CS_BIT)

#define IINCHIP_SPI_INIT()    SPI0_Init()
#define IINCHIP_SpiSendData    SPI0_WriteReadByte
#define IINCHIP_SpiRecvData    SPI0_WriteReadByte
//-----------------------------------------------------------------------------


[NET-EVM] 보드에 W5100 -S EVM보드를 연결



SPI로 이더넷 전송속도 테스트 결과 660kBps정도 나온다. W5100의 SPI최대 속도가 아닐까... 간단한 테스트하기는 문제 없을것 같다.
Posted by nexp
TAG PIC32, W5100

댓글을 달아 주세요

[INTERFACE]/WIZNET_EVM2011. 2. 11. 19:22

[W5100-s EVM] rev2 보드 관련 자료

[W5100-s EVM] rev2 보드 관련 자료


이더넷(W5100) 테스트를 위한 [NET-EVM] 보드 만들면서 [W5100-S EVM] rev2 보드를 만들었다. 기존 보드에서 전원핀맵을 통일해 USB 및 기타 모듈 보드와 동일한 핀맵으로 수정 제작 하였다.




W5100 EVM 회로도




rev1과 같이 SPI_EN핀을 따로 설정하지 않아도 자동으로 설정될 수 있도록 인버터가 있어 SPI EN핀을 따로 설정하지 않아도 된다.






[NET-EVM] 보드에 연결
확장 테스트 보드로 기존 MCU(AVR, ARM, PIC등등)를 이용하여 이더넷 테스트를 할 수 있는 보드 이다.




W5100을이용한 이더넷  테스트 동영상
UDP로 접속하여 이미지 데이터를 고속으로 전송하고 TFT LCD에 출력하도록 했다. [CANTUS EVM] 이더넷 전자엑자 테스트 참고.

Posted by nexp

댓글을 달아 주세요