มีวิธีการส่งสัญญาณเสียงผ่าน GPIO หรือไม่และมีข้อเสียกับวิธีนี้หรือไม่?
มีวิธีการส่งสัญญาณเสียงผ่าน GPIO หรือไม่และมีข้อเสียกับวิธีนี้หรือไม่?
คำตอบ:
ช่องสัญญาณเสียง (ซ้ายและขวา) มีให้โดย GPIO ที่ขับเคลื่อนด้วย PWM (ช่อง 0 ด้วย GPIO 12 หรือ 18 และช่อง 1 โดย GPIO 13 หรือ 19)
ดังนั้นหากคุณเชื่อมต่อวงจรที่เหมาะสมกับ GPIO เหล่านั้นคุณจะได้รับเสียง
ดูอุปกรณ์ต่อพ่วง ARM BCM2835สำหรับรายละเอียดเกี่ยวกับอุปกรณ์ต่อพ่วง GPIO และ PWM
แก้ไขเพื่อเพิ่ม
พื้นหลังบางส่วน
ใน Pis เมื่อเร็ว ๆ นี้เอาต์พุตเสียงแจ็คเสียงถูกจัดเตรียมโดย PWM แชนแนล 0 และ 1 PWM แชนแนล 0 จะถูกส่งไปยัง GPIO40 ซึ่งเชื่อมต่อกับช่องสัญญาณ (สเตอริโอ) ที่ถูกต้องและช่องสัญญาณ PWM 1 ถูกส่งไปยัง GPIO45 ซึ่งเชื่อมต่อกับ (สเตอริโอ) ช่องทางซ้าย
ช่องสัญญาณ PWM เหล่านี้อาจถูกส่งไปยัง GPIO ที่ผู้ใช้เข้าถึงได้
ช่องสัญญาณ PWM 0 อาจถูกส่งไปที่ GPIO12 และ GPIO18
ช่องสัญญาณ PWM 1 อาจถูกส่งไปที่ GPIO13 และ GPIO19
คุณกำหนดเส้นทาง PWM ไปยัง GPIO โดยการตั้งค่าโหมด GPIO เฉพาะดังนี้:
ดูหน้า 102 ของการอ้างอิงข้อมูลจำเพาะของ Broadcom ด้านบน
มีหลายวิธีในการตั้งค่าโหมด GPIO
เช่นสุกร m 18 5 จะตั้ง GPIO18 เป็นโหมด ALT5
เช่นเดียวกับที่โจแอนตอบไว้แล้วเสียงอะนาล็อกของ Pi ก็เป็นเช่นนั้น Adafruit มีบทความที่อธิบายวงจรนี้ในรายละเอียดสำหรับการใช้งานกับพี่ศูนย์ (ที่มาโดยไม่ได้) ดูที่นี่