Vai al contenuto

Gestione digital I/O su router WL-R220

Home Forum Soluzioni di comunicazione cellulare WLink Gestione digital I/O su router WL-R220

Stai visualizzando 3 post - dal 1 a 3 (di 3 totali)
  • Autore
    Post
  • #60333
    Anonimo
    Inattivo

    Ho acquistato un WL-R220LFX-g,inserita una sim e connesso in seriale al PC riesco ad accedere al device.

    Avrei bisogno di indirizzare un output su DO, potrebbe indicarmi qualche esempio o spiegarmi come poter accedere all’uscita digitale?

    A questo proposito vorrei anche chiederle se usare la funzionalità sysfs o libgiod per la programmazione GPIO.

    #60335
    Sergio Bertana
    Amministratore del forum

    Il router dispone di 2 ingressi ed 1 uscita digitale (Vedi schema elettrico), prestare attenzione alla connessione, sono segnali a 3.3 Volt.

    L’accesso in SSH al device è possibile oltre che da seriale anche da porta Ethernet, eseguita l’autenticazione (Default user:root nessuna password)  è possibile accedere ai comandi del sistema operativo OpenWRT. La gestione degli I/O è possibile tramite lo pseudo file system sysfs, i due ingressi sono connessi ai segnali GPIO_1 e GPIO_2 mentre il digital output è connesso al GPIO_0. Per accedere al GPIO_0 di uscita digitale occorre dare i comandi:

    echo 0 > /sys/class/gpio/export
    echo out > /sys/class/gpio/gpio0/direction

    Il primo comando esporta il GPIO_0 nello spazio utente, mentre il secondo lo imposta come uscita, se il comando viene eseguito correttamente verrà creato il link al device virtuale gpio0 nella cartella “/sys/devices/virtual/gpio/”. Ora sarà possibile settarne il valore con i comandi:

    echo 1 > /sys/class/gpio/gpio0/value
    echo 0 > /sys/class/gpio/gpio0/value

    Il primo comando forza ad 1 l’uscita, che essendo di tipo open collector si chiude a GND. Il secondo forza a 0 l’uscita che si porterà tramite la resistenza interna di pull-up a 3.3 volt.

    #60336
    Sergio Bertana
    Amministratore del forum

    Aggiungo il listato di un semplice script per fare lampeggiare l’uscita digitale. Naturalmente prima occorre impostare correttamente l’uscita con i comandi visti precedentemente.

    while true
    do
      echo 1 > /sys/class/gpio/gpio0/value
      sleep 1
      echo 0 > /sys/class/gpio/gpio0/value
      sleep 1
    done

    Salvare il file ad esempio con il nome “Blink” nella cartella “/usr” e poi eseguirlo con il comando “/usr/Blink”.

Stai visualizzando 3 post - dal 1 a 3 (di 3 totali)
  • Devi essere connesso per rispondere a questo topic.