文書の過去の版を表示しています。


7-3 Arduino Uno R4とR3の違い

Arduino UNO R4と、そのひとつ前のバージョンである、Arduino UNO R3には様々な違いがあり注意が必要です

  • ソフトウェアシリアルも通信速度の速いハードウェアシリアルですが、R4とR3では数が違います。
  • 非常にわかりづらいのですが、R4でもR3でも、UARTポートの位置は0番ソケットと1番ソケットです
  • R4は、USBポートがSerial、0番&1番ソケットはSerial1、という別のハードウェアシリアルポートになっています
  • UARTが増えることによって、PCでシリアルプリントしながら、もう1つ何らかのUART通信ができます。UART接続のセンサとか使うときに便利です。
  • R3は、USBポートと0番&1番ソケットのUARTがどちらもSerialで共用になっています。
    • プログラムの書き込み時に何かが繋いでいると、書き込みに失敗することもあります。
  • I/Oソケットで流せる電流容量が、R3では、20mAでしたが、R4では8mAとかなり少なくなっています。
  • 2024/6現在、世の中に出回っているサンプルはR3想定のものが多いです。
  • LEDやトランジスタを介して電流を増幅するタイプの回路は特に注意が必要です。最悪焼けます。
    • モータードライバや、FET、トランジスタなどをいれましょう
  • DCジャックやVinソケットへの入力電圧が異なります
  • R4では、6~24Vですが、R3では、7~12V とかなり小さくなります。
  • もしR4向けに電源を買って、R3にも使う場合は、電源の電圧をよく確認してから繋ぎましょう
  • 2024/6月現在、R4はまだ登場したばかりのマイコンです
  • R4向け対応が進んでいないライブラリも多くあります
  • R4でサンプルコードですらコンパイルが通らない場合は、ボードをR3に変えてみて、コンパイルが通るか試してみましょう
  • R3よりR4のほうが安いです!
  • プログラム書き込み用のUSBポートが、R3ではType-Bだったのが、R4ではType-Cになっています
  • R3に比べて、書き込み容量や、スペックなどが、大幅に向上しています!
  • R3のMCUは、8bitマイコンのATMega328Pですが、R4では32bitマイコンのRA4M1が採用されています
  • これにより、R3のint型が2byteなのに対し、R4のint型では4byteとなっています
  • R3からR4では、様々な部分のスペックが向上しています
  • 動作周波数、PWMやADコンバータの解像度、メモリ容量の向上、消費電流の低下…などなど。
  • R4はR3に比べてできることがかなり増えています。

HID機能の追加

  • Arduinoをキーボードやマウスといった、USB接続のコントローラとして扱うことができる機能です
  • HIDはHuman Interface Deviceの略です
  • Keyboard.hをインクルードすれば使えるのでお手軽に試せます

SWD/JTAGデバッグが可能に

  • 高度な開発になってくると、1行ずつ挙動を見たり、プログラムの実行を止める箇所を作ったりして、どこでトラブルが起きているのかを調べる必要が出てきます。
  • これにはデバッガというものをつないで行うのですが、R4にはそのデバッガをつなぐためのピンが生えているのです。
  • 正直めちゃくちゃ待ってた機能です

DACの追加

  • R4のA0ソケットには、デジタルをアナログに変換する機能が入っています
  • DACはDigital-to-analog Converterの略です
  • それ以外のピンや、R3では、PWMで疑似的にアナログ電圧が出ています
  • 精密なアナログ出力ができるようになるので、サイン波のような滑らかで連続性のある波形を出せたり、音楽を鳴らせるようになったりします
  • こちらのサイトのサンプルを見てみると面白いと思います

  https://garretlab.web.fc2.com/arduino.cc/docs/tutorials/uno-r4-wifi/dac/
  https://docs.sunfounder.com/projects/elite-explorer-kit/ja/latest/new_feature_projects/07_dac.html