was successfully added to your cart.

Basic Beagle Bone Black ตอนที่ 2

By January 11, 2014tutorial

จากคราวที่แล้วที่เราได้นำเสนอการใช้งาน Beagle Bone Black เบื้องต้นไป คราวนี้เรากลับมาดูกันอีกครับว่า Kernel ที่ติดมากับบอร์ดทำอะไรได้อีกบ้าง ซึ่งเราพบว่าในตัวบอร์ดได้เปิด https ให้ใช้สำหรับแสดง Gate-one ซึ่งเป็น Web-base terminal ครับ หมายความว่า ถ้าเราจะติดต่อกับบอร์ด โดยช่องทาง SSH เราไม่จำเป็นต้องมีโปรแกรมที่เป็น Terminal อย่างเช่น Hyper-Terminal, Putty หรือ Terra Term อยู่บนเครื่องเลย เราสามารถเข้า SSH ผ่าน Browser ได้โดยตรง อีกทั้งเรายังสามารถใช้ Terminal นี้ต่อไปยัง SSH อื่นๆ ที่ไม่ต้องอยู่ในบอร์ดได้อีกด้วย ว้าว…

จะชักช้าอยู่ใยเสียบ USB แล้วเข้าที่นี่เลยครับ https://192.168.7.2

1
หน้าตาของ Terminal ดังกล่าวก็จะเป็นลักษณะเหมือนกับด้านบนนั่นแหละครับ ที่นี้ก็มา Login เพื่อเชื่อมต่อกับบอร์ดครับ

Host/IP or SSH URL [localhost]: (ตรงนี้ให้ใส่ IP ของบอร์ดไปนะครับ ซึ่งก็คือ 192.168.7.2)
Port [22]: (ตรงนี้กด Enter ผ่านไปได้เลยครับ)
User: (ใส่ root ครับ)
Password: (กด Enter ผ่านไปได้เลยครับ)

2
ในที่สุดเราก็เข้ามาได้แล้ว เราก็มาทดสอบกันดีกว่าครับ ว่ามันทำได้เหมือน Terminal ทั่วไปหรือป่าว ลองทดสอบคำสั่งง่ายๆ ครับ “cat /proc/cpuinfo”

3
ก็ใช้งานได้ดังที่หวังไว้นะครับ ลองไปสั่ง LED ดูมั่งดีกว่า พิมพ์คำสั่งตามนี้เลยนะครับ

cd /sys/class/leds/beaglebone\:green\:usr3
echo 1 > brightness (เปิดไฟ)
echo 0 > brightness (ดับไฟ)

ถ้าหากต้องการใช้งาน GPIO อื่นก็ลองแบบนี้ดูนะครับ

cd /sys/class/gpio/
echo [x] > export

[x] ก็คือหมายเลขที่ได้จากการดู schematic มาครับ สมมุติเราต้องการใช้ GPIO1_24 จะได้ [x] = ( 1 * 32 ) + 24 = 56
จากนั้นเราจะได้ โฟลเดอร์ใหม่มา 1 โฟลเดอร์ ชื่อก็จะเป็น gpio[x] เราจะทดลองสั่งงาน GPIO ดูครับ

cd gpio[x]
echo high > direction
echo low > direction

มาเขียนโปรแกรมกันบ้างดีกว่าครับ
เหมือนเดิมครับ ไฟกระพริบ แต่คราวนี้ขอย้ายไปเขียนบน Python ละกันนะครับ จะใช้โปรแกรมอะไรเขียนก็ได้ครับ เช่น vi, vim หรือ nano มีมาไว้หมดแล้วครับ เลือกใช้ตามสะดวกเลยครับ ลองกับโค้ดด้านล่างนี้ดูนะครับ

import time

led_usr3 = ‘/sys/class/leds/beaglebone:green:usr3/brightness’

def ledon():
    value = open(led_usr3,’w’)
    value.write(str(1))
    value.close()

def ledoff():
    value = open(led_usr3,’w’)
    value.write(str(0))
    value.close()

cnt = 10
while cnt:

    ledoff()
    time.sleep(0.1)

    ledon()
    time.sleep(0.1)

    cnt-=1

ลองสั่งรันดูนะครับ
python led_test.py

จากการใช้งานไอ้เจ้า Gate-one ก็ใช้งานได้ดีระดับหนึ่งนะครับ แต่จะมีความช้า และค้างๆ บ้างนะครับ คนไหนสนใจไอ้เจ้า Gate-one ไปใช้กับบอร์ดอื่นหรือเอาไปทำโปรเจคก็ลองได้นะครับ เพราะตัวนี้เป็น Open-Source ด้วย

ลืมไป!! ความเด็ดของ Terminal ตัวนี้ คือ มันจะอัดวิดีโอ ในขณะที่เราใช้งานมันด้วยนะครับ ลองเล่นดูครับ
4
บทความนี้ได้รับการสนับสนุนบอร์ดทดลองจาก http://www.gravitechthai.com/ ครับ

Leave a Reply

*