Node.js Raspberry Pi - GPIO บทนำ


GPIO คืออะไร?

GPIO ย่อมาจาก General Purpose Input Output

Raspberry Pi มีพิน GPIO สองแถวซึ่งเป็นจุดเชื่อมต่อระหว่าง Raspberry Pi กับโลกแห่งความจริง

ขาออกเป็นเหมือนสวิตช์ที่ Raspberry Pi สามารถเปิดหรือปิดได้ (เช่นการเปิด/ปิดไฟ LED) แต่ก็สามารถส่งสัญญาณไปยังอุปกรณ์อื่นได้

หมุดอินพุตเป็นเหมือนสวิตช์ที่คุณสามารถเปิดหรือปิดจากโลกภายนอกได้ (เช่น สวิตช์ไฟเปิด/ปิด) แต่อาจเป็นข้อมูลจากเซ็นเซอร์หรือสัญญาณจากอุปกรณ์อื่นก็ได้

นั่นหมายความว่าคุณสามารถโต้ตอบกับโลกแห่งความจริง และควบคุมอุปกรณ์และอุปกรณ์อิเล็กทรอนิกส์โดยใช้ Raspberry PI และพิน GPIO ของมันได้!


มองอย่างใกล้ชิดที่ GPIO Pins

Raspberry Pi 3 พร้อม GPIO

นี่คือภาพประกอบของ Raspberry Pi 3

หมุด GPIO เป็นสี่เหลี่ยมสีแดงขนาดเล็กในสองแถวทางด้านขวาของ Raspberry Pi บน Raspberry Pi จริงเป็นหมุดโลหะขนาดเล็ก

Raspberry Pi 3 มีพิน GPIO 26 พิน พินที่เหลือเป็นพลังงาน กราวด์ หรือ "อื่นๆ"

ตำแหน่งหมุดสอดคล้องกับตารางด้านล่าง

Raspberry Pi B+, 2, 3 & Zero

3V3 1 2 5V
GPIO2 3 4 5V
GPIO 3 5 6 GND
GPIO 4 7 8 GPIO14
GND 9 10 GPIO 15
GPIO 17 11 12 GPIO 18
GPIO 27 13 14 GND
GPIO 22 15 16 GPIO 23
3V3 17 18 GPIO 24
GPIO 10 19 20 GND
GPIO 9 21 22 GPIO 25
GPIO 11 23 24 GPIO 8
GND 25 26 GPIO7
DNC 27 28 DNC
GPIO 5 29 30 GND
GPIO 6 31 32 GPIO 12
GPIO 13 33 34 GND
GPIO 19 35 36 GPIO 16
GPIO 26 37 38 GPIO 20
GND 39 40 GPIO 21

ตำนาน

หมายเลขพินทางกายภาพ
พลัง +
พื้น
UART
I2C
SPI
GPIO
อย่าเชื่อมต่อ


มองใกล้ที่เขียงหั่นขนม

เขียงหั่นขนมใช้สำหรับสร้างต้นแบบอุปกรณ์อิเล็กทรอนิกส์ช่วยให้คุณสร้างวงจรโดยไม่ต้องบัดกรี โดยพื้นฐานแล้วจะเป็นกระดานพลาสติกที่มีจุดผูก (รู) ภายในกระดานมีแถบโลหะที่เชื่อมต่อจุดผูกต่างๆ ในลักษณะเฉพาะ

ในภาพประกอบด้านล่าง เราได้เน้นบางส่วนที่มีสีต่างกัน นี่เป็นการแสดงวิธีการเชื่อมต่อกริด

เขียงหั่นขนมที่เน้นการเชื่อมต่อ

ส่วนต่าง ๆ ของเขียงหั่นขนม:

  • ด้านซ้ายและด้านขวามีจุดเสมอกัน 2 คอลัมน์ จุดผูกทั้งหมดในแต่ละคอลัมน์เหล่านี้เชื่อมต่อกัน
  • The Power Bus - คอลัมน์ที่เน้นด้วยสีแดง มักใช้เพื่อเชื่อมต่อพลังงานกับ Breadboard เนื่องจากเชื่อมต่อทั้งคอลัมน์แล้ว คุณจึงสามารถต่อไฟเข้ากับจุดเชื่อมต่อใดๆ ในคอลัมน์ได้
  • The Ground Bus - คอลัมน์ที่เน้นด้วยสีน้ำเงิน มักใช้เพื่อเชื่อมต่อกราวด์กับเขียงหั่นขนม เนื่องจากทั้งคอลัมน์เชื่อมต่อกัน คุณจึงสามารถเชื่อมต่อกราวด์กับจุดผูกใดๆ ในคอลัมน์ได้
  • แถวของ Tie-Points ที่เชื่อมต่อ - แถวที่เน้นด้วยสีเขียว จุดผูกของแต่ละแถวเหล่านี้เชื่อมต่อกัน แต่ไม่ใช่ทั้งแถว! จุดผูกด้านซ้ายเชื่อมต่อกัน (ABCDE) และจุดเชื่อมต่อด้านขวาเชื่อมต่อกัน (FGHIJ)
  • ตรงกลางของ Breadboard มีร่องลึก ซึ่งแยกแถวซ้ายและขวา ความกว้างของร่องลึกได้รับการออกแบบเพื่อให้วงจรรวมจำนวนมากพอดี

ติดตั้งโมดูล onoff

ในการเชื่อมต่อกับ GPIO บน Raspberry Pi โดยใช้ Node.js เราจะใช้โมดูลที่เรียกว่า "onoff"

Install the onoff module using npm:

pi@w3demopi:~ $ npm install onoff

Now onoff should be installed and we can interact with the GPIO of the Raspberry Pi.