1.  아두이노 마이크로(Micro)

 

아두이노 프로 

아두이노 마이크로 (Arduino micro) 기종은 아두이노 레오나르도(Leonardo) 기종을 소형화한 모델로서 ATmega32u4라는 메인 칩을 사용하고 있다는 것이다. 기능상 가장 큰 차이는 USB통신기능이 내장되어 있어 USB마우스나 USB키보드로도 인식될 수도 있다는 것이다.

 

즉, 아두이노 마이크로를 USB키보드처럼 작동되게 하여 PC에 연결되면 자동으로 암호를 입력하게 한다든지, 특정 명령어 입력이 자동으로 키인되게 할 수 있고, USB 마우스의 동작을 아두이노 프로마이크로를 시뮬레이션하는 기능을 개발할 수 도 있다.

 

2.  아두이노 프로 마이크로( Pro Micro)

아두이노사의 오리지널 아두이노 마이크로와 동일한 프로세서를 사용하고 비슷한 성능을 가지지만 조금 다른 모양으로 미국 Sparkfun사에서 나온 기동이 아두이노 프로 마이크로이다.  

 

아두이노 프로 마이크로 

이 아두이노 프로 마이크로 동일한 형태로 중국산 클론이 제작 판매되고 있고, 통상 주변에서 쉽게 구할 수 있고 많이 사용하는 것이 아래와 같은 아두이노 프로 마이크로 클론 제품이다.    

 

아두이노 프로 마이크로 클론

 

3.  아두이노 프로 마이크로오 유사한 아두이노 기종 

아두이노 나노
아두이노 프로미니 

아두이노 우노를 소형화 한것이 아두이노 나노이고 이것을 조금 더 간략화 한것이 프로미니이므로 이 기종들은 아두이노 우노에서 파생된 것이지만 아두이노 마이크로는 아두이노 레오나르도에서 파생된 것으로 ATmega32u4라는 메인 칩을 사용하고 있다는 것이다.

 

 

4.  아두이노 마이크로 사양 ( 나노와의 비교) 

  Arduino Micro  Nano
Processor    ATmega32u4 processor   ATmega328 processor 
Voltage provided to processor  5 V.  5 V.
EEPROM 1 KB. 0.51 KB.
Flash size 32 KB. 32 KB.
SRAM  2.5 KB. 1 KB.
Total digital input/output pins  20. 22.
Number of analog inputs 12.  8.
Board size length (in mm)  48  X 18 mm. 45  x 18 mm.
Total PWM enabled pins  7.  6.
Clock (MHz) 16 MHz. 16 MHz.

 

5.  아두이노 프로마이크로 PIN LAYOUT

 

             

6. 사용방법

아두이노 IDE에서 툴 -> 보드에서 "Arduino/Genuino Micro" 를 지정하고 사용하면 된다  

 

 

7. 예제 프로그램

 

아두이노 프로 마이크로에서 USB 키보드 기능을 제어하는 샘플 프로그램을 Test해 보기 위해서 예제 -> USB -> KeyBoard -> KeyboardSerial 을 선택하여 로드.

 

 

 

/*
 Keyboard test

 For the Arduino Leonardo, Micro or Due

 Reads a byte from the serial port, sends a keystroke back.
 The sent keystroke is one higher than what's received, e.g.
 if you send a, you get b, send A you get B, and so forth.

 The circuit:
 * none

 created 21 Oct 2011
 modified 27 Mar 2012
 by Tom Igoe

 This example code is in the public domain.

 http://www.arduino.cc/en/Tutorial/KeyboardSerial
 */

#include "Keyboard.h"

void setup() {
  // open the serial port:
  Serial.begin(9600);
  // initialize control over the keyboard:
  Keyboard.begin();
}

void loop() {
  // check for incoming serial data:
  if (Serial.available() > 0) {
    // read incoming serial data:
    char inChar = Serial.read();
    // Type the next ASCII value from what you received:
    Keyboard.write(inChar + 1);
  }
}

 

35 Line에서 시리얼로 입력 받은 문자를 37 Line에서 다음 코드 문자로 변환하여 키보드로 출력해 준다. 즉 , 시리얼 모니터를 띄워 놓고 숫자를 입력하면 다음 숫자로 변환되어 현위치(키보드 커서가 있는)에 표시된다.   

+ Recent posts