Kufanya kionesha tariki chako mwenyewe na WRTNode - kudhibiti LEDs kupitia bandari ya GPIO

Katika Makala ya awali kuhusu WRTNode miongoni mwa mambo mengine, tulijifunza, Jinsi ya kuongeza bandari nne LAN na bandari ya WAN kwa hii ndogo tariki oriented maendeleo kuhusiana na miradi ya pamoja ya Tovuti ya mambo na Maroboti.

Leo tunaweza kujifunza misingi kuhusu bandari ya GPIO Kifaa hiki kufanya kiwango cha na Bi-rangi aliongoza, au mbili kushindwa LEDs kama rangi tofauti ya “Vipi dunia” kwa kuwa familiarized na Jukwaa hili maendeleo.

Kitu cha kwanza lazima tufanye ni kuunganisha na Bi-rangi aliongoza, au ya LEDs rangi mbili tofauti katika vigingi GPIO0 na GPIO2 tu kama katika Jedwali lifuatalo na nyuma mpango wa muunganisho; Ikumbukwe kwamba haja ya kutumia resistors kutokana na voltages chini kwamba kazi WRTNode.

WRTNode Dayoda LED
GPIO0 (BODI YA GPIO 57)
Anode ya kijani
GPIO2 (BODI YA GPIO 58)
Anode nyekundu
GND (BODI YA GPIO 55)
Cathode kawaida

Ikiwa unatumia mbili LEDs badala ya moja bicolor, Lazima uunganishe daraja kati ya cathodes ya wote; Kwenye upande ule mwingine, ya Bi-rangi aliongoza wana moja pamoja na mbili yake anodes ambayo inapunguza sasa zinahitajika kwa ajili ya zoezi hili.

Uhusiano kati ya bi-rangi wakiongozwa na WRTNode mchoro

Sasa tayari unaweza kulisha wetu WRTNode, na kuunganishwa na Kiweko simamizi ya OpenWRT kwa means ya ya Kituo tarishi tambulisho kama tulivyojifunza katika Makala hii awali, kuhamisha ya GPIO2, Sanidi kama towe, na Pangia thamani chanya “1“; Hatimaye sisi reasignaremos thamani chini “0” kuzima aliongoza.

#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

Katika hatua hii kurudia hatua ya awali, Wakati huu na GPIO0 ya kujaribu dayoda pili ya yetu Bi-rangi aliongoza na kuangalia mzunguko wote.

#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

Baada ya kuchunguza uendeshaji wake sahihi, Sisi plasmaremos ya hatua mbili juu msimbo katika hati, hivyo Tutatumia ya Kihariri matini chaguo-msingi katika kesi hiyo ni VI, na Sisi fimbo code zifuatazo katika faili yetu iitwayo blinkleds; Ikumbukwe kwamba shell kwa chaguo-msingi katika OpenWRT ES “Ash“, ni sawa na “Bash” lakini na mapungufu fulani.

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

Wewe tu haja ya kutoa Kutekeleza vibali kwa ya hati Hatimaye kuendesha, sasa ya aliongoza Ni Flash rangi mabadiliko mpaka sisi kupinga mpango kwa kubofya vibonye ambatani “CTRL + c“.

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

Katika hii video Unaweza kuona operesheni ya kufaa ya maandishi; Kama usisahau Nifuate YouTube si Miss yoyote ya video ambazo hazijachapishwa Mimi naenda kwa kuchapisha, bila kujali makala kwamba mimi kuandika.

Katika mafunzo yafuatayo Tunajifunza kuendeleza programu ndogo ambayo itaruhusu sisi Pangia kila aliongoza kwa huduma ya, na kuzalisha maonyo onyeshi kuhusishwa na matukio ambayo Fasili.

Kama wewe kama wewe Nifuate Mtandao wa Twitter, Facebook, Google +, LinkedIn, au kushiriki na vitufe chini ya chapisho hili, Kama una maswali yoyote au maoni Tafadhali usisite kutoa maoni.

Kutusaidia kufikia wasomaji zaidi Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone