본문 바로가기

W5500

(40)
W55RP20 - 네트웍 기반의 저렴한 HDMI 출력 모듈 보드 테스트 W55RP20은 저렴한 Ethernet 솔루션 칩인 W5500과 ARM 듀얼 코어 베이스의 저렴한  RP2040을 하나의 칩으로 제작한 SIP(System in Package) 이다.작고 저렴한 이더넷 솔루션에 사용하기 너무 좋은 칩 인것 같다.  작고 저렴한 네트워크 예제로 이더넷을 통해 전송받은 광고 이미지를 HDMI 모니터에 출력을 해 줄 수 있는 저렴한 모듈을 제작 해 보고자 한다. 프로젝트 소스코드https://github.com/elabsystem/W55RP20_NET_HDMI시스템 블록도PC에서 네트웍을 통해 이미지를 전송하면 W55RP20에서 받아서 HDMI 모니터로 출력 하는 시스템이다. 그리고 자동으로 화면 캡쳐후 전송하는 기능도 추가 하였다.하드웨어 제작W55RP20은 최대한 작게 제..
[W55RP20 SSM] W5500 Ethernet - 웹서버 입력 테스트 지난번 포스트에서는 W55RP20에서 웹서버 출력 관련 테스트를 했는데 이번에는 서버에서 값을 입력 받는 테스트를 해 보자  먼저 Raspberry Pi PicoW - Ajax 를 이용한 실시간 웹 전압 디스플레이(https://nexp.tistory.com/3907 )  Raspberry Pi PicoW - Ajax 를 이용한 실시간 웹 전압 디스플레이ESP32-S2 웹서버 테스트 - Ajax 를 이용한 실시간 데이터 수신 테스트 코드를 이용하여 실시간 웹 디스플레이 테스트를 해보자. 코드는 거의 동일하게 구동된다. Pi Pico 확장 테스트 보드에는 ADC를 테nexp.tistory.com를 참고 해서 웹페이지를 작성 한다 이번에는 페이지를 쉽게 변경하기 위해 웹페이지를 바이너리로 변환해서 처리 하도..
[W55RP20 SSM] W5500 Ethernet - 웹서버 테스트(웹서버 라이브러리 함수 문제 발생 및 수정) 이더넷 기능을 사용하는 대부분의 예제에서 웹서버는 필수적으로 필요한 부분이라 테스트가 필요하다. 기존의 Aruino 환경에서 웹서버 예제는 많은 부분이 라이브러리로 구현되어 있어 간단하게 구현 하였는데 SDK를 이용한 웹서버는 여러가지 처리해 주어야 하는 것이 많다. 이전 포스트에서 DHCP 테스트 코드를 조금 수정해서 DHCP로 IP를 할당 받으면 웹서버를 수행하는 코드로 작셩했다.(참고 W55RP20 웹서버 예제 : https://github.com/WIZnet-ioNIC/WIZnet-PICO-C/tree/main/examples/http/server) #include "port_common.h"#include "wizchip_conf.h"#include "w5x00_spi.h"#include "so..
[W55RP20 SSM] iperf 를 이용한 W5500 TCP 전송률 테스트 W55RP20의 최대 장점은 Ethernet기능을 하는 W5500을 원칩으로 소형화 했기 때문에 당연히 Ethernet 성능이 중요 할것 같다.  MCU의 성능은 RP2040 벤치마크 테스트에서 확인 했기 때문에 달라진 것은 없을것 같고 TCP Throughput 측정 테스트를 해 보자. W55RP20은 W5500이 PIO를 이용한 SPI를 생성해서 제어하기 때문에 SPI, PIO, DMA 기능이 필수적으로 들어가야 한다. 프로젝트 생성시 설정해주면 편리하다.    RP2040 C++ SDK 환경에서 iperf 를 이용한 W5500 TCP 전송률 테스트 결과 14Mbps 정도로 측정 되는것을 확인했다.  [RP2040_W5500] RP2040 C++ SDK 환경에서 iperf 를 이용한 W5500 TCP..
[W55RP20 SSM] W5500 + RP2040 SIP W55PR20 보드 제작 RP2040 과  W5500을 한칩으로 제작한 W55RP20 을 이용하여 SSM Type EVM 형태로 테스트 보드를 제작 했다.기존에 제작 했던 [RP2040 SSM]보드 및 [RP2010_W5500 SSM] 보드와 핀맵을 동일하게 SSM Type EVM 형태로 제작 했다.    Ethnet 커넥터를 교체 할 수 있는 커넥터 타입으로 적용하여 탈 부착 할 수 있으며 PoE모듈들을 연결 하기 쉽도록 제작 했다. 단독으로 사용하면 USB기능의 소형 테스트 보드로도 활용 가능하다.  기존에 [RP2040_W6100] 보드와 비교하면 높이가 조금 높아졌지만 탈부착 가능해 다양한 용도로 좀 더 유연하게 사용할 수 있도록 했다.W55RP20 회로 핀맵 W55R2040 관련 자료는 Wiznet 홈페이지(https:..
CH32X035 SSM - W5500 을 이용한 Iperf TCP Throughput 측정 테스트 CH32X035는 저렴(2$대)하고 작은크기(3mm x 3mm)의 RISC-V 코어로 소형의 TCP/IP 솔루션으로 사용하기 좋을것 같아 W5500을 이용하여 TCP/IP 전송률 테스트를 해 보았다. 우선 Wizet사에서 제공하는 ioLibrary Driver를 다운 받아 프로젝트 폴더에 복사 한다. SPI 초기화 함수를 작성한다. void SPI_FullDuplex_Init(void) { GPIO_InitTypeDef GPIO_InitStructure = {0}; SPI_InitTypeDef SPI_InitStructure = {0}; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_SPI1, ENABLE); GPIO_InitStructure..
CH32V003 SSM - Iperf로 W5500의 TCP Throughput 측정 테스트 100원대 MCU로 유명한 CH32V003에서 W5500 모듈보드를 이용하여 이더넷 전송률 테스를 해 보자.그러면 정말 저렴한 이더넷 솔루션이 되지 않을까? 아쉽게도 플래시 용량 문제로 Arduino 환경에서는 사용할 수 없다. CH32V003 SSM - 개발환경(MounRiver)을 이용하여 테스트 했다. 우선 프로젝트를 생성하고 ioLibrary Driver를 다운 받아 복사 한다.   CH32V003 SPI 초기화 함수를 작성한다.void SPI_FullDuplex_Init(void){ GPIO_InitTypeDef GPIO_InitStructure = {0}; SPI_InitTypeDef SPI_InitStructure = {0}; RCC_APB2PeriphClockCmd(RCC..
CH32V307 SM - Mounriver에서 W5500의 iperf TCP Throughput 측정 테스트 Arduino IDE에서 W5500 테스트에서 전송률이 낮아서 MounRiver 에서 W5500 테스트를 해 보자 우선 프로젝트를 생성하고 ioLibrary Driver를 다운 받아 복사 한다. CH32V307의 SPI 설정 함수를 작성한다. void SPI_FullDuplex_Init(void) { GPIO_InitTypeDef GPIO_InitStructure = {0}; SPI_InitTypeDef SPI_InitStructure = {0}; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_SPI1, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_InitStructure.GPIO_Mod..