[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
Cortex-M/INFINEON2013.11.30 23:00

XMC1300 EVM - W5200 TCP/IP 전송속도 테스트

XMC1300 EVM - W5200 TCP/IP 전송속도 테스트




[NET_EV EVM] 확장 테스트 보드 에서 테스트 가능하다. W5200은 하드웨어 TCP/IP 스텍을 내장하고 있어 SPI통신으로 이더넷통신을 쉽게 구현할 수 있다





XMC1300 EVM W5200 연결 핀맵

XMC1300 EVM에서 아래와 같이 핀맵이 구성된다.

W5200_CS -> P1.4 (P_A13)

W5200_RST -> P2.11 (P_B17)





XMC1300의 SPI클럭 최대 속도는 16Mhz이고 이때 TCP/IP 루프백 전송 속도는 1.4Mbps정도 나온다

W5200을 이용한 다른 MCU들의 TCP/IP속도와 비교하면 효율성이 조금 떨어지는것 같다.


------------------------------------------------------------

[35] iInChip Send: 1.4289 Mbps(348160 bytes, 1.8590 sec)

iInChip Recv: 1.3339 Mbps(348160 bytes, 1.9913 sec)

------------------------------------------------------------

[36] iInChip Send: 1.4162 Mbps(348160 bytes, 1.8756 sec)

iInChip Recv: 1.3400 Mbps(348160 bytes, 1.9823 sec)

--------------------------------------------------------



Posted by nexp
[FreeScale]/KINETIS2013.11.03 23:30

K20 EVM - Kinetis Cortex-M4 W5200을 이용한 TCP/IP 루프백 전송속도 테스트

K20 EVM - Kinetis Cortex-M4 W5200을 이용한 TCP/IP 루프백 전송속도 테스트





W5200은 HW TCP/IP 스택을 내장하고 있는 칪으로 저렴한 MCU에서 SPI통신으로 쉽게 Ethernet 통신이 가능하도록 해준다.

K20에서 W5200을 이용하여 TCP/IP 전송 속도 테스를 진행해 보았다.





K20의 SPI최대 속도는 25Mhz이고 TCP/IP 루프백 속도 테스트 결과 2.5Mbps 정도로 측정된다.




[34] iInChip Send: 2.6033 Mbps(348160 bytes, 1.0203 sec)

iInChip Recv: 2.2290 Mbps(348160 bytes, 1.1917 sec)

------------------------------------------------------------

[35] iInChip Send: 2.6008 Mbps(348160 bytes, 1.0213 sec)

iInChip Recv: 2.2092 Mbps(348160 bytes, 1.2023 sec)

-------------------------------------------------------






K20 Hadward TCP/IP Network Module W5200 드라이버 코스코드

 TCP/IP 전송속도 테스트를 위하여 [Net_EV-SM EVM] 확장 테스트 보드를 이용하였다.

 SPI는 SPI0에 연결되어 있고 /CS는 PB3, /RESET는 PB2에 각각 연결되어 있다.

//-----------------------------------------------------------------------------

// W5200 HAL

#define W5100_CS_PORT GPIOB

#define W5100_CS_BIT BIT3


#define W5100_RST_PORT GPIOB

#define W5100_RST_BIT BIT2



#define W5100_IO_INIT() SIM_SCGC5 |= SIM_SCGC5_PORTB_MASK;\

                                        PORTB_PCR2 = PORT_PCR_MUX(1);\

                                        PORTB_PCR3 = PORT_PCR_MUX(1);\

                                        Sbi(GPIOB_PDDR, W5100_CS_BIT);Sbi(GPIOB_PDDR, W5100_RST_BIT);\

                                        IINCHIP_CSon();


#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();IINCHIP_SPI_SPEED();

#define IINCHIP_SpiSendData SPI0_WriteReadByte

#define IINCHIP_SpiRecvData SPI0_WriteReadByte

#define IINCHIP_SPI_SPEED()            SPI0_SetSpeed(SPI_SPEED_MAX) 


#define IINCHIP_RSToff() cbi(W5100_RST_PORT, W5100_RST_BIT)

#define IINCHIP_RSTon() sbi(W5100_RST_PORT, W5100_RST_BIT)

//-----------------------------------------------------------------------------




Posted by nexp
Cortex-M/EFM322013.05.04 21:30

EFM32G210 EVM - 웹서버를 이용한 온습도 모니터링 예제

EFM32G210 EVM - 웹서버를 이용한 온습도 모니터링 예제

 

 

 

 

 

EFM32의 저전력 기능을 활용하기 위해 저전력으로  온습도 모니터링 가능한 임베디드 웹서버를 제작했다.

온도, 습도 센서는 STH10 온습도 센서 모듈을 이용하였다.

 

 

SHT10 온습도 센서 드라이버 소스

//-----------------------------------------------------------------------------
// SHT10 Sensor
#define SHT_DAT_BIT      BIT13
#define SHT_DAT_PORT     GPIOB

#define SHT_DATA_H()     sbi(SHT_DAT_PORT, SHT_DAT_BIT);
#define SHT_DATA_L()     cbi(SHT_DAT_PORT, SHT_DAT_BIT)

#define SHT_SCK_BIT      BIT14
#define SHT_SCK_PORT     GPIOB
#define SHT_DAT_DDR      DDRD 
#define SHT_DAT_READ()     ((pGPIO->P[1].DIN&SHT_DAT_BIT)?1:0)

#define SHT_SCK_H()      sbi(SHT_SCK_PORT, SHT_SCK_BIT);
#define SHT_SCK_L()      cbi(SHT_SCK_PORT, SHT_SCK_BIT)

#define SHT_PORT_INIT()     GPIO_PinModeSet(gpioPortB, 14, gpioModePushPull, 1);\
                                        GPIO_PinModeSet(gpioPortB, 13, gpioModeInputPull, 0)


#define OUT_MODE()      GPIO_PinModeSet(gpioPortB, 13, gpioModePushPull, 1)
#define IN_MODE()      GPIO_PinModeSet(gpioPortB, 13, gpioModeInputPull, 0)
#define _SHT_DELAY()     Delay_us(10);
//-----------------------------------------------------------------------------

 

 

 

EFM32 Embedded Webserver - Temperature and Humidity Web Monitoring 동영상

EFM32 웹서버에 접속하면 2초에 한번씩 온습도 데이터를 전송하는 테스트 이다. 인터넷이 연결되는 핸드폰이나 모바일 기기에서 온습도 모니터 가능하다.

 

 

 

 

EFM32 Webserver Test Page

웹서버 IP 로 접속하면 가장 최근의 온습도 데이터를 확인할 수 있다.

Posted by nexp
Cortex-M/EFM322013.05.01 23:00

EFM32G210 EVM - 저전력 Embedded Web Server 테스트

EFM32G210 EVM - 저전력 Embedded Web Server 테스트




EFM32G210의 장점으로 Cortex-M3코어(128k Flash/16k RAM)에 저전력으로 구동 된다. 소형에 저렴하면서 플래시와 램이 풍부해서 소형 임베디드 웹서버 제작하기에 좋을것 같다.


간단히하기 위해 내부 플레쉬메모리에 웹서버를 구현 해 보았다.




할당된 IP에 접속하면 출력될 Web Page

간단한 이미지와 입출력 제어를 위한 CGI코드로 구성되어 있다.




EFM32 Web Server 테스트 동영상


Posted by nexp