Arduino UNO R4の代替品1(RA4M1 コアボード)

Arduino UNO R4の4回目です。
今回は、Arduino UNO R4を組込むための代替品を探しました。
3回目の記事は、以下をクリック。

UNO R4の互換品を探せ

今まで使っていたArduino UNO R3は「ATmega328P」を使っていて、DIPパッケージもあったので簡単にICの形で組み込むことが出来ました。
また、「Arduino Nano」という小型パッケージも販売していたので、簡単な回路ならこれを使えばOKでした。
Arduinoの主要な種類は、以下をクリック。

ところが、昨年登場したばかりのArduino UNO R4は、何かに組み込むには大きい基盤しか有りません。
これを小型化するには、「RA4M1」と周辺部品を買ってきて、自分で基盤を起こして半田づけする必要があります。

この記事を記載している時点で、「RA4M1」単品での販売価格は千円程度はするようなので、周辺回路と基盤の発注代だけでArdiono UNO R4 Minimaが買えそうです。

じゃ、ネットで探しましょう。
いつものAliexpressで「RA4M1」を検索してみます。
「RA4M1」を使った商品が2種類ありました。
1つは「開発ボード」という名称でArduino UNO R4の互換品のようです。この商品はサイズもUNO R4と同じなので組込みには使えません。

「コアボード」を発見

AliexpressのHPより

もう1つは、WeAct社の商品で「トラッキングコアボード」という名前です。組込めるぐらいの小型です。
縦34 mm、横42 mmなので、1.3インチOLEDモジュールの34 mm ✕ 36 mmと合わせても良い感じです。

この商品説明の部分に「Github」のアドレスが出ています。
WeActStudio.RA4M1_64Pin_CoreBoard」です。
(以下の情報は、上記HPからの引用です。)

「コアボード」の詳細

モジュールのサイズ

回路図を見ると、電源素子、LEDと水晶振動子も付いており、最低限必要な端子は外に出ているようです。

UNO R4 Minimaでは実装されていない水晶振動子(16 MHz)が付いています。
RTCのバックアップ・バッテリをつなぐ「VBATT」端子も「VB」という名で外に出ていますね。

電源用レギュレータの「ME6231」は最大電圧16Vで、UNO R4よりは低いですが使うには問題なさそうです。

「コアボード」を注文

注文しました。
最近のAliexpressは、ある程度の金額がまとまると遅くて不評だった普通郵便(船便?)ではなく、まとめて航空便で送ってきます。今回も注文から1週間弱で北海道まで無事、到着しました。

本体と端子のセットがチャック式の導電袋に入っていました。

本体に付いているMCUは、正規品のルネサス社の「RA4M1」の様です。
(基盤の作りは悪く有りませんが、USB端子の半田付けは補強したほうが良さそうです。)

とりあえず端子は半田付けせずに、そのまま機能確認します。
(不良品だったら、返納できるように。)

機能確認

まずは、USBケーブルを差し込んでパソコンとつなぎます。

「?」
何も起きません。
Windowsパソコンの「コントロールパネル」で見ても、USBの機器として認識していません。
虚しく青いLEDが点滅するだけです。
「不良品?」と一瞬思いましたが、踏みとまります。

USBケーブルを何本か交換してみましたが、変化がないことを確認後に、USB機器の確認に便利なソフトを立ち上げます。
「USB Device Tree Viewer」です。
現在はバージョンが3.8です。ダウンロードページはこちらをクリック

ソフトを立ち上げてみても何も変わらないので、配膳図を見てみます。
本体上部にスイッチが3つ付いているのが気になります。
「RES」はリセットですね。
「013」は「P013」につながっています。「USER Key」となっているので自由に使えるスイッチですね。
真ん中の「MD」はUNO R4で追加された「BOOT」端子と同じで、ブートローダを書き込む際にGNDに接続するものと同じです。

では、「MD」スイッチを押してみます。
何も起きません。
「MD」と「RES」を同時押しすると・・・(何度か試して、正確には「MD」と「RES」を同時に押して、先に「RES」を離して最後に「MD」を離します。)
USB接続先に見えました。
「Renesas RA USB Boot」です。

Arduino UNO R4のブートローダ書き込み

ルネサス社の「Flash Programmer」をダウンロードしてインストールします。
ブートローダはArduino IDEのインストール先にあります。(例 C:\Users\YourWindowsUserName\AppData\Local\Arduino15\packages\arduino\hardware\ renesas_uno\1.X\bootloaders\UNO_R4)にある「dfu_minima.hex」を使用)

このプログラマの使い方には、ちょっと手間取りました。
最初に、「ファイル」「新しいプロジェクトを作成」で新規プロジェクトを作ります。
(下図では2回目の立ち上げなので、「プロジェクトをロードします。」と書いてありますが、初回はありません。)

プロジェクトは、

「マイクロコントローラ(M):」の欄は「RA」を選びます。
「プロジェクト名(N):」は適当に(半角英数字で。)
「作成場所(F):」も適当に
「通信」の「ツール(T):」は「COM port」を選びます。

この状態で「USB Device Tree Viewer」で「Renesas RA USB Boot」が見えていれば「接続」でつながるはずです。
(ダメなら、再度、ボードの「MD」スイッチと「RES」スイッチを押します。)

無事接続されたら、「スタート」を押します。
成功すると「正常終了」が緑に表示されます。

Arduinoのブートローダが正常に書き込まれたら、ボードをリセットします。
「USB Device Tree Viewer」で確認します。

無事、「コアボード」がArduino UNO R4になりました。

「コアボード」のUNOでLチカ

UNOになった「コアボード」でArduino IDEでLチカを書き込みます。
「ファイル」「スケッチ例」「01 Basics」「Blink」を選んで書き込みます。
「?」何も起きません。

配線図をよく見てみます。
ボード上の青LEDは、UNO R4の13番ピンではなく「P012」に繋がっています。
これじゃLEDは点滅しませんね。

「P012」を制御する方法を探すのが面倒だったので、「Github」の「WeActStudio.RA4M1_64Pin_CoreBoard」にある「Blink」を読み込んで書き込みます。

Lチカ出来ました。
小型のUNO R4が出来ました。

「コアボード」のUNOで時計

「コアボード」には、16 MHzの水晶振動子が付いています。
前回、UNO R4で追加になったRTCの検証で時計を作りましたが、1日で8分30秒も進んでしまいました。
こんな時計は使えません。
そこで、このボードでも「時計」を作って検証してみます。

LCDの接続

「コアボード」とLCDをつなぎます。
まだ、前回のブレッドボードがそのまま残っているので、簡単に出来ます。

ボードへの配線をするためには、端子を半田付する必要があります。
こういう時に便利なのが、秋月電子の「スルーホール用テストワイヤ」(通販コード C-09830)です。
スルーホールに差し込んで試験が出来ます。

秋月電子のHPより

「スルーホール用テストワイヤ」を4本使って、前回使ったブレッドボードにつなぎます。
USBケーブルでパソコンと接続して、書き込みます。
無事、「時計」が動きました。
(写真は、撮影のために「コアボード」の裏側を絶縁して、両面テープで固定しています。)

時計機能の検証

RTCによる時間のズレを検証します。
ダイソーのモバイルバッテリにつないで1日放置します。
今回は水晶振動子がついているので大丈夫でしょう!

な、なんと

まる1日経過した結果

15分以上進んでいました。

Arduino UNO R4で追加されたRTC機能では、外付けの水晶振動子ではなく内蔵のクロックを使用しているようです。
何かしらのConfigビットをセットすると外部クロックを使用できると思うのですが、現在のところ使用情報がわかりません。

追加情報

「コアボード」でのブートローダの書き込み方がわかったので、本物のArduino UNO R4でのやり方を確認してみました。

Arduino UNO R4の「BOOT」端子を「GND」と接続して、USBケーブルでパソコンにつなぎます。

「USB Device Tree Viewer」で確認します。

心配したとおり、ケーブルを接続しただけでは「Arduino UNO R4」のままでした。
試しにリセット・スイッチを押してみます。

「コアボード」と同様に「Renesas RA USB Boot」が出ました。
この状態なら、ルネサス社の「Flash Programmer」でブートローダが書き込めますね。(怖いので実機では試していません。(ヘタレ))
以前の記事でブートローダの書き込みを記載したのですが、足りない部分があったので修正します。
(ブートローダの記事は、以下をクリック)

コメント