概要
Microは、Adafruitと共同で開発したATmega32U4(データシート)をベースにしたマイクロコントローラボードです。20本のデジタル入出力端子(うち7本はPWM出力、12本はアナログ入力)、16MHzの水晶振動子、micro USB接続端子、ICSPヘッダー、リセットボタンを備えています。マイコンのサポートに必要なものがすべて含まれており、マイクロUSBケーブルでコンピューターに接続するだけで使用できます。また、ブレッドボード上に簡単に設置できるように、フォームファクターを採用しています。
マイクロボードはArduino Leonardoに似ていますが、ATmega32U4がUSB通信機能を内蔵しているため、セカンダリープロセッサが不要です。これにより、Microボードは、接続されたコンピュータに対して、仮想の(CDC)シリアル/COMポートに加えて、マウスとキーボードとして表示されます。
関連ボード
以前のArduinoデザインからのアップグレードを検討している場合や、同様の機能を持つボードに興味がある場合は、Arduinoで以下のものを見つけることができます。
Arduino Leonardo
Arduino Micro (ヘッダーなし)
Arduino Nano(アルドゥイーノ ナノ
Arduino Nano 33 BLE (アルドゥイーノ ナノ 33 BLE)
Arduino Nano 33 BLE Sense(アルドゥイーノナノ33BLEセンス
Arduino Nano 33 IoT(アルドゥイーノ ナノ 33 アイオティー
はじめに
チュートリアルプラットフォームのProject Hubからプロジェクトのインスピレーションを得てください。
Getting started with the Arduino Micro」セクションでは、ボードの設定、Arduino Software(IDE)の使用、コーディングや電子工作を始めるために必要なすべての情報が掲載されています。
チュートリアル」のセクションでは、ライブラリや内蔵スケッチの例や、Arduinoのハードウェアとソフトウェアの知識を深めるためのその他の有用な情報を見つけることができます。
ヘルプが必要なら
Arduinoフォーラムでは、Arduino言語に関する質問や、Arduinoで独自のプロジェクトを作成する方法について確認できます。ボードに関するヘルプが必要な場合は、お問い合わせページに記載されている公式のArduinoユーザーサポートにご連絡ください。
技術スペック
MICROCONTROLLER | ATmega32U4 |
OPERATING VOLTAGE | 5V |
INPUT VOLTAGE (RECOMMENDED) | 7-12V |
INPUT VOLTAGE (LIMIT) | 6-20V |
DIGITAL I/O PINS | 20 |
PWM CHANNELS | 7 |
ANALOG INPUT CHANNELS | 12 |
DC CURRENT PER I/O PIN | 20 mA |
DC CURRENT FOR 3.3V PIN | 50 mA |
FLASH MEMORY | 32 KB (ATmega32U4) of which 4 KB used by bootloader |
SRAM | 2.5 KB (ATmega32U4) |
EEPROM | 1 KB (ATmega32U4) |
CLOCK SPEED | 16 MHz |
LED_BUILTIN | 13 |
LENGTH | 48 mm |
WIDTH | 18 mm |
WEIGHT | 13 g |
ドキュメント
OSH: 回路図
Arduino Microはオープンソースのハードウェアです。以下をクリックし公式サイトよりファイルをダウンロードし自分のボードを作ることができます。
▶電子回路[EAGLE FILE ZIP]
▶電子回路[PDF]
▶ボード図面[.DXF]
▶ATmega32U4 DataSheet
Pinout Diagram
▶pinout diagramのダウンロードはこちらをクリック (PDF)
プログラミング
Microボードのプログラミングは、Arduinoソフトウェア(IDE)を使って行います。ツール」→「ボード」メニューから「Arduino/Genuino Micro」を選択します。詳しくは、リファレンスやチュートリアルをご覧ください。
Microに搭載されているATmega32U4には、ブートローダーがあらかじめプログラムされており、外部のハードウェア・プログラマーを使用せずに、新しいコードをアップロードすることができます。これは、AVR109プロトコルを使用して通信します。
ブートローダーをバイパスして、Arduino ISPなどを使ってICSP(In-Circuit Serial Programming)ヘッダーからマイクロコントローラーをプログラムすることもできます。詳しくはこちらの説明をご覧ください。
注意事項
本製品には、コンピュータのUSBポートを短絡や過電流から保護するリセット可能なポリヒューズが搭載されています。ほとんどのコンピュータは独自の内部保護機能を備えていますが、ヒューズは追加の保護層となります。USBポートに500mA以上の電流が流れた場合、ショートや過負荷が解消されるまで、ヒューズが自動的に接続を遮断します。
電源
Microの電源は、マイクロUSB接続または外部電源から取ることができます。電源は自動的に選択されます。
外部電源(USB以外)は、DC電源またはバッテリーから供給されます。バッテリーまたはDC電源からのリード線は、GndおよびVinピンに接続できます。
本ボードは、6~20Vの外部電源で動作します。ただし、7V未満の場合は、5V端子の供給電圧が5V未満となり、基板が不安定になることがあります。また、12V以上を使用すると、電圧レギュレータが過熱して基板が破損することがあります。推奨範囲は7~12Vです。
電源ピンは以下の通りです。
- VI. 外部電源を使用しているときのMICROボードへの入力電圧です(USB接続やその他の調整された電源からの5ボルトとは異なります)。このピンから電圧を供給することができます。
- 5V. マイクロコントローラーやボード上の他の部品に電力を供給するために使用される安定化電源です。VINからオンボードのレギュレーターを経由して供給されるか、USBやその他の5V安定化電源から供給されます。
- 3V. オンボードのレギュレーターによって生成される3.3V電源です。最大消費電流は50mA。
- GND。グラウンド端子。
メモリ
ATmega32U4は32KB(うち4KBはブートローダに使用)を搭載しています。また、2.5KBのSRAMと1KBのEEPROM(EEPROMライブラリで読み書き可能)を搭載しています。
入力と出力
ArduinoのピンとATmega 32U4のポートのマッピング、「Arduino Microのピンマッピング」をご覧ください。
ピンモード()、デジタルライト()、デジタルリード()関数を使用して、マイクロの20本のデジタルI/Oピンをそれぞれ入力または出力として使用することができます。これらのピンは5ボルトで動作します。各ピンは、推奨動作条件として20mAを供給または受信することができ、20~50kΩの内部プルアップ抵抗(デフォルトでは非接続)を備えています。マイクロコントローラーの永久的な損傷を避けるためには、最大40mAを超えてはならない値です。
また、一部のピンには特殊な機能があります。
- シリアル:0(RX)および1(TX)。ATmega32U4のハードウェアシリアル機能を使用して、TTLシリアルデータを受信(RX)および送信(TX)するために使用します。マイクロでは、シリアルクラスはUSB(CDC)通信を参照することに注意してください。ピン0と1のTTLシリアルについては、シリアル1クラスを使用してください。
- TWI: 2 (SDA) と 3 (SCL). Wireライブラリを使用したTWI通信をサポートします。
外部インタラプト:0(RX)、1(TX)、2、3、7。これらのピンは、低い値、立ち上がりまたは立ち下がりのエッジ、または値の変化で割り込みをトリガするように設定できます。詳細はattachInterrupt()関数を参照してください。 - PWM: 3, 5, 6, 9, 10, 11, 13. analogWrite()関数で8ビットのPWM出力を提供します。
- SPI: ICSPヘッダー上にあります。これらのピンは、SPIライブラリを使用したSPI通信をサポートします。SPIピンは、UnoにあるようなデジタルI/Oピンには接続されておらず、ICSPコネクタと、MISO、MOSI、SCKとラベル付けされた近くのピンでのみ利用可能であることに注意してください。
- RX_LED/SS Leonardoに比べて追加されたピンです。USB通信時に送信状況を表示するRX_LEDに接続されていますが、SPI通信時にはスレーブセレクトピン(SS)としても使用できます。
- デジタル端子13にはLEDが内蔵されています。ピンがHIGHの時にはLEDが点灯し、ピンがLOWの時には消灯します。
- アナログ入力です。A0〜A5、A6〜A11(デジタル端子4、6、8、9、10、12に搭載)。マイクロには合計12のアナログ入力があり、A0からA5までのピンには直接ラベルが貼られており、A6からA11までの定数を使ってコードでアクセスできる他のものは、それぞれデジタルピン4、6、8、9、10、12で共有されています。これらはすべて、デジタルI/Oとしても使用できます。各アナログ入力は10ビットの分解能を持ちます(つまり1024通りの値)。デフォルトでは、アナログ入力はグランドから5ボルトまでを測定しますが、AREFピンとanalogReference()関数を使用して、範囲の上限を変更することができます。
基板上には他にもいくつかのピンがあります。
- AREF アナログ入力の基準電圧。analogReference()で使用します。
- リセットです。このラインをLOWにすると、マイクロコントローラーがリセットされます。通常、ボード上のリセットボタンをブロックするシールドにリセットボタンを追加するために使用します。
通信機能
32U4には、コンピュータやArduino/Genuinoファミリーの他のボード、あるいは他のマイクロコントローラと通信するためのさまざまな機能が搭載されています。32U4はUART TTL(5V)シリアル通信を提供しており、デジタルピン0(RX)と1(TX)で利用できます。ATmega32U4は、USBを介したシリアル(CDC)通信も可能で、コンピュータ上のソフトウェアに仮想COMポートとして表示されます。このチップは、標準的なUSB COMドライバーを使用して、フルスピードのUSB 2.0デバイスとしても動作します。Windowsでは、.infファイルが必要です。Arduinoソフトウェア(IDE)にはシリアルモニターが含まれており、簡単なテキストデータをボードとの間で送受信することができます。コンピュータとのUSB接続でデータが送信されているときは、ボードのRXおよびTX LEDが点滅します(ただし、ピン0および1のシリアル通信では点滅しません)。
SoftwareSerialライブラリを使えば、他のMicroのデジタルピンでのシリアル通信が可能です。
ATmega32U4は、I2C(TWI)やSPI通信もサポートしています。Arduinoソフトウェア(IDE)には、I2Cバスの使用を簡略化するWireライブラリが含まれています。詳細はドキュメントを参照してください。SPI通信については、SPIライブラリを使用します。
Microは、一般的なキーボードやマウスとして表示され、KeyboardクラスやMouseクラスを使ってこれらの入力デバイスを制御するようにプログラムすることができます。
物理的特性
Micro PCBの最大の長さと幅はそれぞれ4.8cmと1.77cmで、USBコネクタは前者の寸法よりも大きくなっています。ハンダレスブレッドボードへの設置が容易なレイアウトとなっています。
ソフトウェアによる自動リセットとブートローダの起動
アップロードの前に物理的にリセットボタンを押すのではなく、接続されたコンピュータ上で動作するソフトウェアによってリセットできるように設計されています。リセットは、マイクロの仮想(CDC)シリアル/COMポートが1200ボーで開かれ、その後閉じられたときに起動されます。これが起こると、プロセッサはリセットされ、コンピュータとのUSB接続が解除されます(つまり、仮想シリアル/COMポートが消えます)。プロセッサがリセットされた後、ブートローダが開始され、約8秒間アクティブになります。ブートローダは、Microのリセットボタンを押すことでも起動できます。ボードの最初の電源投入時には、ブートローダを起動するのではなく、ユーザースケッチがあれば、それに直接ジャンプすることに注意してください。
Microのリセット処理方法のため、特に他のボードでアップロードする前にリセットボタンを押す習慣がある場合は、アップロードする前にArduinoソフトウェア(IDE)にリセットを開始させるのが最善です。ソフトウェアがボードをリセットできない場合は、ボードのリセットボタンを押してブートローダを起動することができます。