Elenco delle librerie Arduino.
Sai già che la community di Arduino è molto ampia e cresce ogni giorno. Durante la sua esistenza diede vita a un numero enorme di biblioteche. Fonti:
avr-libs
Il compilatore Arduino IDE include un set di librerie standard per microcontrollori AVR (il cosiddetto toolchain - un set di strumenti), puoi semplicemente collegarli e utilizzare le loro capacità. Un elenco completo e la documentazione per tutte le librerie possono essere trovati qui. Qui elencherò i più utili e interessanti (il nome sarà un link alla documentazione):
- math.h è una libreria con un sacco di funzioni matematiche. Connesso per impostazione predefinita.
- time.h è una libreria per lavorare con il tempo. Account, conversione, fusi orari e altro ancora.
- avr/eeprom.h è una libreria nativa per lavorare con EEPROM. Descrizione dettagliata qui.
- avr/power.h e una libreria di gestione del consumo energetico MCU: divisore di frequenza di sistema e periferiche on/off.
- avr/sleep.h e una
libreria per il controllo del consumo energetico del MCU.
- util/delay.h e una libreria con ritardi basati sui cicli del processore (funziona senza timer 0).
Tempo, timer.
- RTCTimer timer per lavorare in tandem con il modulo RTC.
- Time contatempo per Arduino, conta ore-minuti-mesi e tutto il resto. Descrizione.
- TimeLord è una libreria che permette di scoprire l'ora di alba/tramonto del Sole e della Luna, le fasi lunari, l'ora siderale e così via, in base alla posizione geografica.
- TimerOne è una libreria per un comodo controllo manuale del Timer 1 (interrupt, PWM, ecc.).
- MsTimer2 è una libreria per un comodo controllo manuale di Timer 2. Esiste una versione di FlexiTimer2 leggermente migliore.
- TimerThree libreria per un comodo controllo manuale di Timer 3.
Comunicazione, interfacce.
- SoftwareSerial e una libreria standard per la creazione di TTL Serial su due pin qualsiasi, consente di creare una porta aggiuntiva per comunicare con Bluetooth/GPS/GSM e altri moduli con comunicazione Seriale.
- OneWire è una libreria per comunicare tramite il protocollo one wire, ad esempio con i sensori di temperatura DS18b20. Arduino può essere uno "slave" per la comunicazione.
- EasyTransfer e una libreria per comunicare due Arduino tramite una porta seriale.
- TVout è una libreria per la visualizzazione di grafica su uno schermo TV tramite l'ingresso AV. Descrizione.
- MIDI_library e una libreria per lavorare con dispositivi musicali tramite il protocollo MIDI (via seriale, qualsiasi Arduino è adatto).
- X10 è una libreria per comunicare utilizzando il protocollo X10 sulla linea di alimentazione a 220V.
Per alcuni moduli.
- Stepper e una libreria
per il controllo di motori passo-passo.
- AccelStepper è un sostituto più interessante e di alta qualità per la libreria Stepper standard per il controllo dei motori passo-passo. Puoi scaricarlo dalla pagina dello sviluppatore, oppure ecco un link diretto all'archivio.
- ServoSmooth
è un'aggiunta alla libreria Servo standard che consente di controllare un servo con velocità massima e impostazioni di accelerazione/decelerazione (come in AccelStepper, solo per i servi).
- CapacitiveSensor e una libreria per la creazione di pulsanti a sfioramento (da un paio di componenti sciolti). Descrizione.
- AdaEncoder e una libreria per lavorare con gli encoder.
- RTCLib è una libreria leggera che supporta la maggior parte dei moduli RTC.
- OV7670 libreria per lavorare con la fotocamera su OV7670.
- IRremote è una libreria di base per lavorare con telecomandi ed emettitori IR.
- IRLremote è la libreria più chiara per i telecomandi IR, funziona tramite interrupt. Telecomando funzionante al 100%.
- TinyGPS e una libreria per lavorare con i moduli GPS.
- LiquidCrystal-I2C è una libreria per display LCD con controller I2C. Sviluppatore - fdebrabander.
- LiquidCrystal-I2C è una libreria per display LCD con controller I2C. Sviluppatore - johnrickman.
- u8glib libreria per lavorare con display LCD e OLED monocromatici.
- ucglib libreria per lavorare con display LCD e OLED a colori.
- NeoPixelBus è una libreria per lavorare con una striscia LED indirizzabile, adattata per esp8266 (NodeMCU, Wemos, ecc.).
- microLED libreria leggera e semplice per lavorare con una striscia LED indirizzabile.
- rc-switch e una libreria per lavorare con moduli radio a 433 MHz e vari protocolli di comunicazione.
Lavorare con la memoria.
- EEPROM è una libreria standard per lavorare con EEPROM.
- EEPROMex è una libreria più conveniente per lavorare con la memoria EEPROM. Descrizione.
- EEWrap - la libreria permette di utilizzare la EEPROM come memoria ad accesso casuale (SRAM), ovvero per memorizzare variabili.
- Flash la libreria permette di archiviare/leggere comodamente qualsiasi dato nella memoria Flash del microcontrollore (array, righe con testo...).
- PGMWrap è un'altra potente libreria per la scrittura/lettura di dati nella memoria Flash.
Lavorare con i pin.
- PWM è una libreria che consente di impostare la frequenza PWM.
- PinChangeInt esegue interruzioni su qualsiasi pin. Descrizione.
- PinChangeInterrupt un'altra libreria (migliore) che ti consente di catturare gli interrupt su qualsiasi pin.
- DirectIO è un'alternativa più veloce alle funzioni standard di lettura/scrittura dello stato dei pin.
- AnalogReadFast - lettura veloce dei pin analogici (21 µs).
Core e bootloader.
- optiBoot - un fantastico bootloader per Arduino, più veloce, più leggero e più funzionale.
- MiniCore è un core per il supporto dei microcontrollori ATmega328, ATmega168, ATmega88, ATmega48 e ATmega8, basato su optiBoot. Una delle caratteristiche principali è il supporto per un generatore di clock interno.
- MicroCore core per supportare i microcontrollori ATtiny13, ATtiny13A e ATtiny13V con frequenza di clock interna selezionabile.
- ATTinyCore è un core per supportare i microcontrollori ATtiny 441/841, 44/84, 45/85, 461/861, 48/88, 828, 1634, 87, 167, sempre basati sul fantastico OptiBoot.
- megaTinyCore core per il supporto dei microcontrollori ATtiny 3217, 1617, 817, 417, 3216, 1616, 816, 416, 1614, 814, 414, 214, 412, 212, 1607, 807, 1606, 806, 406, 1604, 4 204, 402, 202.
Suono.
- Talkie è una libreria di sintesi del suono vocale per la creazione di dispositivi parlanti.
- uSpeech libreria di riconoscimento vocale.
- DFPlayer libreria per lavorare con il modulo MP3 DFPlayer mini.
- WTV020SD16P funziona con il modulo sonoro WTV020SD16P.
- TMRPcm libreria per la riproduzione di file audio WAV da una scheda di memoria.
Varie.
- menusystem è un potente strumento per creare menu con molti esempi.
- LCD_Menu uno strumento pronto per la creazione di menu su display LCD.
- MicroDebug una libreria per un comodo debug del codice.