본문 바로가기

RaspberryPi/RP2040_W5500

(8)
[RP2040_W5500] HDMI출력 확장 테스트 보드 제작 Raspberry Pi PicoW - HDMI 출력 테스트 예제를 이용하여 RP2040 W5500 EVM 보드에서 HDMI 출력을 할 수 있는 확장 테스트 보드를 제작 했다.  HDMI 확장 테스트 보드 회로도RP2040을 연결해서 다양한 테스트를 해 볼수 있다. TFP-LCD 모듈도 연결해서 테스트 가능하도록 했다. HDMI 출력 회로   RP2040 HDMI 출력 테스트 코드#include // Core display & graphics library#include // A custom font#include "img_rp2040exp.h"#define SW1_PIN 1static const struct dvi_serialiser_cfg pico_exp_cfg =..
[RP2040_W5500] Webserver 테스트 지난 포스트에서 Ethernet_Generic 라이브러리를 이용해서 이더넷 전송 속도 개선을 했고 이제 웹서버를 구현 해 보자 웹서버의 가장 기본이 되는 뼈대 코드를 작성해보자. 새로운 라이브러리로 ESP32에서 테스트 했던 기본 웹서버 코드와 거의 동일한 코드로 작성할 수 있다. #include "config.h" #include #include "Ethernet_Generic.h" #include #define ETHERNET_USE_RPIPICO true byte mac[] ={ 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x01 }; EthernetWebServer server(80); const int Led1Pin = 25; // HTML 페이지 const char index_htm..
[RP2040_W5500] Arduino IDE에서 Iperf TCP Throughput 측정 테스트 (Ethernet_Generic 라이브러리 수정) RP2040 C++ SDK 환경에서 iperf 전송율 테스트 결과 전송 속도는 잘 나오지만 웹서버를 위한 라리브러리가 불편한점이 많다. [RP2040_W5500] RP2040 C++ SDK 환경에서 iperf 를 이용한 W5500 TCP 전송률 테스트 . Arduino IDE 환경에서 TCP전송률 테스트 결과 12Mbps 정도로 측정이 되서 다른 MCU들의 iperf 테스트 결과와 비교해 느린것 같아 SDK 환경에서 테스트 해볼 필요가 있을것 같다. RP2040 C/C++ SDK 개발환경 예 nexp.tistory.com 웹서버 라이브러리 (https://github.com/khoih-prog/EthernetWebServer)는 쉽고 간단하게 사용할 수 있어 편리 하지만 이더넷 전송 속도가 느리다. 그래..
[RP2040_W5500] RP2040 C++ SDK 환경에서 iperf 를 이용한 W5500 TCP 전송률 테스트 . Arduino IDE 환경에서 TCP전송률 테스트 결과 12Mbps 정도로 측정이 되서 다른 MCU들의 iperf 테스트 결과와 비교해 느린것 같아 SDK 환경에서 테스트 해볼 필요가 있을것 같다. RP2040 C/C++ SDK 개발환경 예제를 이용하여 W5500 TCP 전송률 테스트를 해보자 라이브러리는 Wiznet의 W5500 SDK를 다운받아 사용하였다. RP2040에서 W5500 테스트 기본 예제는 아래코드로 작성했다. #include "pico/critical_section.h" #include "hardware/clocks.h" #include "wizchip_conf.h" #include "w5x00_spi.h" #include "socket.h" #define _USE_LOOPBACK ..
[RP2040_W5500] RP2040 C++ SDK 환경에서 SPI DMA 성능 측정, Arduino 개발환경과 속도 비교 RP2040 을 SDK에서 구동하면 Aduino 개발환경에서 보다 속도가 빨라지는데 SPI DMA 테스트도 RP2040 C/C++ SDK로 테스트 해보자. Aduino IDE에서 SPI 테스트 했던 코드로 SPI 속도를 측정해 보자. SDK에서 제공하는 SPI 예제를 이용하여 기본 테스트를 해 볼수 있다. #include #include #include "pico/stdlib.h" #include "pico/binary_info.h" #include "hardware/spi.h" int main() { stdio_init_all(); printf("Hello, MPU9250! Reading raw data from registers via SPI...\n"); // This example will use..
[RP2040_W5500] RP2040 C++ SDK 환경에서 GPIO 성능 측정, Arduino 개발환경과 속도 비교 RP2040 Arduino 개발환경에서 GPIO 속도 측정 결과와 비교하기위해 기본 예제 코드에서 GPIO 제어 코드를 이용해서 테스트 해보자 #include #include "pico/stdlib.h" #define LED_PIN2 int main() { gpio_init(LED_PIN); gpio_set_dir(LED_PIN, GPIO_OUT); stdio_init_all(); printf("RP2040 GPIO Speed Test\n"); while (true) { gpio_put(LED_PIN, 1); gpio_put(LED_PIN, 0); } return 0; } GPIO토글 속도는 8.5ns(30Mhz)로 측정된다. Arduino에서처럼 루프 수행 지연없이 구동 되는것을 확인 할 수 있다. 레..
[RP2040_W5500 SSM] Raspberry Pi Pico(RP2040) C/C++ SDK 개발환경 설정(VS Code이용 가장 간단한 방법) Raspberry Pi Pico C/C++ SDK 개발 환경 설정을 위한 가장 간단한 방법으로 pico-setup-windows 패키지를 이용하는 방법 인것 같다. https://github.com/raspberrypi/pico-setup-windows 시행 파일을 다운받아 설치하면 한번에 셋업 완료 된다. 설치후 추가된 앱에서 Command창을 실행하면 기본 환경 설정이된 콘솔창이 실행 된다. SDK가 설치된 폴더에서 기본 예제를 빌드하면 컴파일이 완료 된다. C:\RP2040>cd pico-examples C:\RP2040\pico-examples>cd build C:\RP2040\pico-examples\build>cmake .. 콘솔창에서 Visual Studio Code를 실행해서 예제파일을 O..
[RP2040_W5500 SSM] Raspberry Pi Pico 보드 제작 때로는 작다는 이유만으로 프로젝트에 적용하기에 좋은 보드가 있다. 네트웍 솔류션이 필요한 어플리케이션에서 저렴하고 작은 보드가 필요해 소형의 네트웍 모듈을 제작해 보았다.RP2040과 W5500을 한보드에 넣어서 최대하 작고 저렴하면서 어느정도 성능이 필요한 어플리케이션에 적합함 보드를 제작 했다. 기존 RP2040 SSM EVM 보드와 동일한 핀맵을 유지하고 W5500은 SPI1에 할당 해서 호환성을 유지 하도록 했다.