La scheda Nano-PI-NEO con processore H3 Allwinner Quad-Core A7 4x1.2 GHZ è ideale per hobbisti, maker e sviluppatori vari che operano nel campo dell'elettronica. La piccola dimensione di 40 x 40 mm mantiene il fattore di forma molto compatto per una serie di progetti nel campo industriale. La scheda è dotata di una presa Micro-USB, interfaccia Ethernet 10/100 M, slot per micro SD, USB OTG e un'interfaccia GPIO a 36 poli per l'implementazione di varie shield.
Figura 1: la scheda NanoPi Neo.
Introduzione.
NanoPi Neo è una board della FriendlyArm con una buona qualità costruttiva della CPU e un prezzo molto competitivo, che lo rende una scelta eccellente per chi è alla ricerca di un modulo SBC estremamente piccolo e potente per il proprio progetto embedded. Tuttavia, non esiste un'uscita video che riduce il numero di possibili applicazioni. NanoPi NEO è un quadrato di 40mm, più piccolo del modulo Raspberry Pi Zero, e dotato di CPU Allwinner H3 da 1,2 GHz quad-core Cortex-A7. Il SoC H3 di Allwinner è pensato per boxes OTT e pertanto il suo design di riferimento non è accompagnato da un circuito separato PMIC (gestione dell'alimentazione di potenza), a differenza di SoCs AllWinner della serie A (A10, A20, A64, ...). Nessun PMIC significa anche che non ci sono funzioni di caricamento / monitoraggio della batteria, per cui SoC H3 non sono molto adatti per i dispositivi mobili. D'altra parte, sono stati rilasciati alcuni moduli praticamente a buon mercato che possono essere guidati con consumi piuttosto bassi, e quindi combinarli con una batteria è diventato un vero caso di utilizzo con schede come Orange Pi One / Lite, NanoPi NEO e Neo AIR.
Figura 2: layout GPIO della scheda NanoPi Neo.
Caratteristiche.
Il NanoPi NEO è una scheda ARM basata sul processore Allwinner H3, progettata e rilasciata da FriendlyARM per gli hobbisti, i produttori e gli appassionati elettronici. La serie H di Allwinner, introdotta nel 2014, è rivolta soprattutto ad applicazioni integrate di set-top box OTT. La scheda è completamente open source e lavora principalmente con distribuzioni Linux Ubuntu MATE e Debian. Può essere alimentata tramite la porta MicroUSB, con una forte integrazione hardware di interfacce e porte di comunicazione. Oltre alla popolare Ethernet, USB-Host, USB-OTG, dispone di una scheda di debug seriale e di una GPIO a 36 pin (figura 1, 2 e 3).
Figura 3: layout generale della scheda NanoPi Neo.
Le caratteristiche principali possono essere riassunte di seguito:
CPU: Allwinner H3, Quad-core Cortex-A7 Up to 1.2GHz.
DDR3 RAM: 256MB/512MB.
Connectivity: 10/100M Ethernet.
USB Host: Type-A x 1, 2.54 mm pin x 2.
MicroSD Slot x 1.
MicroUSB: data transmission e power input.
Debug Serial Port: 4Pin, 2.54 mm pitch pin header.
GPIO: 2.54mm pitch 36pin. Include anche UART, SPI, I2C, IO etc.
Dimensioni PCB: 40 x 40 mm.
Power Supply: DC 5V/2A.
OS/Software: u-boot e UbuntuCore.
Per fare in modo che il NanoPi NEO si avvii e funzioni velocemente, è consigliabile utilizzare una scheda SDHC TF da 8 GB. Dal seguente link è possibile scaricare le varie versioni di sistema operativo Linux compatibili con la scheda NanoPi NEO. La scheda TF con i file di immagine UbuntuCore permetterà di caricare il sistema operativo nel modulo NanoPi NEO, dopo aver collegato la scheda ad una sorgente di alimentazione da 5V / 2A. Il lampeggio del LED blu indica che la scheda è in funzione e che UbuntuCore sta per essere caricato. Se si desidera eseguire lo sviluppo del kernel è necessario utilizzare una scheda di comunicazione seriale, vale a dire una scheda PSU-ONECOM, che permetterà di azionare la scheda tramite un terminale seriale (figura 4).
Figura 4: scheda PSU-ONECOM collegata alla NanoPi NEO.
Le credenziali di accesso per la prima volta sono le seguenti.
Non-root User.
User Name: pi
Password: pi
Root.
User Name: root
Password: fa
L'utility npi-config da riga di comando può essere utilizzato per inizializzare le configurazioni di sistema come password utente, linguaggio, fuso orario, nome host, login automatico, interfaccia hardware (seriale / I2C / SPI / PWM) e altro (figura 5 e 6).
Figura 5: terminale di avvio della scheda NanoPi NEO.
Figura 6: esecuzione del comando npi-config.
Librerie.
La libreria wiringPi è stata inizialmente sviluppata da Gordon Henderson in linguaggio C. Contiene librerie per accedere a GPIO, I2C, SPI, UART, PWM e altro. La libreria contiene file di intestazione e un programma di utilità commandline denominato "gpio". Il comando gpio può essere usato per leggere e scrivere i pin GPIO. La libreria wiringPi è stata inizialmente sviluppata per BCM2835 e successivamente migrata a Allwinner H3 e rinominata come WiringNP. Ora il WiringNP funziona con NanoPi M1, NanoPi NEO e NanoPi NEO2. Per installare la libreria WiringNP bisogna eseguire i seguenti comandi:
git clone https://github.com/friendlyarm/WiringNP
cd WiringNP/
chmod 755 build
./build
Supponiamo di collegare al pin 7 un LED, il codice per farlo lampeggiare potrebbe essere il seguente:
#include
int main(void)
{
wiringPiSetup() ;
pinMode (7, OUTPUT) ;
for(;;)
{
digitalWrite(7, HIGH) ;
delay (500) ;
digitalWrite(7, LOW) ;
delay (500) ;
}
}
La compilazione e la relativa esecuzione avvengono da terminale nel seguente modo:
gcc -Wall -o test test.c -lwiringPi -lpthread
sudo ./test
Conclusioni.
Il Raspberry Pi Zero ha due attributi notevoli rispetto ad altre board della Raspberry Pi: è più piccolo ed è più economico. FriendlyARM con la sua famiglia NanoPi è entrata a pieno regime nel mercato con varie soluzioni dimensionalmente più piccole del Raspberry Pi Zero. La scheda NanoPi NEO guidata dal processore Allwinner H3 quad Core è ideale per tutti gli sviluppatori che operano in vari campi del computing, offrendo una soluzione low cost per implementare varie applicazioni in accordo alle necessità e con l'impiego di una o più schede NanoPi NEO.
Fonte: https://it.emcelettronica.com