Raspberry Pi เป็นบอร์ดที่ใช้โปรเซสเซอร์สถาปัตยกรรม ARM ที่ออกแบบมาสำหรับวิศวกรอิเล็กทรอนิกส์และมือสมัครเล่น PI เป็นหนึ่งในแพลตฟอร์มการพัฒนาโครงการที่น่าเชื่อถือที่สุดในขณะนี้ ด้วยความเร็วโปรเซสเซอร์ที่สูงขึ้นและ RAM 1 GB PI สามารถใช้กับโปรเจ็กต์ที่มีรายละเอียดสูงมากมายเช่นการประมวลผลภาพและ Internet of Things
สำหรับการทำโครงการที่มีรายละเอียดสูงจำเป็นต้องเข้าใจฟังก์ชันพื้นฐานของ PI นั่นคือเหตุผลที่เรามาที่นี่เราจะครอบคลุมฟังก์ชันพื้นฐานทั้งหมดของ Raspberry Piในบทช่วยสอนเหล่านี้ ในแต่ละชุดการสอนเราจะพูดถึงฟังก์ชั่นหนึ่งของ PI ในตอนท้ายของชุดการสอนคุณจะสามารถทำโปรเจ็กต์ที่มีรายละเอียดสูงได้ด้วยตัวเอง ตรวจสอบสิ่งเหล่านี้สำหรับการเริ่มต้นใช้งาน Raspberry Pi และ Raspberry Pi Configuration
การสร้างการสื่อสารระหว่าง PI และผู้ใช้เป็นสิ่งสำคัญมากสำหรับการออกแบบโครงการบน PI สำหรับการสื่อสาร PI ต้องรับอินพุตจากผู้ใช้ ในบทช่วยสอนที่สองของซีรี่ส์ PI เราจะเชื่อมต่อปุ่มกับ Raspberry Piเพื่อรับ INPUTS จากผู้ใช้
ที่นี่เราจะเชื่อมต่อปุ่มกับ GPIO Pin หนึ่งอันและ LED กับพิน GPIO อื่นของ Raspberry Pi เราจะเขียนโปรแกรมใน PYTHON เพื่อกะพริบ LED อย่างต่อเนื่องเมื่อกดปุ่มโดยผู้ใช้ LED จะกะพริบโดยการเปิดและปิด GPIO
ก่อนที่จะเริ่มการเขียนโปรแกรมเรามาพูดถึง LINUX และ PYHTON กันก่อน
ลินุกซ์:
LINUX เป็นระบบปฏิบัติการเช่นเดียวกับ Windows ทำหน้าที่พื้นฐานทั้งหมดที่ Windows OS สามารถทำได้ ความแตกต่างที่สำคัญระหว่างพวกเขาคือ Linux เป็นซอฟต์แวร์โอเพ่นซอร์สที่ Windows ไม่ใช่ ความหมายโดยทั่วไปคือ Linux ฟรีในขณะที่ไม่มี Windows Linux OS สามารถดาวน์โหลดและใช้งานได้ฟรี แต่สำหรับการดาวน์โหลด Windows OS ของแท้คุณต้องจ่ายเงิน
และข้อแตกต่างที่สำคัญอีกประการหนึ่งคือ Linux OS สามารถ 'แก้ไข' ได้โดยการปรับแต่งโค้ด แต่ Windows OS ไม่สามารถแก้ไขได้การทำเช่นนั้นจะนำไปสู่ความยุ่งยากทางกฎหมาย ดังนั้นทุกคนสามารถใช้ Linux OS และสามารถปรับเปลี่ยนตามความต้องการของเขาเพื่อสร้าง OS ของตัวเอง แต่เราไม่สามารถทำได้ใน Windows ระบบปฏิบัติการ Windows มีข้อ จำกัด เพื่อหยุดคุณจากการแก้ไข OS
ที่นี่เรากำลังพูดถึง Linux เพราะ JESSIE LITE (Raspberry Pi OS) เป็นระบบปฏิบัติการที่ใช้ LINUX ซึ่งเราได้ติดตั้งไว้ในส่วนแนะนำ Raspberry Pi PI OS ถูกสร้างขึ้นบนพื้นฐานของ LINUX ดังนั้นเราจึงต้องรู้เกี่ยวกับคำสั่งปฏิบัติการ LINUX เล็กน้อย เราจะพูดถึงคำสั่ง Linux เหล่านี้ในบทช่วยสอนต่อไปนี้
ไพทอน:
ซึ่งแตกต่างจาก LINUX คือ PYTHON เป็นภาษาโปรแกรมเช่น C, C ++ และ JAVA เป็นต้นภาษาเหล่านี้ใช้ในการพัฒนาแอปพลิเคชัน จำภาษาโปรแกรมที่รันบนระบบปฏิบัติการ คุณไม่สามารถเรียกใช้ภาษาโปรแกรมโดยไม่มีระบบปฏิบัติการ ดังนั้นระบบปฏิบัติการจึงเป็นอิสระในขณะที่ภาษาโปรแกรมขึ้นอยู่กับ คุณสามารถเรียกใช้ PYTHON, C, C ++ และ JAVA ได้ทั้งบน Linux และ Windows
แอปพลิเคชั่นที่พัฒนาโดยภาษาโปรแกรมเหล่านี้อาจเป็นเกมเบราว์เซอร์แอพ ฯลฯ เราจะใช้ภาษาโปรแกรม PYTHON บน PI ของเราเพื่อออกแบบโครงการและจัดการกับ GPIO
เราจะพูดคุยเกี่ยวกับ PI GPIO ก่อนที่จะดำเนินการต่อไป
หมุด GPIO:
ดังแสดงในรูปด้านบนมีพินเอาต์พุต 40 พินสำหรับ PI แต่เมื่อคุณดูรูปที่สองคุณจะเห็นว่าไม่สามารถตั้งโปรแกรมขาออกทั้งหมด 40 พินให้กับการใช้งานของเราได้ เหล่านี้เป็นเพียง 26 GPIO พินที่สามารถตั้งโปรแกรมได้ หมุดเหล่านี้ไปจาก GPIO2 เพื่อ GPIO27
หมุด GPIO 26 ตัวนี้ สามารถตั้งโปรแกรมได้ ตามความต้องการ หมุดเหล่านี้บางตัวยังทำหน้าที่พิเศษบางอย่างเราจะพูดถึงในภายหลัง ด้วย GPIO พิเศษเราจึงเหลืออีก 17 GPIO (วงกลมสีเขียวอ่อน)
แต่ละเหล่านี้ 17 หมุด GPIO สามารถส่งมอบสูงสุดของ 15mA ปัจจุบัน และผลรวมของกระแสจาก GPIO ทั้งหมดต้องไม่เกิน 50mA ดังนั้นเราจึงสามารถวาดค่าเฉลี่ยสูงสุด 3mA จากพิน GPIO เหล่านี้ ดังนั้นเราไม่ควรยุ่งเกี่ยวกับสิ่งเหล่านี้เว้นแต่คุณจะรู้ว่าคุณกำลังทำอะไรอยู่
ส่วนประกอบที่ต้องการ:
ที่นี่เราจะใช้ ราสเบอร์รี่ Pi 2 รุ่น B กับ Raspbian Jessie OS ข้อกำหนดฮาร์ดแวร์และซอฟต์แวร์พื้นฐานทั้งหมดได้กล่าวไว้ก่อนหน้านี้คุณสามารถค้นหาได้ในบทนำ Raspberry Pi นอกเหนือจากที่เราต้องการ:
- หมุดเชื่อมต่อ
- 220Ωหรือ1KΩตัวต้านทาน
- LED
- ปุ่ม
- คณะกรรมการขนมปัง
คำอธิบายวงจร:
ดังที่แสดงในแผนภาพวงจรเราจะเชื่อมต่อ LED กับ PIN35 (GPIO19) และปุ่มไปที่ PIN37 (GPIO26) ดังที่ได้กล่าวไว้ก่อนหน้านี้เราไม่สามารถดึงมากกว่า 15mA จากหมุดใด ๆ เหล่านี้ได้ดังนั้นเพื่อ จำกัด กระแสเรากำลังเชื่อมต่อตัวต้านทาน220Ωหรือ1KΩในอนุกรมกับ LED
คำอธิบายการทำงาน:
เมื่อเชื่อมต่อทุกอย่างแล้วเราสามารถเปิด Raspberry Pi เพื่อเขียนโปรแกรมใน PYHTON และดำเนินการได้ (หากต้องการทราบวิธีใช้ PYTHON ให้ไปที่ PI BLINKY)
เราจะพูดถึงคำสั่งเล็ก ๆ น้อย ๆ ที่เราจะใช้ในโปรแกรม PYHTON
เรากำลังจะนำเข้าไฟล์ GPIO จากไลบรารีฟังก์ชันด้านล่างช่วยให้เราสามารถตั้งโปรแกรมพิน GPIO ของ PI ได้ นอกจากนี้เรายังเปลี่ยนชื่อ "GPIO" เป็น "IO" ดังนั้นในโปรแกรมเมื่อใดก็ตามที่เราต้องการอ้างถึงพิน GPIO เราจะใช้คำว่า 'IO'
นำเข้า RPi.GPIO เป็น IO
บางครั้งเมื่อพิน GPIO ที่เราพยายามใช้อยู่อาจจะทำหน้าที่อื่น ๆ ในกรณีนั้นเราจะได้รับคำเตือนขณะดำเนินการโปรแกรม คำสั่งด้านล่างบอกให้ PI เพิกเฉยต่อคำเตือนและดำเนินการกับโปรแกรม
IO.setwarnings (เท็จ)
เราสามารถอ้างอิงพิน GPIO ของ PI ไม่ว่าจะด้วยหมายเลขพินบนบอร์ดหรือตามหมายเลขฟังก์ชัน ในแผนภาพพินคุณจะเห็น 'PIN 37' บนกระดานคือ 'GPIO26' เราบอกตรงนี้ว่าเราจะแทนพินตรงนี้ด้วย "37" หรือ "26"
IO.setmode (IO.BCM)
เรากำลังตั้งค่า GPIO26 (หรือ PIN37) เป็นพินอินพุต เราจะตรวจจับปุ่มกดโดยพินนี้
IO.setup (26, IO.IN)
ในขณะที่ 1: ใช้สำหรับอินฟินิตี้ลูป ด้วยคำสั่งนี้คำสั่งภายในลูปนี้จะดำเนินการอย่างต่อเนื่อง
เมื่อโปรแกรมทำงานไฟ LED ที่เชื่อมต่อกับ GPIO19 (PIN35) จะกะพริบทุกครั้งที่กดปุ่ม เมื่อปล่อย LED จะเข้าสู่สถานะปิดอีกครั้ง