Salta la barra di navigazione [1] - Vai alla barra di navigazione [3] - Scrivimi una mail [4]

Rapsberry Pi: SPI con wiring Pi

Raspberry Pi - Note di hardware - Sommario - Novità - Tutorial - Progetti - Risorse - Non solo elettronica

In fase di sviluppo Stesura preliminare In fase di sviluppo

Wiring Pi mette a disposizione alcune funzioni che semplificano l'uso dell'interfacci SPI:

Per la documentazione dettagliata di rimanda al sito ufficiale: http://wiringpi.com/reference/spi-library.

Lettura di un campione

A fondo pagina il codice di esempio che utilizza un ADC MAX146. Lo schema è lo stesso già visto, pagina a cui si rimanda per la descrizione dei codici trasmessi e ricevuti

Acquisizione a frequenza costante

Il secondo esempio, sempre relativo al MAX146 mostra come è possibile acquisire una serie di campioni mantenendo una discreta temporizzazione: in pratica, e con molta fantasia, un oscilloscopio digitale. Occorre precisare che Raspbian è lontano dall'essere un sistema operativo real time e quindi le temporizzazioni sono tutt'altro che rigorose. Malgrado questo, il programma manifesta un buon comportamento se sono rispettate due condizioni:

Il codice è costituito da un loop che acquisisce 100 campioni e, al termine li salva nel file di testo voltage.txt. Come test è stato usato un segnale sinusoidale con ampiezza picco-picco di 2 V, valor medio 1 V e frequenza 50 Hz.

Per esaminare graficamente i risultati è stato utilizzato il programma gnuplot, direttamente eseguito su Rpi (nota 2) :

pi@vv-rpi-14:~ $ ./max146

pi@vv-rpi-14:~ $ gnuplot
gnuplot> plot "voltage.txt" w l lt 1

Il grafico con 100 punti acquisitiù

L'unica osservazione è quella relativa al ritardo (nell'esempio pari a 825 µs): tale valore, trovato sperimentalmente, è quello che sommato all'effettivo tempo di acquisizione ed elaborazione, garantisce una frequenza di campionamento mediamente vicina a 1 KHz.

Il codice

Note

  1. L'esempio mostrato era in esecuzione su un Rpi B+ e non ha utilizzato nice
  2. Se state eseguendo il programma in remoto da una macchina Linux usando ssh, per vedere il grafico occorre inserire l'opzione -X per l'inoltro di X11:
    vv@vv-15rse-2:~$ ssh -X pi@192.168.yyy.xxx

 

Data di creazione di questa pagina: 24 marzo 2017
Ultima modifica:


Raspberry Pi - Note di hardware

Vedi anche: Il taccuino tecnico


Licenza "Creative Commons" - Attribuzione-Condividi allo stesso modo 3.0 Unported


EN - Pagina principale - Sommario - Accessibilità - Note legali e privacy policy - Posta elettronica

XHTML 1.0 Strict - CSS 3