Membuat Anda sendiri router dengan WRTNode - mengendalikan LED melalui GPIO port

Dalam artikel sebelumnya tentang WRTNode antara lain, kita belajar, Bagaimana cara menambahkan empat port LAN dan port WAN ini kecil pengembangan router yang berorientasi proyek dengan terkait Internet hal dan Robotika.

Hari ini kita akan mempelajari dasar-dasar tentang Pelabuhan GPIO Perangkat ini membuat Flash BI-warna led, atau dua gagal LED sebagai warna yang berbeda “Halo dunia” untuk menjadi akrab dengan Ini platform pengembangan.

Hal pertama yang harus kita lakukan adalah untuk menghubungkan BI-warna led, atau LED dua warna yang berbeda di pin GPIO0 dan GPIO2 hanya sebagai dalam Tabel berikut dan belakang skema koneksi; perlu dicatat bahwa tidak perlu menggunakan resistor karena tegangan rendah yang bekerja WRTNode.

WRTNode Dioda LED
GPIO0 (GPIO PAPAN 57)
Hijau anoda
GPIO2 (GPIO PAPAN 58)
Anoda merah
GND (GPIO PAPAN 55)
Umum katoda

Jika Anda menggunakan dua LED bukan satu bicolor, Anda harus terhubung jembatan antara katod kedua; Dilain pihak, The BI-warna led mereka memiliki satu bersama oleh dua anoda yang mengurangi kabel diperlukan untuk praktek ini.

Hubungan antara bi-warna led dan WRTNode diagram

Sekarang sudah kami dapat feed kami WRTNode, dan terhubung ke Konsol manajemen dari OpenWRT melalui serial port seperti yang kita pelajari di Artikel sebelumnya, untuk ekspor GPIO2, mengkonfigurasinya sebagai output, dan menetapkan nilai positif “1“; Akhirnya kami reasignaremos nilai yang rendah “0” untuk mematikan dipimpin.

#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

Pada titik ini ulangi langkah sebelumnya, Kali ini dengan GPIO0 untuk menguji dioda kedua dari kami BI-warna led dan memeriksa semua sirkuit.

#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

Setelah memeriksa operasi yang benar, Kami plasmaremos dua langkah di atas kode dalam skrip, Jadi kita akan menggunakan editor teks default dalam hal ini VI, dan Kami akan menggunakan kode berikut dalam file kami disebut blinkleds; Perlu dicatat bahwa shell secara default di OpenWRT ES “Ash“, sangat mirip dengan “bash” tetapi dengan batasan-batasan tertentu.

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

Anda hanya perlu memberikan Mengeksekusi perizinan untuk script akhirnya menjalankannya, sekarang memimpin Itu akan berkedip warna berubah sampai kami interrupt program dengan menekan kombinasi tombol “CTRL + c“.

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

Dalam hal ini video Anda dapat melihat operasi pemasangan dibuat; Jika Anda seperti jangan lupa Ikuti saya di YouTube tidak ketinggalan satupun video tidak diterbitkan Aku akan menerbitkan, Terlepas dari artikel yang saya menulis.

Dalam tutorial berikut Kita akan belajar untuk mengembangkan program kecil yang akan memungkinkan kita untuk menetapkan masing-masing memimpin Layanan, dan menghasilkan peringatan visual terkait dengan peristiwa-peristiwa yang mendefinisikan.

Jika Anda suka, Anda dapat mengikuti saya di Twitter, Facebook, Google +, LinkedIn, atau berbagi dengan tombol di bawah ini publikasi, Jika Anda memiliki pertanyaan atau saran jangan ragu untuk komentar.

Membantu kami untuk menjangkau lebih banyak pembaca Share on LinkedInShare on FacebookTweet about this on TwitterShare on Google+Email this to someone

Tinggalkan balasan