Face propriul router cu WRTNode - LED-uri de control prin portul GPIO

În articole anterioare despre WRTNode Printre alte lucruri, am aflat, Cum se adaugă patru porturi LAN şi un port WAN pentru acest mic router-ul orientat spre dezvoltarea legate de proiecte cu Internet de lucruri şi Robotica.

Astăzi vom învăţa elementele de bază despre port GPIO Acest aparat a face Flash un bi-color led, sau două în lipsa LED-uri ca culori diferite de “bună oameni buni” să fie familiarizaţi cu Această platformă de dezvoltare.

Primul lucru pe care trebuie să facem este de a conecta bi-color led, sau LED-uri două culori diferite în ace GPIO0 şi GPIO2 doar ca în tabelul de mai jos şi partea din spate schema de conexiune; trebuie remarcat faptul că nu va trebui să utilizaţi rezistori din cauza tensiuni reduse care funcţionează WRTNode.

WRTNode Diodă LED
GPIO0 (GPIO BORD 57)
Anod verde
GPIO2 (GPIO BORD 58)
Roşu anod
GND (GPIO BORD 55)
Catod comun

Dacă utilizaţi două LED-uri în loc de una bicolor, Trebuie să conectaţi o punte de legătură între catozi ambele; pe de altă parte, The bi-color led ei au unul comun de către două sale Furtune zincuite care reduce cablare necesare pentru această practică.

Legătura dintre bi-color led şi diagrama de WRTNode

Acum deja am poate hrăni nostru WRTNode, şi se conectează la Consola de administrare de OpenWRT de Serial port aşa cum am învăţat în Acest articol precedent, pentru a exporta GPIO2, configuraţi-l ca ieşire, atribuiţi o valoare pozitivă “1“; În cele din urmă am reasignaremos o valoare scăzută “0” pentru a dezactiva condus.

#Encendemos el led rojo
root@OpenWrt:~# echo 2 > /sys/class/gpio/export
root@OpenWrt:~# echo out > /sys/class/gpio/gpio2/direction
root@OpenWrt:~# echo 1 > /sys/class/gpio/gpio2/value

#Apagamos el led rojo
root@OpenWrt:~# echo 0 > /sys/class/gpio/gpio2/value

În acest moment se repetă pasul anterior, De data aceasta cu GPIO0 pentru a testa doua diode de noastre bi-color led şi a verifica toate circuit.

#Encendemos el led verde
root@OpenWrt:~# echo 0 > /sys/class/gpio/export
root@OpenWrt:~# echo out > /sys/class/gpio/gpio0/direction
root@OpenWrt:~# echo 1 > /sys/class/gpio/gpio0/value

#Apagamos el led verde
root@OpenWrt:~# echo 0 > /sys/class/gpio/gpio0/value

După verificarea funcţionării sale corecte, Am plasmaremos doi paşi codul de mai sus într-un script, Deci, vom folosi editorul de text implicit în acest caz este AL VI-LEA, şi Noi va lipi codul următor în fişierul nostru numit blinkleds; Ar trebui remarcat că shell implicit în OpenWRT ES “Frasin“, foarte similar cu “bash” dar cu anumite limitări.

#!/bin/ash
#blinkleds

#Exportamos los GPIO
echo 0 > /sys/class/gpio/export
echo 2 > /sys/class/gpio/export

#Los definimos como salidas
echo out > /sys/class/gpio/gpio0/direction
echo out > /sys/class/gpio/gpio2/direction

#Los hacemos parpadear
while true; do
  echo 1 > /sys/class/gpio/gpio0/value
  sleep 1
  echo 0 > /sys/class/gpio/gpio0/value
  sleep 1
  echo 1 > /sys/class/gpio/gpio2/value
  sleep 1
  echo 0 > /sys/class/gpio/gpio2/value
  sleep 1
done

Ai doar nevoie de da Executa permisiunile pentru a script-ul pentru a rula în cele din urmă se, acum a condus Va clipi schimbare culoare, până când vom întrerupe programul apăsând combinaţia de taste “CTRL + c“.

root@OpenWrt:~# chmod +x leds 
root@OpenWrt:~# ./leds

În acest Pagina Puteţi vedea funcționarea montarea se face; Dacă vă place nu uita Urmaţi-mă pe YouTube pentru a nu pierde nici de videoclipuri nepublicate Am de gând să publice, indiferent de articole pe care scriu.

În urma tutorial Vom învăţa să dezvolte un mic program care ne va permite să atribui fiecare a condus la un serviciu, şi genera avertizări vizuale asociate cu evenimente care definesc.

Dacă vă place să urmaţi-mă pe Stare de nervozitate, Facebook, Google +, LinkedIn, sau partajaţi-l cu butoanele de sub această publicaţie, Dacă aveţi orice întrebări sau sugestii vă rugăm să nu ezitaţi să comenteze.

Să ne ajute să ajungă la mai mult de cititori Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

lasă un răspuns