ปีก่อนหน้านี้คุณได้เข้า ร่วมการแข่งขัน GPIO ของ Raspberry Pi และแนะนำ บอร์ด breakout ที่เป็นประโยชน์ สำหรับการระบุหมายเลขพิน วันนี้เราทำธีมต่อไปและเริ่มใช้หมุดเหล่านี้ร่วมกับโค้ดและฮาร์ดแวร์
GPIO คือวิธีการที่ Raspberry Pi คุยกับโลกภายนอก - "สิ่งที่เป็นจริง" - ใช้รหัสเพื่อเขียนโปรแกรมสัญญาณและแรงดันไฟฟ้าไปยังและจากส่วนหัว 40-pin
การเขียนโค้ดด้วย GPIO ทำได้ง่ายมากสำหรับการเริ่มต้นใช้งานโดยเฉพาะอย่างยิ่งสำหรับโครงการเริ่มต้นเช่น LEDs และ buzzers เพียงไม่กี่ชิ้นส่วนและไม่กี่บรรทัดของรหัสคุณสามารถใช้ไฟหรือ LED LED เป็นส่วนหนึ่งของโครงการของคุณได้
บทความนี้จะแสดงสิ่งที่คุณต้องการในการใช้ LED โดยใช้รหัส Python บน Pi ราสเบอร์รี่ของคุณโดยใช้ 'RPi.GPIO' แบบเดิม
01 จาก 04
สิ่งที่คุณต้องการ
นี่คือรายการของทุกสิ่งทุกอย่างที่คุณต้องการสำหรับโครงการเริ่มต้นเล็ก ๆ นี้ คุณควรจะสามารถหารายการเหล่านี้ได้ในร้านโปรดของคุณหรือไซต์ประมูลออนไลน์
- เวิร์กสแปม Raspberry Pi ที่ใช้งาน Raspbian ล่าสุด (Pi, หน้าจอ, คีย์บอร์ด, เมาส์, ไฟ, การ์ด SD - ทั้งหมดเชื่อมต่ออยู่)
- กระดานเล็ก ๆ
- ไฟ LED 5 มม
- ตัวต้านทานแบบ 330 โอห์ม
- สายจัมเปอร์ชายถึงหญิง 2 เส้น
02 จาก 04
สร้างวงจร - ขั้นตอนที่ 1
เราจะใช้หมุด GPIO 2 ตัวสำหรับโครงการนี้ขาดิน (ขาทางกายภาพ 39) สำหรับขาดินของ LED และขา GPIO ทั่วไป (GPIO 21 ขาทางกายภาพ 40) เพื่อเปิดไฟ LED - แต่เฉพาะเมื่อ เราตัดสินใจ - ซึ่งเป็นที่ที่รหัสเข้ามา
ขั้นแรกให้ปิด Raspberry Pi ของคุณ ตอนนี้โดยใช้สายจัมเปอร์ให้ต่อขาดินเข้ากับเลนบนกระดานทำบอร์ดของคุณ ถัดไปทำแบบเดียวกันกับขา GPIO การเชื่อมต่อกับช่องทางอื่น
03 จาก 04
สร้างวงจร - ขั้นตอนที่ 2
ต่อไปเราจะเพิ่ม LED และตัวต้านทานลงในวงจร
LED มีขั้ว - หมายความว่าพวกเขาจะต้องมีสายในลักษณะที่แน่นอน พวกเขามักจะมีขายาวอีกอันหนึ่งซึ่งเป็นขาขั้วบวก (บวก) และโดยทั่วไปจะมีขอบแบนบนหัวพลาสติก LED ซึ่งหมายถึงขาแคโทด (ลบ)
ตัวต้านทานใช้เพื่อป้องกันทั้งไฟ LED จากการรับกระแสไฟมากเกินไปและขา GPIO จาก 'ให้' มากเกินไปซึ่งอาจทำให้ทั้งสองตัวเสียหายได้
มีคะแนนความต้านทานทั่วไปสำหรับไฟ LED มาตรฐานอยู่ที่ 330 โอห์ม มีวิชาคณิตศาสตร์อยู่เบื้องหลังบางส่วน แต่ตอนนี้เรามาดูโครงการนี้แล้วคุณสามารถดูกฎหมายโอห์มและหัวข้อที่เกี่ยวข้องได้ในภายหลัง
ต่อขาหนึ่งของตัวต้านทานกับช่อง GND บนเมนบอร์ดของคุณและขาตัวต้านทานอื่น ๆ ไปยังเลนที่เชื่อมต่อกับขาที่สั้นกว่าของ LED ของคุณ
ขณะนี้ขายาวของ LED จำเป็นต้องเชื่อมต่อเลนที่เชื่อมต่อกับขา GPIO
04 จาก 04
รหัส PyIOX GPIO (RPi.GPIO)
ในขณะที่เรามีวงจรแบบมีสายและพร้อมที่จะเดินทาง แต่เรายังไม่ได้บอก GPIO pin ของเราเพื่อส่งพลังงานออกไปดังนั้น LED ของคุณจึงไม่ควรสว่าง
ลองสร้างไฟล์ Python เพื่อบอก GPIO pin ของเราเพื่อส่งพลังงานไปสัก 5 วินาทีแล้วหยุด รุ่นล่าสุดของ Raspbian จะมีไลบรารี GPIO necassary ที่ติดตั้งอยู่แล้ว
เปิดหน้าต่างเทอร์มินัลและสร้างสคริปต์ Python ใหม่โดยการป้อนคำสั่งต่อไปนี้:
sudo nano led1.pyซึ่งจะเปิดไฟล์เปล่าเพื่อให้เราป้อนรหัสของเรา ป้อนบรรทัดด้านล่าง:
#! / usr / bin / python # นำเข้าไลบรารีที่เราต้องการนำเข้า RPi.GPIO เป็นเวลานำเข้า GPIO # ตั้ง GPIO mode GPIO.setmode (GPIO.BCM) # ตั้ง LED GPIO LED = 21 # ตั้ง LED GPIO pin เป็น เอาท์พุท GPIO.setup (LED, GPIO.OUT) # หมุน GPIO pin บน GPIO.output (LED, True) # รอ 5 วินาที time.sleep (5) # ปิด GPIO pin ปิด GPIO.output (LED, เท็จ)กด Ctrl + X เพื่อบันทึกไฟล์ เมื่อต้องการเรียกใช้ไฟล์ให้ป้อนคำสั่งต่อไปนี้ใน terminal และกด enter:
sudo python led1.pyLED ควรสว่างเป็นเวลา 5 วินาทีจากนั้นปิดเครื่องและสิ้นสุดโปรแกรม
ลองเปลี่ยนหมายเลข 'time.sleep' เพื่อเปิดไฟ LED สำหรับเวลาที่ต่างกันหรือลองเปลี่ยน 'GPIO.output (LED, True)' เป็น 'GPIO.output (LED, False)' และดูว่าจะเกิดอะไรขึ้น?