NS ราสเบอร์รี่ปี่ สามารถเป็นได้หลายอย่าง นั่นเป็นส่วนหนึ่งของการอุทธรณ์ คุณสามารถใช้ Pi ได้เหมือนกับพีซีทั่วไป โดยเชื่อมต่ออุปกรณ์ต่อพ่วงผ่านพอร์ต USB และ HDMI ของบอร์ด หากคุณต้องการเจาะลึกด้านเทคนิคของ Pi ให้หันความสนใจไปที่ชุดหมุดที่อยู่ด้านข้างของแผงวงจร หมุดเหล่านั้นถือเป็นกุญแจสำคัญในการใช้ Raspberry Pi ใน IoT วิทยาการหุ่นยนต์ และโครงการอื่นๆ หมุดไม่ได้น่ากลัวอย่างที่คิด เมื่อแตกหักและอธิบายแล้ว

Raspberry Pi GPIO

ข้อมูลเบื้องต้นเกี่ยวกับพินของ Raspberry Pi

คำว่า GPIO (เอาต์พุตอินพุตวัตถุประสงค์ทั่วไป) ไม่ได้จำกัดเฉพาะ ราสเบอร์รี่ปี่. พินอินพุตและเอาต์พุตสามารถพบได้ในไมโครคอนโทรลเลอร์ส่วนใหญ่ เช่น Arduino, Beaglebone และอื่นๆ

GPIO กับ Raspberry Pi คือบล็อกหมุดยาวที่มุมซ้ายบนของบอร์ด รุ่นเก่ามี 26 พิน และรุ่นปัจจุบันมี 40 พิน

คุณสามารถเชื่อมต่อส่วนประกอบและอุปกรณ์ฮาร์ดแวร์อื่นๆ เข้ากับหมุดเหล่านี้ และใช้รหัสเพื่อควบคุมการทำงานของส่วนประกอบต่างๆ เป็นส่วนสำคัญของ Raspberry Pi และเป็นวิธีที่ยอดเยี่ยมในการเรียนรู้เกี่ยวกับอุปกรณ์อิเล็กทรอนิกส์

หลังจากดำเนินโครงการซอฟต์แวร์สองสามโครงการแล้ว คุณอาจจะพบว่าตัวเองกำลังทดลองใช้หมุดเหล่านี้ และกระตือรือร้นที่จะผสมโค้ดของคุณกับฮาร์ดแวร์เพื่อทำให้สิ่งต่างๆ เกิดขึ้นในชีวิตจริง

กระบวนการนี้อาจดูน่ากลัวหากคุณเพิ่งเริ่มใช้ Pi เมื่อพิจารณาว่าการเคลื่อนไหวที่ผิดพลาดเพียงครั้งเดียวสามารถสร้างความเสียหายให้กับ Raspberry Pi ของคุณได้ เป็นที่เข้าใจได้ว่าเป็นบริเวณที่กังวลสำหรับผู้เริ่มต้นในการสำรวจ

บทความนี้จะอธิบายว่าพิน GPIO แต่ละประเภททำอะไรได้บ้างและข้อจำกัดของพิน

GPIO

ก่อนอื่น มาดู GPIO โดยรวมกันก่อน หมุดอาจดูเหมือนกัน แต่ทั้งหมดมีหน้าที่ต่างกัน ภาพด้านล่างแสดงฟังก์ชันเหล่านี้ในสีต่างๆ

แผนภาพลำดับพิน Raspberry Pi GPIO

แต่ละพินมีหมายเลขตั้งแต่ 1 ถึง 40 โดยเริ่มจากมุมล่างซ้าย นี่คือหมายเลขพินที่มีอยู่จริง อย่างไรก็ตาม ยังมีกฎเกณฑ์การนับและการติดฉลาก เช่น BCM ซึ่งใช้เมื่อเขียนโค้ด

พลังและกราวด์

ไฮไลต์ด้วยสีแดงคือพินพาวเวอร์ที่มีป้ายกำกับ 3 หรือ 5 สำหรับ 3.3V หรือ 5V หมุดเหล่านี้ช่วยให้คุณส่งพลังงานไปยังอุปกรณ์โดยไม่ต้องใช้รหัสใดๆ ไม่มีทางปิดสิ่งเหล่านี้ได้เช่นกัน

Raspberry Pi GPIO Power และ Ground Pins

มีรางจ่ายไฟสองราง: 3.3 โวลต์และ 5 โวลต์ ราง 3.3V จำกัดการดึงกระแสไฟที่ 50mA. ในทางตรงกันข้ามราง 5V จะให้ความจุปัจจุบันที่เหลืออยู่จากแหล่งจ่ายไฟหลังจากที่ Pi ได้ทำสิ่งที่ต้องการแล้ว

ไฮไลท์สีน้ำตาลคือหมุดกราวด์ (GND) หมุดกราวด์เหล่านี้เป็นส่วนสำคัญของโครงการอิเล็กทรอนิกส์ใดๆ

พิน GPIO 5V เป็นตัวเลขจริง 2 และ 4 หมุด GPIO 3.3V เป็นตัวเลขจริง 1 และ 17 หมุด GPIO กราวด์เป็นตัวเลขจริง 6, 9, 14, 20, 25, 30, 34 และ 39

พินอินพุต/เอาต์พุต

พินสีเขียวคือพินอินพุต/เอาต์พุตทั่วไป สิ่งเหล่านี้สามารถใช้เป็นอินพุตหรือเอาต์พุตได้อย่างง่ายดายโดยไม่กระทบกับฟังก์ชันอื่นๆ เช่น I2C, SPI หรือ UART

พินเหล่านี้สามารถส่งพลังงานไปยัง LED, Buzzer หรือส่วนประกอบอื่นๆ หรือสามารถใช้เป็นอินพุตเพื่ออ่านเซ็นเซอร์ สวิตช์ หรืออุปกรณ์อินพุตอื่นๆ ได้

Raspberry Pi GPIO พินอินพุตและเอาต์พุต

กำลังขับของพินเหล่านี้คือ 3.3V แต่ละพินไม่ควรเกิน 16mA ของกระแส ไม่ว่าจะจมหรือหาแหล่ง พิน GPIO ทั้งชุดไม่ควรเกิน 50mA ในแต่ละครั้ง สิ่งนี้สามารถจำกัดได้ ดังนั้นคุณอาจต้องมีความคิดสร้างสรรค์ในบางโครงการ

หมุด GPIO ทั่วไปคือตัวเลขจริง 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 และ 40

หมุด I2C

หมุด I2C เป็นสีเหลือง I2C เป็นโปรโตคอลการสื่อสารที่ช่วยให้อุปกรณ์สามารถสื่อสารกับ Raspberry Pi พินเหล่านี้สามารถใช้เป็นพิน GPIO ทั่วไปได้

หมุด Raspberry Pi I2C GPIO

ตัวอย่างที่ดีของการใช้ I2C เป็นชิปขยายพอร์ต MCP23017 ยอดนิยม ซึ่งสามารถให้พินอินพุต/เอาต์พุตเพิ่มเติมผ่านโปรโตคอล I2C นี้

พิน I2C GPIO เป็นพินจริงหมายเลข 3 และ 5

UART (อนุกรม) หมุด

หมุด UART เป็นสีเทา พินเหล่านี้เป็นโปรโตคอลการสื่อสารอีกตัวหนึ่งที่มีการเชื่อมต่อแบบอนุกรมและสามารถใช้เป็นอินพุต/เอาต์พุต GPIO ทั่วไปได้

Raspberry Pi GPIO UART พิน

การใช้งานหนึ่งสำหรับ UART คือการเปิดใช้งานการเชื่อมต่อแบบอนุกรมจาก Pi ไปยังแล็ปท็อปผ่าน USB สามารถทำได้โดยใช้บอร์ดเสริมหรือสายเคเบิลธรรมดา ไม่จำเป็นต้องใช้หน้าจอหรือการเชื่อมต่ออินเทอร์เน็ตเพื่อเข้าถึง Pi ของคุณ

พิน UART GPIO เป็นพินจริงหมายเลข 8 และ 10

หมุด SPI

หมุด SPI เป็นสีชมพู SPI เป็นบัสอินเตอร์เฟสที่ส่งข้อมูลระหว่าง Pi กับฮาร์ดแวร์และอุปกรณ์ต่อพ่วงอื่นๆ มักใช้สำหรับผูกอุปกรณ์ต่างๆ เช่น an นำ เมทริกซ์หรือจอแสดงผล

Raspberry Pi SPI GPIO Pins

เช่นเดียวกับตัวอื่นๆ พินเหล่านี้สามารถใช้เป็นอินพุต/เอาต์พุต GPIO ทั่วไปได้เช่นกัน

พิน SPI GPIO คือหมายเลขพินจริง 19, 21, 23, 24 และ 26

หมุด DNC

อันสุดท้ายเป็นหมุดสีน้ำเงินสองอันที่ขณะนี้มีป้ายกำกับว่า DNCซึ่งย่อมาจาก Do Not Connect ซึ่งอาจเปลี่ยนแปลงได้ในอนาคตหาก Raspberry Pi Foundation เปลี่ยนบอร์ดหรือซอฟต์แวร์

หมุด Raspberry Pi DNC GPIO

พิน DNC GPIO เป็นหมายเลขพินจริง 27 และ 28

อนุสัญญาการนับเลข GPIO

เมื่อเข้ารหัสด้วย GPIO คุณสามารถเลือกนำเข้าไลบรารี GPIO ด้วยวิธีใดวิธีหนึ่งจากสองวิธี: BCM หรือ BOARD

ตัวเลือกแรกคือ GPIO BCM. นี่คือแบบแผนการนับเลขของ Broadcom มักใช้ในโปรเจ็กต์และส่วนเสริมของฮาร์ดแวร์

ตัวเลือกที่สองคือ คณะกรรมการ GPIO. วิธีนี้ใช้หมายเลขพินจริงแทน ซึ่งสะดวกเมื่อนับพิน คุณจะพบว่ามีการใช้น้อยลงในตัวอย่างโครงการ

Raspberry Pi Portsplus

โหมด GPIO ถูกตั้งค่าเมื่อนำเข้าไลบรารี GPIO:

นำเข้า RPI GPIO เป็น GPIO 

เพื่อนำเข้าเป็น BCM:

GPIO.setmode (GPIO.BCM)

เพื่อนำเข้าเป็น กระดาน:

GPIO.setmode (GPIO.บอร์ด)

ทั้งสองวิธีนี้ทำงานเหมือนกัน มันเป็นเรื่องของการตั้งค่าลำดับเลข

คุณสามารถใช้บอร์ดป้ายกำกับ GPIO เช่น the RasPiO Portsplus (ในภาพ) เพื่อตรวจสอบว่าคุณกำลังต่อสายพินใดอยู่ ด้านหนึ่งแสดงแบบแผนการนับ BCM อื่น ๆ แสดง คณะกรรมการ ดังนั้นคุณจึงครอบคลุมทุกโครงการที่คุณพบ