税込290円で購入できるArduino互換マイコンボード

UIAPduino Pro Micro CH32V003とは

UIAPduino Pro Micro CH32V003は、日本のUIAPが設計した、非常に小型・低価格なマイコン開発ボードです。

最大の特徴は、WCH製のCH32V003というRISC-Vマイコンを搭載し、USB Type-Cだけで電源供給とプログラム書き込みができることです。さらに、Arduino IDEを使った開発にも対応しています。UIAP

簡単に言えば、

「Arduino Pro Microのような大きさで、RISC-Vマイコン+USBを使って電子工作を楽しめるボード」

と考えると分かりやすいです。


1.基本スペック

項目 UIAPduino Pro Micro CH32V003 V1.4(改良型)
搭載MCU CH32V003F4U6
CPU 32bit RISC-V QingKe V2A
最大クロック 48MHz
Flash 16KB
RAM 2KB SRAM
GPIO 最大18ポート(MCU仕様)
ADC 10bit ADC
UART USART ×1
I²C ×1
SPI ×1
タイマー 16bitタイマー等
USB USB 2.0 Low-Speed
USB端子 USB Type-C
電源 3.3V / 5V選択式
デバッグ 1-wireデバッグ
IDE Arduino IDE対応
基板 オープンソースハードウェア
形状 Pro Micro系
LED 電源LED、ユーザーLED
リセット リセットボタン搭載

CH32V003自体は48MHz動作、16KB Flash、2KB SRAM、USART・I²C・SPI・ADCなどを備えています。WCH


2.最大のポイントは「RISC-V」

普通のArduino UNOでは、代表的には

ATmega328P

という8bit AVRマイコンが使われています。

一方、このボードは

CH32V003

という32bit RISC-V系マイコンです。

つまり、

Arduino UNO
     ↓
ATmega328P
     ↓
8bit AVR

UIAPduino Pro Micro
     ↓
CH32V003
     ↓
32bit RISC-V

という違いがあります。

RISC-Vは、ARMやx86とは異なる**オープンな命令セットアーキテクチャ(ISA)**です。

そのため、CH32V003は「安価なRISC-Vマイコンを実際に触ってみる」という教材としても面白い存在です。


3.CH32V003が非常に小さいのに高性能

CH32V003には、

  • 48MHz CPU
  • 16KB Flash
  • 2KB RAM
  • ADC
  • DMA
  • タイマー
  • UART
  • SPI
  • I²C
  • オペアンプ
  • ウォッチドッグ

などが入っています。WCH

例えばセンサーを接続すると、

温度センサー
     ↓
   ADC
     ↓
 CH32V003
     ↓
 USB / LED / SPI / UART

のようなシステムを作れます。


4.USB Type-Cが非常に便利

V1.4では、USB Type-Cコネクタ1個で電源供給とプログラム書き込みができます。UIAP

つまり、

パソコン
   │
   │ USB Type-C
   ↓
UIAPduino
   │
   ├── CH32V003
   ├── LED
   └── GPIO

という非常にシンプルな構成です。

Arduino UNOのようにUSBシリアル変換基板を別に用意する必要がないため、実験が簡単です。


5.HIDデバイスを作れる

ここがかなり面白いところです。

このボードはUSB 2.0 Low-Speedデバイスとして動作でき、HIDデバイスを作ることができます。UIAP

HIDというのは、

Human Interface Device

の略です。

代表例は、

  • キーボード
  • マウス
  • ジョイスティック
  • ゲームコントローラー

などです。

例えば、

ボタンを押す
     ↓
CH32V003
     ↓
USB
     ↓
パソコン
     ↓
「A」キーを押した

というような装置を作れます。

そのため、

自作キーボード

自作マウス

ショートカットコントローラー

プレゼン用リモコン

ミニゲームコントローラー

などの制作に向いています。


6.「Arduino Pro Micro」との関係

名前にPro Microと入っていますが、Arduino純正のPro Microそのものではありません。

UIAPduinoの基板レイアウトは、SparkFun Qwiic Pro Micro – USB-C(ATmega32U4)とおおよそ互換になるよう設計されています。UIAP

ただし、

電源ピンは完全互換ではない

とUIAP自身が注意しています。UIAP

したがって、

「Pro Micro用のプログラムや回路が全部そのまま使える」

という意味ではありません。


7.3.3Vと5Vを選べる

CH32V003の電源電圧は3.3Vまたは5Vに対応しています。WCH

UIAPduino V1.4では、マイコンへの電源を3.3V/5Vから選択できます。

初期状態は5Vです。UIAP

これは電子工作ではかなり便利です。

例えば、

5V系センサー
   ↓
UIAPduino

3.3V系センサー
   ↓
UIAPduino

という実験をしやすくなります。

ただし、接続するセンサーやICのI/O電圧仕様は個別に確認する必要があります。


8.GPIOを使った電子工作

CH32V003には最大18個のI/Oポートがあります。WCH

例えば、

GPIO
 │
 ├── LED
 │
 ├── スイッチ
 │
 ├── ブザー
 │
 ├── リレー
 │
 ├── センサー
 │
 └── OLED

などを接続できます。

ただし、18 GPIOがすべて自由に使えるという意味ではありません。

USBや電源、デバッグ、基板上の回路などとの関係で、実際に使用できるピンはボードのピン配置を確認する必要があります。


9.ADCがある

CH32V003には10bit ADCがあります。WCH

ADCとは、

アナログ電圧をコンピューターが扱える数字に変換する回路

です。

例えば、

可変抵抗
   │
   │ 0~5Vなど
   ↓
 ADC
   ↓
CH32V003
   ↓
数値として処理

とできます。

これを利用して、

  • 可変抵抗
  • 光センサー
  • 温度センサー
  • 圧力センサー
  • アナログジョイスティック

などを扱えます。


10.I²C・SPI・UARTがある

電子工作で非常によく使う通信方式も搭載されています。WCH

I²C

OLEDディスプレイなどに便利です。

CH32V003
   │
 ┌─┴───┐
SDA   SCL
 │     │
 ↓     ↓
 OLEDディスプレイ

SPI

高速な周辺機器との通信に使えます。

例えば、

  • LCD
  • SDカード
  • センサー
  • フラッシュメモリ

など。

UART / USART

パソコンや別のマイコンとのシリアル通信などに使えます。


11.USBを利用した面白い教材

このボードの面白さは、単なるLED点滅だけではありません。

例えば、

初級

LEDを点滅させる

初級+

ボタンでLEDをON/OFF

中級

可変抵抗を読み取る

中級

OLEDに数値を表示

上級

USBキーボードを作る

上級

USBマウスを作る

発展

パソコンと通信する専用USB機器を作る

というステップアップができます。


12.Arduino IDEで開発できる

UIAPduinoはArduino IDEでのコーディングをサポートしています。UIAP

通常のArduinoプログラムに近い感覚で、

void setup() {
    pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
    digitalWrite(LED_BUILTIN, HIGH);
    delay(500);

    digitalWrite(LED_BUILTIN, LOW);
    delay(500);
}

のようなプログラムから始められます。

つまり、

「RISC-Vだから難しいC言語・アセンブリ言語から始めなければならない」

というわけではありません。


13.一方で「Arduinoだけ」の世界ではない

CH32V003はArduinoだけでなく、より低レベルのマイコン開発もできます。

公式には、

  • CH32V003開発資料
  • リファレンスマニュアル
  • MounRiver Studio
  • WCH-Link
  • 1-wireデバッグ

などの開発環境が用意されています。WCH

また、PlatformIO向けのボード定義でも、

Arduino / ch32v003fun / noneos-sdk

などが確認できます。GitHub

したがって、

Arduino IDE
   ↓
簡単な電子工作

        ↓

PlatformIO
   ↓
本格的な開発

        ↓

MounRiver / WCH環境
   ↓
CH32V003を深く理解する

という学習も可能です。


14.ユーザーLEDもある

V1.4にはユーザーLEDが搭載されています。

Zephyrのボード定義では、ユーザーLEDは

PC0

に接続され、アクティブHighとされています。nRF Connect SDK Documentation

そのため、最初の実験として

「LEDを点滅させる」

というマイコン入門を、外部LEDなしで始められます。


15.リセットボタンもある

基板上にはリセットボタンがあります。nRF Connect SDK Documentation

プログラムを書き込んだあと、

動作がおかしい
      ↓
RESET
      ↓
プログラム再起動

という操作ができます。


16.USBポート保護も考えられている

V1.4にはUSBポートを保護するヒューズが搭載されています。UIAP

さらに回路図では、USB周辺にヒューズや保護・フィルタリング部品が配置されています。UIAP

電子工作では、

「配線を間違えてUSBポートまで壊してしまう」

という問題があるので、このような保護回路は実用上ありがたい部分です。


17.基板そのものも面白い

UIAPduino V1.4は、

  • オープンソースハードウェア
  • オープンソースソフトウェア
  • RoHS対応
  • 日本で設計
  • 全数検査
  • 永久保証

を掲げています。UIAP

さらに底面がフラットなので、表面実装部品のように取り付けることも想定されています。UIAP


18.CH32V003の「弱点」

高性能ですが、万能ではありません。

特に重要なのが、

RAMが2KBしかない

ことです。

Flash
16KB
 ↓
プログラムを保存

RAM
2KB
 ↓
実行中のデータ

なので、巨大なプログラムや大量のデータを扱う用途には向きません。

例えば、

  • 大規模GUI
  • 大容量画像処理
  • 大きなWebサーバー
  • 複雑なAI処理

などには不向きです。

逆に、

「小さな装置を安く作る」

ことには非常に向いています。


19.Arduino UNOとの比較

Arduino UNO R3 UIAPduino Pro Micro CH32V003
MCU ATmega328P CH32V003
CPU 8bit AVR 32bit RISC-V
クロック 16MHz 48MHz
Flash 32KB 16KB
SRAM 2KB 2KB
USB USB-シリアル USB Type-C
USB HID 標準では制限あり 可能
ADC 10bit 10bit
I²C
SPI
UART
価格 比較的高い 非常に安価な部類
学習対象 Arduino/AVR RISC-V/Arduino/USB

CH32V003そのものは「2KB SRAM・16KB Flash・最大48MHz」という小規模マイコンです。WCH


20.Arduino Pro Microとの比較で特に面白いところ

Arduino系でUSB HIDをやりたい場合、以前から

ATmega32U4搭載Pro Micro

がよく使われてきました。

UIAPduinoは、それに近いサイズ・用途を持ちながら、

CH32V003 + USB Type-C + RISC-V

という構成になっています。

そのため、

「昔のPro Microで作っていたUSBキーボードやコントローラーを、RISC-Vマイコンでやってみる」

という教材にできます。

ただし、ピン配置や電源仕様、USB実装は完全互換ではありません。UIAP


21.V1.3ではなくV1.4がおすすめ

もし購入するなら、基本的にはV1.4を選んだほうがよいでしょう。

V1.3はBeta版で、UIAP自身が既知の問題として、

  • R2のプルアップ接続
  • USB D+/D−の電気的条件
  • USB信号とマイコンポートの接続

などを挙げています。

そしてUIAPはV1.4への移行を案内しています。UIAP

現在から始めるならV1.4が本命です。


22.こんな人に向いている

★ Arduinoを経験した人

Arduino IDEを使ってRISC-Vへ進めます。

★ 電子工作をしたい人

LED、スイッチ、センサー、ディスプレイなどを接続できます。

★ USB機器を作りたい人

HIDを利用したキーボード・マウスなどが面白いです。

★ RISC-Vを勉強したい人

安価なRISC-Vマイコンとして実際にプログラムできます。

★ マイコンを教材にしたい人

非常に小さなボードなので、実験教材に向いています。


23.特に面白い「10個の作品」

このボードなら、例えば次のようなものが作れます。

  1. LED点滅装置
  2. 電子サイコロ
  3. 温度計
  4. 光センサー
  5. OLED時計
  6. USBキーボード
  7. USBマウス
  8. ゲームコントローラー
  9. パソコン用ショートカットボタン
  10. 自作USB操作パネル

特におすすめなのが、

「パソコン操作用のUSBボタン」

です。

例えば、

┌───────────────┐
│   UIAPduino    │
│   CH32V003     │
│                │
│ [YouTube]      │
│ [音量+]       │
│ [音量-]       │
│ [コピー]       │
│ [貼り付け]     │
└───────┬───────┘
        │ USB-C
        ↓
     パソコン

のような装置を作れます。

これは**「マイコンを勉強する」だけでなく、「実際に使えるものを作る」**という意味で、非常に良い題材です。


まとめ

UIAPduino Pro Micro CH32V003 V1.4を一言で表すなら、

「Pro Microサイズに、安価な32bit RISC-VマイコンとUSB機能を詰め込んだArduino互換系の実験ボード」

です。

特に重要なのは、

CH32V003
→ 32bit RISC-V
→ 48MHz
→ 16KB Flash / 2KB RAM
→ GPIO / ADC / UART / SPI / I²C

UIAPduino
→ USB Type-C
→ Arduino IDE
→ USB HID
→ 3.3V / 5V選択
→ 保護ヒューズ
→ Pro Micro系の小型基板

という組み合わせです。

Verified by MonsterInsights