본문 바로가기

RaspberryPi/RP2040

(39)
[RP2040_W5500] HDMI출력 확장 테스트 보드 제작 Raspberry Pi PicoW - HDMI 출력 테스트 예제를 이용하여 RP2040 W5500 EVM 보드에서 HDMI 출력을 할 수 있는 확장 테스트 보드를 제작 했다. HDMI 확장 테스트 보드 회로도 RP2040을 연결해서 다양한 테스트를 해 볼수 있다. TFP-LCD 모듈도 연결해서 테스트 가능하도록 했다. HDMI 출력 회로
Raspberry Pi Pico (RP2040) QMK Keyboard 테스트 USB HID KeyBoard를 만들기위한 방업은 여러가지가 있지만 표준화된 펌웨어를 사용하면 유지보수나 업데이트 등의 관리가 편리하다. 표준화된 키보드 펌웨어 중에 가장 많이 사용하는것 중에 QMK를 사용해 보자. 먼저 펌웨어 개발 환경을 다운로드 받는다. https://msys.qmk.fm/ QMK MSYS msys.qmk.fm 다운로드 받아서 설치 하면 자동으로 환경 설정을 해준다. QMK 설치후 QMK MSYS 실행 qmk setup 가장 먼저 해야 할것이 QMK 셋업 이다. 새로운 프로젝트를 생성한다. 프로젝트 생성할때 디바이스를 선택 해야 하는데 36번에 있는 RP2040을 선택 한다. 생성된 프로젝트에서 원하는 형태의 펌웨어로 수정해 주면 된다. info.json 파일에서 키맵을 설정 해 줄..
[RP2040 SSM] 엔코더(Quadrature Encoders) 테스트 RP2040 에는 하드웨어 타이머 기능중에 Encoder모드가 없다. 하지만 RP2040의 PIO기능을 이용하면 쉽게 구현 가능하다. 그래서 라이브러리로 만들어 공개한 분이 있다. https://github.com/jamon/pi-pico-pio-quadrature-encoder GitHub - jamon/pi-pico-pio-quadrature-encoder: Raspberry Pi Pico PIO Quadrature Encoder Raspberry Pi Pico PIO Quadrature Encoder. Contribute to jamon/pi-pico-pio-quadrature-encoder development by creating an account on GitHub. github.com Enc..
[RP2040 SSM] TFT LCD (COM26T2844) 테스트 EXP_4030_LCD_HDMI 확장 보드를 이용하면 12핀 SSM-Type EVM에서 TFT LCD보드 제어를 할 수 있다. 표준 핀맵의 확장 핀맵은 아래와 같이 구성 하였다. 소스코드는 https://github.com/adafruit/TFTLCD-Library 를 참고 수정해서 사용 했다. 초기화 부분과 데이터 출력 부분은 아래와 같이 수정 했다. #define Led1Off()sbi(0, BIT13) #define Led1On()cbi(0, BIT13) #define LCD_XLINE_SIZE240 #define LCD_YLINE_SIZE400 #define PORTA(sio_hw->gpio_out) #define GPIO0 0 #define GPIO1 1 #define LCD_LAT_BIT27 ..
[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..

반응형