아두이노 통합 개발 환경에서 라이브러리 예. 위 부분은 개발도구 설치 시 초기설정된 것이고, DS1307RTC부터 아래는 'Add .ZIP Library'을 통해 외부의 공개 소스 라이브러리를 추가한 예이다.
**아두이노 라이브러리**는 오픈소스를 기반으로 한 아두이노 개발 환경의 한 부분으로, AVR Libs을 기반으로 한 C/C++의 표준함수 일부분과 AVR의 내장 모듈 및 외장의 각종 부가 장치를 제어하는 함수들로 구성되어 있다.

임베디드 시스템을 구성할 때, 마이크로컨트롤러 내부의 모듈 뿐만 아니라 다양한 외부의 부가 모듈 부품이 결합된다. 따라서 AVR 내부 모듈 함수와 외부의 부품을 제어하는 함수들이 섞여있다.
아두이노 통합 환경(IDE)을 설치하면 내장 된 몇가지 함수들이 존재한다. 그리고 개발도구에 자체 내장되지 않는 많은 라이브러리 들이 오픈소스 형태로 인터넷 상에 존재한다. 파일을 내려 받아 개발 도구에 등록하면 쉽게 이용할 수 있다.

외부의 공개소스로부터 받은 경우, 초기의 개발도구(버전 1.0.x)에서는 압축이 풀린 상태의 폴더를 기준으로 등록이 가능 했으나, 현재의 버전(버전 1.6.x 등)은 ZIP 파일 자체로 등록이 가능하다. 공개 소스의 예제가 있는 경우, 메뉴 '예제' 역시 동시에 사용할 수 있다.

아두이노 표준 라이브러리
-------------

아두이노 통합 개발 환경을 설치하면 자동으로 설치되는 라이브러리 함수들이다:

* EEPROM

AVR 내부에 장착된 EEPROM에 데이터를 쓰거나 읽는다. 전원 인가없이도 데이터가 유지된다.
* Ethernet

아두이노 이더넷 쉴드(Arduino Ethernet Shield)을 사용하여 인터넷에 접속한다.
* Firmata

아두이노의 시리얼 통신을 통해, 다른 컴퓨터의 응용 프로그램과의 통신을 지원한다.
* GSM

GSM 쉴드를 사용하여 GSM/GRPS 통신을 지원한다.
* LiquidCrystal

문자 LCD을 위한 라이브러리이다.
* SD

SD 카드에 데이터를 읽거나 쓴다.
* Servo

서보 모터를 제어한다.
* SPI

SPI(Serial Peripheral Interface)을 사용한 통신을 지원한다.
* SoftwareSerial

AVR의 시리얼 통신 하드웨어 모듈을 사용하지 않고, 디지털 포트를 이용하여 소프트웨어 방법으로 시리얼을 지원한다. 아두이노의 버전1.0과 이후의 버전에서는 Mikal Hart에 의해 NewSoftSerial 라이브러리가 개선하여 별도로 존재한다.
* Stepper

스텝핑 모터를 제어한다.
* TFT

TFT 모니터에 글자, 이미지, 특정 모양을 그린다.
* WiFi

아두이노 와이파이 쉴드를 사용하여 인터넷에 연결한다.
* Wire

TWI/I2C(Two Wire Interface)을 사용한 데이터 전송 및 수신을 처리한다. 센서 등의 소자와 연결할 때 많이 사용한다.

  

### Due에서 사용하는 라이브러리

* Audio
* Scheduler

### Due와 Zero에서 사용하는 라이브러리

* USBHost

### Esplora에서 사용하는 라이브러리

* Esplora

### 아두이노 Robot 라이브러리

* Robot

### 아두이노 Yun 브릿지 라이브러리

* Bridge Library

### USB 라이브러리 (Leonardo, Micro, Due, Zero 그리고 Esplora)

* Keyboard Archived 2015년 7월 17일 - 웨이백 머신
* Mouse Archived 2015년 7월 17일 - 웨이백 머신

### 안드로이드 개발

* USB Host shield
* ProcessingArduinoAdkUsb[깨진 링크(과거 내용 찾기)]

부가 라이브러리(인터넷 공개 소스)
-------------------

현재 사용하는 기능 부품의 핵심 칩을 제어하기 위한 라이브러리 들이 많이 존재한다. 그리고 기타 여러 가지 기능적 함수들도 존재하므로 검색을 통해 찾아 사용하면 된다. 사이트 GitHub가 대표적으로 여러 가지 프로젝트가 존재한다.

### 통신 (네트워킹, 프로토콜)

* Messenger

다른 컴퓨터와 문자 기반 메시지 처리를 지원한다.
* NewSoftSerial Archived 2015년 4월 1일 - 웨이백 머신

SoftwareSerial 라이브러리 개선판이다.
* OneWire

1-Wire 통신 프로토콜을 지원한다.
* PS2Keyboard

PS2 키보드롤부터 문자를 읽는다.
* Simple Message System

아두이노와 컴퓨터 사이에 간단한 메시지를 주고 받는다.
* SSerial2Mobile

휴대폰을 사용하여 문자 메시지나 이메일을 보낸다. (소프트웨어 시리얼 상에 AT 커멘트를 사용)
* Webduino

확장 웹 서버 라이브러리이다. (아두이노 이더넷 쉴드 이용)
* X10

전기 AC 전원선을 이용하여 X10 신호를 보낸다.
* XBee

XBees 통신을 지원한다. (API 모드)
* SerialControl

다른 아두이노와 시리얼 통신을 통해 원격 제어를 지원한다.
### 센서

* Capacitive Sensing

2개 이상의 핀의 센서를 사용한다. ADC 모듈이 하나이기 때문에 적절히 분배하여 동작하도록 조절한다.
* Debounce

키 버튼 등의 디지털 입력에서 바운싱을 제거하여 입력한다.
### 표시장치 및 LED

* GFX

표준 그래픽 루틴을 제공하는 기본 클래스 라이브러리이다. (Adafruit Industries에 의해)
* GLCD

KS0108을 기반으로 하는 LCD의 그래픽 처리 루틴을 지원한다.
* LedControl

MAX7221나 MAX7219을 사용한 7-세그먼트 LED 드라이버를 제어한다.
* LedControl

맥심 칩을 사용한 매트릭스 LED을 제어한다. Matrix 라이브러 수정본이다.
* LedDisplay

HCMS-29xx 스코롤 LED를 제어한다.
* Matrix

기초적인 매트릭스 LED을 제어한다.
* PCD8544

Nokia 55100 기반 LCD 컨트롤러를 제어한다. (Adafruit Industries에 의해)
* Sprite

매트릭스 LED의 기초적인 요정(sprite) 이미지를 처리한다.
* Adafruit ST7735

1.8", 128x160 TFT LCD 제어한다. (Adafruit Industries에 의해)
#### 오디오 신호 처리

* FFT

오디오나 다른 아날로그 신호의 주파수 분석 함수이다.
* Tone

오디오 발생을 위한 방형파 신호를 만든다. 특정 핀에 출력된다.
#### 모터와 PWM

* TLC5940

16채널, 12비트 PWM 제어 출력.
#### 시간 제어

* DateTime

소프트웨어에서 현재 날짜와 시간의 트랙을 유지하기 위한 라이브러리이다.
* Metro

주기적 시간 처리를 위한 라이브러리이다.
* MsTimer2

매 N 미리초(milliseconds) 마다 인터럽트를 발생한다. 타이머 2을 사용한다.
#### 유틸리티

* PString Archived 2015년 4월 1일 - 웨이백 머신

스트링 버퍼를 출력하는 가벼운 클래스이다.
* Streaming

간단한 출력을 스트림 처리로 대처할 수 있다.