본문 바로가기

분류 전체보기

(1991)
CH32V003 SSM - Arduino SPI테스트 CH32V003 Arduino 개발환경 테스트에서 확인 결과 디폴트로 SPI가 disable 되어 있다. CH32V003 Aduino 환경에서 CH32V003의 SPI 제어를 하려면 먼저 Variant (\AppData\Local\Arduino15\packages\WCH\hardware\ch32v\1.0.3\system\) 파일에서 SPI_MODULE_ENABLE 설정을 해 주어야 한다. /* ENABLE Peripherals */ // #define ADC_MODULE_ENABLED #define UART_MODULE_ENABLED #define SPI_MODULE_ENABLED #define I2C_MODULE_ENABLED // SPI definitions #ifndef PIN_SPI_SS #def..
CH32V003 SSM - Arduino 개발환경 설정 및 MCU 성능 테스트 CH32V003은 RISC-V 코어로 다양한 라이브러리를 제공하는 Arduino 환경도 지원하고 있다. 저렴한 중국 칩이지만 나름 개념 있게 만들고 있는것 같다. 물론 아직 몇가지 지원이 안되는 라이브라리가 있는 것이 아쉬운점이긴 하지만...( 테스트 해본 결과 V1.03 기준으로 I2C, PWM은 정상 동작을 하지 않는것 같다.) 우선 하기 사이트에서 Arduino Core Code를 제공한다. GitHub - openwch/arduino_core_ch32: Core library for CH32duino GitHub - openwch/arduino_core_ch32: Core library for CH32duino Core library for CH32duino. Contribute to openwc..
CH32V003 SSM - SPI DMA 동작 테스트 소형 MCU에서 가장 많이 사용하는 페리는 SPI가 아닐까? CH32V003에서 SPI 동작 테스트를 해 보자. CH32V003 SSM EVM 보드에서 SPI는 PC5, PC6, PC7에 할당 되어 있다. CH32V003의 SPI 최대 클럭 속도는 24Mhz로 STM32F030 SPI 클럭속도 보다 더 빠르다. CH32V003의 SPI 기본 동작 테스트 코드 int main(void) { u8 i; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4); Delay_Init(); USART_Printf_Init(115200); printf("SystemClk:%d\r\n",SystemCoreClock); #if (SPI_MODE == SLAVE_MODE) printf("SLA..
CH32V003 SSM - 개발환경(MounRiver) 설정 및 MCU 성능 테스트 저렴하고 성능 좋은 MCU들이 많이 출시되고 있지만 새로운 개발환경을 구축하기가 힘들어 쉽게 바꾸지 못한다. 그런 측면에서 WCH의 CH32V는 RISC-V 코어로 다양한 개발환경을 지원하고 있다. 개발 환경 IDE는 RISC-V 용 mounriver를 사용하면 된다. http://www.mounriver.com/ 테스트 예제코드 https://github.com/openwch/ch32v003 https://github.com/Community-PIO-CH32V/platform-ch32v GitHub - Community-PIO-CH32V/platform-ch32v: PlatformIO platform for CH32V RISC-V chips (CH32V003, CH32V103, CH32V20x, CH3..
CH32V003 SSM - 100원대(10Cent) MCU CH32V003 보드 제작 WCH에서 저렴한 10Cent MCU로 선전하며 CH32V003를 출시하고 있다. 100원대 MCU라니... 너무 한거 아닌가? 스펙상 성능도 나쁘지 않다. RISC-V코어에 2KB SRAM, 16KB 플래시를 갖춘 48MHz 클럭의 MCU이다. CH32V003를 테스트 할 수 있는 보드를 표준 핀맵의 SSM Type 형태로 제작해 보았다. 내가 생각하는 가장 큰 장점은 사이즈가 작다. CH32V003F4U6의 경우 3mm x 3mm 사이즈로 정말 작다. 외부 크리스탈 없이 작은 페키지로 다양한 어플리케이션에 간단히 사용하기 좋을것 같다. 그리고 CH32V003J4M6는 8핀 패키지로 제공되어 있다.
[W6100 SSM] 최대한 작게 만들어본 W6100 보드 W6100 은 WIZnet 의 Hardware TCP/IP 기술 기반 위에 새롭게 IPv6 를 추가하여 IPv4/IPv6 Dual Stack 을 지원하는 Hardwired Internet Controller 이다.TCP, UDP, IPv6, IPv4, ICMPv6, ICMPv4, IGMP, ARP, PPPoE 등의 TCP/IP 뿐만 아니라 10 Base-T / 10 Base-Te / 100 Base-TX Ethernet PHY 와 Ethernet MAC Controller 를 모두 내장하하고 있다. 특히 IPv6 IoT Device 시장에 적합한 Embedded Internet One chip Controller 가 될것 같아 SSM Type 형태의 표준 핀맵으로 제작 해 보았다. 기존에 제작했던 W55..
[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 =..
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 파일에서 키맵을 설정 해 줄..