Gör din egen router med WRTNode - styra LEDs via GPIO-port

I tidigare artiklar om WRTNode bland annat fick vi veta, Hur du lägger till fyra portar LAN och en port WAN att denna lilla router orienterad utveckling relaterade projekt med den Sakernas Internet och den Robotics.

Idag vi kommer att lära dig grunderna om hamnen GPIO Denna enhet att göra Flash en bi-color led, eller två misslyckas Lysdioder som olika färger av “Hej världen” att vara förtrogna med Denna utvecklingsplattform.

Det första vi måste göra är att ansluta den bi-color led, eller den Lysdioder två olika färger i stiften GPIO0 och GPIO2 precis som i i följande tabell och baksidan systematiken i anslutning; bör noteras som inte kommer att behöva använda motstånd på grund av de låga spänningar som fungerar WRTNode.

WRTNode Diod LED
GPIO0 (GPIO STYRELSE 57)
Grön anod
GPIO2 (GPIO STYRELSE 58)
Röd anod
GND (GPIO STYRELSE 55)
Gemensam katod

Om du använder två Lysdioder i stället för en bicolor, Du måste ansluta en bro mellan den katod av båda; Å andra sidan, den bi-color led de har en delas av dess två anoder vilket minskar kablar som krävs för denna praxis.

Anslutningen mellan bi-color led och WRTNode diagram

Nu redan vi kan mata våra WRTNode, och ansluta till den Management Console för OpenWRT med hjälp av den seriell port som vi lärt oss i Denna tidigare artikel, exportera den GPIO2, Konfigurera den som utdata, och tilldela ett positivt värde “1“; Slutligen har vi reasignaremos ett lågt värde “0” Om du vill inaktivera ledde.

#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

På denna punkt upprepa föregående steg, Denna gång med GPIO0 att testa andra dioden för våra bi-color led och kontrollera alla krets.

#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

Efter att ha kontrollerat verksamheten rätt, Vi plasmaremos den de två stegen ovan kod i ett skript, så vi kommer att använda den standard textredigerare i detta fall är det VI, och Vi kommer att hålla fast i följande kod i vår fil som heter blinkleds; Det bör noteras att skalet som standard i OpenWRT ES “Ash“, mycket liknar “bash” men med vissa begränsningar.

#!/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

Du behöver bara ge Behörighet att köra till den script att äntligen köra den, nu den ledde Det blinkar förändrade färg tills vi avbryta programmet genom att trycka på tangentkombinationen “CTRL + c“.

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

I detta video Du kan se driften av montering görs; Om du gillar Glöm inte Följ mig på YouTube att inte missa någon av de opublicerade videor Jag kommer att publicera, oavsett de artiklar som jag skriver.

I den följande läraren Vi lär dig att utveckla ett litet program som gör det möjligt att tilldela varje ledde till en tjänst, och skapa visuella varningar samband med händelser som definierar.

Om du som du kan följa mig på Twitter, Facebook, Google +, LinkedIn, eller dela den med knapparna under denna publikation, Om du har några frågor eller förslag tveka inte att kommentera.

Hjälp oss att nå fler läsare Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

Lämna svar