- บทความนี้เป็นบทความที่จัดทำขึ้นเพื่อแนะนำการใช้งานเบื้องต้น 'ขาอินพุตและเอาท์พุตของบอร์ด raspberri pi3 (ราสเบอรรี่ ไพ3)' ซึ่งเป็นความรู้พื้นฐานในการใช้งานบอร์ดนี้
บอร์ด raspbeery pi3 นั้นมีขาให้ต่อใช้งาน 40 ขา ดังภาพด้านล่าง หรือจะให้ดูง่ายกว่านั้นก็ดูตามภาพนี้นะครับ หลักๆที่ทุกท่านน่าจะทราบอยู่แล้วคือ จุดต่อไฟ 5 V , 3.3V, และกราวด์ และขาสำหรับต่ออุปกรณ์เพื่อรับค่าอินพุตหรือส่งค่าเอาต์พุต ออกไป
และยังมีขาที่พิเศษๆ นั่นก็คือ ขาสำหรับเชื่อมต่อ I2C(ขา3และ5) ที่จะทำให้บอร์ดสามารถสื่อสารกับอุปกรณ์ภายนอกได้มีประสิทธิภาพมากขึ้น(สื่อสารกับอุปกรณ์ 2 ทิศทาง) และพอร์ตสำหรับสัญญาณ pwm(พี่ดับเบิ้ลยูเอ็ม) 1 ขา(ขา4) อาจจะน้อยแต่เราสามารถค้นหาไลบารี่ที่ทำให้ ขา pwm เยอะขึ้นจาก google ได้ โดยขา pwm นี้ส่วนมากจะไปใช้งานในการควบคุมความเร็วมอเตอร์หรือควบคุมservoมอเตอร์ได้
- ในการเขียนโปรแกรมควบคุมขาของบอร์ดนั้นผู้ใช้จะต้องกำหนดว่าจะใช้มาตรฐานไหนในการเรียกใช้ขาของอุปกรณ์ จะมี 2 มาตรฐานก็คือ BOARD และ BCM
ฺBCM คือ หมายเลยขาที่อยู่ด้านนอกกรอบสีแดงที่ขึ้นต้นด้วยคำว่า GPIO
ตัวอย่างโค้ดภาษาไพธอนที่ใช้ร่วมกับบอร์ด
1.โค้ดไฟกระพริบโดยใช้LED(แอล-อี-ดี)
โค้ด: เลือกทั้งหมด
import RPi.GPIO as GPIO #อิมพอร์ตไลบารี่ในการควบคุมขาอุปกรณ์
import time #อิมพอร์ตฟังชั่น time สำหรับ การหน่วงเวลา
GPIO.setmode(GPIO.BCM) #มาตรฐานขาของอุปกรณ์ในที่นี้เลือก BCM
GPIO.setup(22,GPIO.OUT) #กำหนดให้ GPIO 22 เป็นเอาต์พุต
GPIO.output(22,GPIO.LOW) #LED ดับ
while 1: #ลูปที่ไม่สิ้นสุด
GPIO.output(22,GPIO.HIGH) #LED ติด
time.sleep(1) #หน่วงเวลาเพื่อไม่ให้ดับหรือติดเร็วเกินจนตามองไม่ทัน
GPIO.output(22,GPIO.LOW) #LED ดับ
time.sleep(1)
อ้างอิงจาก
thaiopensource
NEW PROJECT