Arduino Zero / Zero Pro / M0 Pro / M0 に関する記事です。
Arduino Zero / Zero Pro / M0 Pro / M0 の MCU は Microchip ATSAMD21G18A です。綴りが似ていますが Aldnoah Zero ではありません。
See Also:
Arduino の分裂騒動の最中に発売されたボードです。
つまり、Arduino / Genuino Zero ≒ Arduino Zero Pro / M0 Pro で、M0 Pro - デバッグ機能 = M0 です。
製品名 | 発売元 | 地域 | デバッグ機能 |
Arduino Zero | Ardiono LLC (arduino.cc) |
アメリカ | 〇 |
Genuino Zero | アメリカ以外 | ||
Arduino Zero Pro | Ardiono SRL (arduino.org) |
すべて | |
Arduino M0 Pro | |||
Arduino M0 | × |
※ 2020/01 現在、すべての M0 系ボードはディスコンとなっています。
See Also:
国内だとスイッチサイエンスで購入できます。
M0 の互換機 (という事にしておきます) は Amazon 等で買えます。
M0 をコンパクトにした互換機もあります。
イメージ的には Arduino DUE を UNO サイズにしたような感じです。DUE 同様、二つの USB ポートがあります。
画像上側がネイティブ USB ポートで、画像下側がプログラミングポートです。
UNO と異なり、SPI 用のピンは D13~D10 ではありません。
ICSP 端子 (ICSP 機能はないため SPI 端子となっている) を使えば、他のボードとピン互換にできます。
UNO | DUE | LEONARDO | MEGA 2560 | |
SCK | D13 / ICSP 3 | ICSP 3 | ICSP 3 | D52 / ICSP 3 |
MISO | D12 / ICSP 1 | ICSP 1 | ICSP 1 | D50 / ICSP 1 |
MOSI | D11 / ICSP 4 | ICSP 4 | ICSP 4 | D51 / ICSP 4 |
SS | D10 | D10 | (TX LED) | D53 |
正直 SPI 端子が使いにくいのでピンソケットを向かい合わせにハンダ付けした メス<->メスコネクタを作っておいた方がいいと思います (参考: Raspberry Pi 用のメス<->メスコネクタ)。
UNO R3 と同じ場所に I2C 用のピンがあります。
デバッグ用の JTAG コネクタです。M0 にはありません。
画像左下が 1 ピンです。
Pin | 名称 | 名称 | Pin |
1 | 3.3V | TMS | 2 |
3 | GND | TCK | 4 |
5 | GND | TDO | 6 |
7 | (NC) | TDIK | 8 |
9 | GND | RESET | 10 |
デバッグ用の SWD コネクタです。
画像左上が 1 ピンです。
Pin | 名称 | Pin | 名称 |
1 | +3V3 | 2 | SWDIO |
3 | GND | 4 | SWCLK |
5 | GND | 6 | (NC) |
7 | (NC) | 8 | (NC) |
9 | GND | 10 | TARGET_RESET |
Zero と M0 Pro は完全に同じではありません。例えば D2 と D4 へのピンの割り当てが逆になっています。
ピン | Zero | M0 系 |
D2 | PA08_TCC0-W0 | PA14_TCC0-W4 |
D4 | PA14_TCC0-W4 | PA08_TCC0-W0 |
また、M0 系は IOREF の左隣のピンも結線されているようです。
See Also:
Arduino Zero / M0 を Arduino IDE から使うには [ツール | ボード | ボードマネージャ] で Arduino SAMD Boards (32-bits ARM Cortex-M0+) を探してインストールします。
ボードは適合するものを選択します。
Arduino Zero / M0 は LEONARDO (or Atmega32U4 搭載品) 同様に、HID デバイスになる事ができます。やり方は LEONARDO と全く同じです。
HID デバイスになれるのはネイティブ USB ポート の方なので、USB ケーブルを抜き差しするか、2 本接続して対応してください。
See Also:
Arduino Zero / M0 は USB ホスト機能も持っています。USB ホスト機能が使えるのはネイティブ USB ポート の方です。
See Also:
Arduino Zero / M0 は A0 が DAC 用のピンとなっています。
定数 | ピン |
DAC | A0 |
See Also:
たとえば、次のようなスケッチがあったとします。普通の Arduino ではシリアルモニタを開けば、"Hello,world." が繰り返し表示されます。
|
Arduino Zero / M0 ではネイティブ USB ポートに接続していると表示されません。ネイティブ USB ポートでシリアルモニタに表示させるには、Serial ではなく SerialUSB を使います。
|
M0 互換機も SerialUSB を使います。Serial はボード右上のピンから引き出せるので、USB<->シリアル変換モジュールを接続すれば通信できます。D0/D1 は Serial1 です。
右上のスルーホールにはRobotDyn のボードのようにピンソケットを立てておくと便利です。
スケッチをアップロードできなくなってしまったら、リセットボタンをダブルクリックすればブートローダーモードに入る事ができます。
ブートローダーモードに入ると、さっきまでと違うシリアルポートが出現するのでそれを選び、Blink のような適当なスケッチをアップロードしてください。
See Also:
ここにある情報が役に立って、「調べる手間が省けたからオマイに飯でもおごってやるよ」 というハートウォーミングな方がいらっしゃいましたら、下のボタンからどうぞ。