verylowfreqのアイコン画像
verylowfreq 2023年09月11日作成 (2023年11月09日更新)
製作品 製作品 Lチカ Lチカ 閲覧数 1506
verylowfreq 2023年09月11日作成 (2023年11月09日更新) 製作品 製作品 Lチカ Lチカ 閲覧数 1506

自作マイコンボード Suzuduino UNO 【WCH CH32V203】

自作マイコンボード Suzuduino UNO 【WCH CH32V203】

話題の激安RISC-V MCU、CH32Vを利用したUNO形状の自作マイコンボードを紹介します。120円のチップながらとてもパワフルで探求しがいのあるチップを、慣れ親しんだ基板形状に収めました。

BOOTHにて販売中です! 基板単品や、部品セットオプション、実装オプションもあります。

BOOTHショップ「スズの宝箱」はこちら

この記事は動画の補足記事です。本記事だけでも内容はひととおりわかりますが、ぜひ動画もご覧ください!

ここに動画が表示されます

概要

Suzuduino UNO V1b

WCH社のRISC-Vマイコン、CH32V203シリーズの、CH32V203K8T6を採用した、Arduino UNO形状のプロトタイピングボードです。

CPU 144MHz 32bit RISC-V RV32IMAC
FlashROM 64KB
RAM 20KB
GPIO 22
Interface I2C, SPI, UART, CAN, etc
I/O voltage 3.3V

2023年9月時点では、CH32V203K8T6は秋月電子で120円で買えます。この値段にしてはとてもパワフルだと思います。もちろんRaspberry Pi PicoのRP2040もチップ単体では同価格帯ではありますが外付け部品がたくさん必要ですので、チップのみで動作できるCH32V203の安価っぷりは圧倒的です。

わたしのGitHubレポジトリ https://github.com/verylowfreq/suzuduino-uno-v1 に、基板の情報を置いています。部品表やサンプルプログラムもありますので、参考にしてください。

組み立て方

部品の例

ほとんどの部品はスルーホールですが、ICだけLQFP32です。0.5mmピッチですので、ちょっと難しいです。
Type-Cコネクタは変換基板が利用できます。ただし表面実装のパターンもありますので、腕に自信のある方は挑戦してみてください。ICと違って手作業での位置合わせは不要なので、コネクタのほうが楽という説もあります。ピンは小さいので、気をつけてしっかり温める必要はあります。

開発環境

WCH社ではMounRiver Studioを案内していますが、Arduino IDE移植も進められています。

arduino_core_ch32

ボードマネージャにURLを追加して、インストールするだけです。

書き込みは WCH-LinkEUSB経由 の2通りが利用できます。
WCH-LinkEを使う場合は、WCH-LinkUtilityで最初だけモード切替が必要です。
USB経由では、BOOT0ボタンを押しながらリセットすることで、USBダウンロードモードに遷移できます。WCHISPStudioで書き込めます。

Lチカするコード

PA5ピンにLEDが接続されています。わりと一般的なArduinoコードでできます。

追記:初出時、下記コードでdelay()ではなくdelayMicroseconds()を利用していて、目視で点滅が確認できませんでした。

// Build-in LED is connected to PA5 pin.
const int PIN_LED_BUILTIN = PA5;

void setup() {
  // Initialize the pin as OUTPUT
  pinMode(PIN_LED_BUILTIN, OUTPUT);
}

void loop() {
  // Make the LED emitting.
  digitalWrite(PIN_LED_BUILTIN, HIGH);
  delay(500);
  // Make the LED blanking.
  digitalWrite(PIN_LED_BUILTIN, LOW);
  delay(500);
}

基板設計のあれこれ

  • 自分が設計した基板が使われている様子を見るのはとってもうれしい!!
    • はじめての基板の頒布でしたが、とてもうれしい。
  • 販売していない "V1" 基板のエラッタ
    • Type-CコネクタとICのGNDの配線忘れがあった。かろうじてジャンパ線を飛ばして動作確認はできたが、なぜそうなったのか……
  • 初版 "V1a" 基板のエラッタ
    • "RESET"ボタンと"BOOT0"ボタンの位置が逆。これは単なる確認不足。
    • SMD Type-CのVBUSがポリスイッチを経由していない。回路図を間違えていた。
  • GPIOピン配置の感想
    • 秋月電子で取り扱っている CH32V203K8T6 32pinでは、Arduino UNOピンレイアウトにはギリギリ。BOOT0兼務のPB8ピンも引き出しているが、これは出力専用ピンなので、ちょっといまいち。どのみちピン数が足りないんだけど、どうすれば良かったのだろうか。
  • Arduino UNO基板の単位
    • インチ単位で設計されているので、とってもわかりずらい(メートル法の住民なので)。本家データシートだとUNO R3まではインチ・ミリの併記、UNO R4ではミリメートル単独表記なんだけど、インチベースで設計されていることには変わりなし。

まとめ

まだまだ発展途上のチップではありますが、とてもワクワクします!
実のところ、ARM系のSTM32チップのCPUコアをRISC-Vに置き換えただけのような構造なので、情報としてはSTM32界隈のものもけっこう参考になります。
ネット上の情報はまだ少ないですが、かといって手がかりがないわけではないので、挑戦するには手ごろだと思います。

verylowfreqのアイコン画像
"verylowfreq" あるいは 「三峰スズ」(VTuber 2023年2月より) です。趣味で電子工作や3Dプリンターを楽しんでいます!
  • verylowfreq さんが 2023/09/11 に 編集 をしました。 (メッセージ: 初版)
  • verylowfreq さんが 2023/09/11 に 編集 をしました。
  • verylowfreq さんが 2023/09/11 に 編集 をしました。
  • verylowfreq さんが 2023/09/11 に 編集 をしました。
  • Opening
    0 件の返信が折りたたまれています
  • verylowfreq さんが 2023/11/09 に 編集 をしました。 (メッセージ: サンプルコードを修正。)
  • Opening
    Kazekaoruのアイコン画像 Kazekaoru 2024/01/08

    突然のご連絡失礼いたします。
    PCBGOGOマーケティング部門の葉と申します。

    弊社は経験豊かな基板製造・実装会社でございます。
    いつも、貴サイトの記事を楽しく拝読させていただいております。

    今回、弊社についての記事、PR動画作成をお願いしたく、
    連絡させていただきました。

    ご興味がおありであれば、一度ご連絡をいただけますでしょうか。

    ご多用の折恐れ入りますが、ぜひご検討くださいますよう
    お願い申し上げます。
    メール:service10@pcbgogo.jp

    0 件の返信が折りたたまれています
ログインしてコメントを投稿する