아두이노는 주변 기기들을 간편하게 제어할 수 있는 다양한 라이브러리가 존재한다. arduino.cc 에서는 이들 라이브러리를 표준 라이브러리와 그외의 것들로 구분하는데 표준 라이브러리는 아두이노 IDE에 포함된 것으로 다음과 같은 것들이 있다.
[표 1] 아두이노 표준 라이브러리
라이브러리명 | 기능 | 비고 |
EEPROM | EEPROM에 읽고 쓰는 기능을 하는 함수들. |
|
Ethernet | Arduino Ethernet Shield를 이용한 인터넷 접속. |
|
Firmata | 시리얼 프로토콜을 이용하여 PC와 연결하여 데이터를 주고 받기. |
|
GSM | GSM shield를 이용하여 GSM/GRPS 네트워크에 접속하기. |
|
LiquidCrystal | LCD 제어. |
|
SD | SD카드에 읽고 쓰기. |
|
Servo | 서보모터 제어. |
|
SPI | SPI(Serial Peripheral Interface) 통신. |
|
SoftwareSerial | 시리얼통신을 소프트웨어적으로 구현한 것. |
|
Stepper | 스테핑모터 구동. |
|
TFT | Arduino TFT screen에 문자, 이미지, 도형 표시하기. |
|
WiFi | Arduino WiFi shield를 이용하여 인터넷 접속하기. |
|
Wire | TWI (I2C) 통신. |
|
[표 2] 특수 라이브러리
라이브러리명 | 기능 | 비고 |
Audio | SD카드에 저장된 오디오파일 재싱. | Due |
Scheduler | 다중 non-blocking 태스크 관리. | |
USBHost | 마우스와 키보드 같은 USB주변장치와의 통신. | |
Esplora | Esplora 보드의 센서와 작동기를 쉽게 접근하도록 함. | Esplora |
Keyboard | 연결된 컴퓨터에 키보드 입력 전송. | Leonardo, Micro,Due,Esplora |
Mouse | 연결된 컴퓨터의 마우스 커서 제어. |
[표 3] 기타 라이브러리 (사용하기 위해서는 설치 과정이 필요함)
라이브러리명 | 기능 | 비고 |
Messenger | PC로부터의 텍스트기반 메시지 처리. | 통신 |
NewSoftwareSerial | SoftwareSerial 라이브러리의 개선판 | |
OneWire | 1-wire protocol을 사용하는 장치 제어(Dallas Semiconductor) | |
PS2Keyboard | PS2 키보드로부터 문자 읽어들이기. | |
Simple Message System | 아두이노와 PC간 메시지 보내기. | |
SSerial2Mobile | 휴대폰을 이용하여 문자메세지나 이메일 보내기. | |
Webduino | 확장가능한 웹서버 라이브러리(이더넷쉴드) | |
X10 | AC전원선으로 x10신호 보내기. | |
XBee | XBee와의 통신. | |
SerialControl | 시리얼 통신으로 다른 아두이노 제어하기 |
Capacitive Sensing | 두 개 혹은 그 이상의 핀을 정전식 터치센서로 사용. | 센싱 |
Debounce | (버튼으로부터) 바운싱을 제거하기. |
GFX | 기반 클래스(표준 그래픽 루틴) | 디스플레이/LED |
GLCD | KS0108 칩 기반의 그래픽 LCD 라이브러리 | |
Improved LCD library | LCD라이브러리의 오류 수정 버전 | |
LedControl | LED행렬/7세그먼트 제어 (MAX7221/MAX7219) | |
LedControl | 여러개의 LED를 Maxim칩으로 제어하는 다른 라이브러리 | |
LedDisplay | HCMS-20xx 스크롤링 LED디스틀레이 제어. | |
Matrix | 기본적인 LED매트릭스를 제어하는 라이브러리. | |
PCD8544 | Nokia55100 LCD 제어기(Adafruit ind.) | |
Sprite | LED매트릭스의 애니메이션 사용을 위한 기반 클래스 | |
ST7735 | 1.8“ TFT 128x160 스크린 제어 라이브러리(adafruit) |
FFT | 오디오 혹은 다른 아날로그 신호의 주파수 해석. | audio |
Tone | 오디오 주파수의 구형파 생성. |
TLC5940 | 16채널 12비트 PWM 제어기 | PWM |
DateTime | 현재 날짜와 시간을 추적. | 타이밍 |
Metro | 정해진 시간 간격으로 수행. | |
MsTimer2 | 타이머2를 써서 매 N밀리초마다 정해진 일을 수행 |
PString | 버퍼에 프린팅을 하기위한 가벼운 클래스 | 유틸 |
Streaming | 프린트문을 간략히 하기위한 메쏘드 |
여기에 소개된 리스트 외에도 사용자들이 작성한 수 많은 라이브러리들이 공유되고 있다. 따라서 본인이 필요한 기능을 구현하기 위해서 직접 작성하기 전에 그 기능을 지원하는 라이브러리가 있는지 검색해 보는 과정을 거쳐야 한다.
'하드웨어 > 아두이노' 카테고리의 다른 글
아두이노의 LiquidCrystal 라이브러리 개요 (0) | 2015.05.29 |
---|---|
아두이노 servo 라이브러리로 서보 모터 제어하기 (0) | 2015.05.29 |
아두이노 아날로그 출력(PWM) 주파수 바꾸기 (1) | 2015.05.29 |
아두이노 모터 쉴드 R3 소개 및 기능 (0) | 2015.05.28 |
아두이노를 이용한 소형 DC모터 제어 (1) | 2015.05.28 |