Quantcast
Channel: @74thの制作ログ
Viewing all articles
Browse latest Browse all 70

CH32V002、CH32V006の開発ボードを作った

$
0
0

ch32v-board.jpg

tl;dr

  • CH32V002、006はCH32V003に次ぐ安価なMCUだよ
  • 2Vでも動作するため、ボタン電池でも動作するよ
  • 100nFキャパシタ1個付ければ動作するよ
  • いつも通り開発ボードを作ったよ

CH32V002、CH32V006とは

CH32シリーズは中国のWCHが販売するRISC-V MCUです。

その中でもCH32V003は10セントマイコンと、とても安価に販売されていました。 50個で、1,000円程度で購入でき、気軽に組み込めることから私も利用していました。

この次期モデルとして、CH32V002、CH32V006が発表され、販売が開始されました。

リファラルはCH32V003とほぼ同じですが、RAMやFlashのサイズがアップデートされています。

Core Code Flash RAM GPIO Timer ADC SPI I2C UART
CH32V003 RV32EC 16k 2k 18 1+1 8 1 1 1
CH32V002 RV32EmC 16k 4k 18 1+1 8+3 1 1 1
CH32V006 RV32EmC 64k 8k 31 1+1 8+3 1 1 2

CH32V002は、RAMが2倍、ADCが3ch増えています。 CH32V006は、上位機種となっていて、Flashが4倍、RAMが4倍、GPIOが増えています。 価格はほとんどCH32V003と変わらないので、CH32V003の後継機種として使うことができるのが期待されます。

また、CoreはRV32EmCに変更されていて、乗算が追加されました。 除算は変わらずありません。

ボタン電池でも動作する

さらに動作電圧が変わり、2Vから動作するようになりました。

電源電圧
CH32V003 3.3~5V
CH32V002 2~5V
CH32V006 2~5V

CH32V002で2Vで動作することを確認しました。

実際に、CH32V002にボタン電池を付けて、ケーブルチェッカを実装したところ、ちゃんと動作しました。

CH32V003でもなんとかボタン電池でも動作していましたが、CH32V002/006は確実に動作するため、活用先が広がります。

なお、省電力機能であるスタンバイモードを使ってみたところ、38μA程度の消費電流でした。

CH32V002、CH32V006の最小の回路

CH32V002、V006は、V003と同じく、電源に100nFのキャパシタを付けるだけで動作します。 最小回路は以下のようになります。

CH32V002の最小回路

開発ボードを作った

CH32V003では、ProMicroサイズの開発ボードを作っていました。 CH32V002とCH32V006でも作ることにしました。

CH32V002には、CH32V003 ProMicroを作ったCH32V003F4P6と同じピン配置であるCH32V002F4P6を使いました。 そのため、CH32V003の開発ボードのPCBがそのまま使うことができました。

CH32V002 ProMicro Like

CH32V006には、最大の数のピンを持つCH32V006K8U6を使いました。 この全てのピンを引き出した開発ボードを作りました。

CH32V006 Full Dev Board

この開発ボードには、CH32V003と同じく以下のような機能を持たせています。

  • USB Type-Cコネクタ
  • リセットボタン
  • UARTを追加したSWD10ピンポート
  • 電源に、3.3Vレギュレータと、USB 5Vを選択できるジャンパ

SWD10ピンポートは、私の作っているWCH-LinkE クローンを簡単に接続できるため、便利です。 こちらで販売しております。

CH32V006 Full Dev Boardでは、ProMicro Likeから、SWIOのスルーホールを追加しました。

CH32V006 Full Dev BoardのKiCADファイルは以下のリポジトリにあります。

開発にはひとまず MounRiverStudio2 を使う

CH32V002、006は、WCH公式のSDKを使う場合、MounRiverStudio2が使えます。

MounRiverStudio2
http://www.mounriver.com/download

Lチカや、スタンバイモードの動作の確認にはこちらを使いました。

動きを確認したところ、ちゃんとLチカまで動作することが確認できました。

CH32Vには、SDI-PrintというSWIOポート経由でデバッグプリントができる機能があります。 CH32V006では動作しましたが、CH32V002では確認できませんでした。

現状、ch32funも対応していますが、RV32EmCに対応したオープンソースがないようで、まだ活用はできないようです。

Arduino Core CH32も、CH32VM00Xとして対応しているようですが、私の方では確認はできていません。

作った開発ボードはBoothにて販売中

今回作成した開発ボードは、ひとまず動く開発ボードが欲しい方向けに、Boothにて完成品をお裾分け品として販売しております。


Viewing all articles
Browse latest Browse all 70

Trending Articles