ฉันกำลังดูตัวเลือกสำหรับ ADC บน Rasbperry Pi ฉันสงสัยว่าจะเป็นไปได้จนถึงตอนนี้ แน่นอนง่ายและราคาถูกดี
ฉันกำลังดูตัวเลือกสำหรับ ADC บน Rasbperry Pi ฉันสงสัยว่าจะเป็นไปได้จนถึงตอนนี้ แน่นอนง่ายและราคาถูกดี
คำตอบ:
Adafruitมีบทช่วยสอนที่ดีเกี่ยวกับการใช้MCP3008 ($ 3.75) - ADC 8-Channel 10-Bit 8-Channel พร้อม SPI Interface เพื่อควบคุมระดับเสียงของไฟล์ mp3 แต่ควรให้จุดเริ่มต้นที่ดีสำหรับโครงการอะนาล็อกกับดิจิตอล
ADS1113, ADS1114 และADS1115เป็นตัวแปลงอนาล็อกเป็นดิจิตอลที่มีความแม่นยำด้วยความละเอียด 16 บิตที่นำเสนอในแพ็คเกจ QFN-10 ขนาดเล็กพิเศษไร้สารตะกั่วหรือแพ็คเกจ MSOP-10 ADS1113 / 4/5 ได้รับการออกแบบโดยคำนึงถึงความแม่นยำพลังงานและความสะดวกในการใช้งาน ADS1113 / 4/5 มีการอ้างอิงแบบออนบอร์ดและออสซิลเลเตอร์ ข้อมูลจะถูกถ่ายโอนผ่านอินเตอร์เฟสอนุกรมI²Cที่รองรับ; สามารถเลือกที่อยู่ทาสสี่I²Cได้ ADS1113 / 4/5 ทำงานจากแหล่งจ่ายไฟเดียวตั้งแต่ 2.0V ถึง 5.5V
ก่อนอื่นคุณต้องแน่ใจว่าโหลดโมดูลI²Cแล้ว ถัดไปเชื่อมต่อ ADS1115 ดังที่แสดงด้านล่าง มีที่อยู่ได้ 4 ที่แตกต่างกันขึ้นอยู่กับว่า ADDR แบบใดที่เชื่อมต่อ ซึ่งหมายความว่าคุณสามารถเชื่อมต่อทั้งหมด 16 ช่องกับบัสI²Cเดียว
GND = 0x48, VDD = 0x49, SDA = 0x4A, SCL = 0X4B
คุณสามารถดูผลลัพธ์ของการแปลงล่าสุดเช่นนี้
# i2cget -y 0 0x49 0 w
0x0000
ค่าเริ่มต้นของ 0x0000 จะถูกส่งกลับมาที่นี่เนื่องจากยังไม่มีการแปลง ตอนนี้ให้ดูที่การลงทะเบียนการกำหนดค่า
# i2cget -y 0 0x49 1 w
0x8385
LSB เป็นครั้งแรกดังนั้นสิ่งนี้จึงเทียบเท่า 0b1000010110000011
ฉันต้องการที่จะทำแปลงเดียวสิ้นสุดวันที่ AIN0 ดังนั้นฉันต้องเขียนบิต [14:12] 0b100
เช่น กล่าวคือ0b1100010110000011
# i2cset -y 0 0x49 1 0xC385 w
# i2cget -y 0 0x49 0 w
0xa30b
LSB เป็นคนแรกดังนั้นนี่จะเท่ากับ 2979 ทศนิยม
ตราบใดที่การใช้งานที่คุณต้องการนั้นไม่ต้องการบิตเรตหรือความละเอียดสูงคุณก็อาจใช้ Arduino ได้ Arduinos นั้นดีเพราะพวกเขามีชุมชนขนาดใหญ่ที่ให้การสนับสนุนพวกเขาเคยอยู่มานานแล้วและมีการสื่อสารผ่านทาง USBไม่มี GPIO!
นี่คือลิงค์สำหรับโพสต์บล็อกของ Simon Monkพร้อมคำแนะนำเกี่ยวกับวิธีที่เขาสื่อสารกับ Arduino จาก Raspberry Pi กับ python
ในกรณีที่คุณไม่เคยได้ยิน Arduino มาก่อน (บางทีคุณเคยอยู่ใต้ก้อนหิน) นี่คือลิงค์ไปยังหน้าบทนำและตัวอย่างระดับเริ่มต้นของอินพุตอะนาล็อก
คล้ายกับการใช้ Arduino แต่อุปกรณ์ PICAXE เชื่อมต่อกับ RPi UART อย่างไร นี่จะเล็กกว่าและถูกกว่ามาก สำหรับผมแล้ว Arduino ดูเหมือนจะอยู่ด้านบนสุดขึ้นอยู่กับความต้องการที่แท้จริงของคุณ
ในหนึ่งหรือสองเดือน (เนื่องจากการจัดส่งไปแอฟริกา) ฉันจะได้รับบอร์ด I2C PCF8591 ที่มีการเดินสายสนับสนุนเว็บไซต์ WiringPiและคณะกรรมการใช้ 3.3v (โดยทั่วไป) ฉันได้รับเวอร์ชัน WaveShare ในลิงก์ amazon Amazonจากสิ่งที่ฉัน ' ฉันอ่าน PCF8591 ก็ค่อนข้างดี แต่จนกว่าฉันจะมีบอร์ดต่อหน้าฉันฉันไม่สามารถพูดได้ว่ามันดีหรือไม่
ทางออกที่น่าสนใจที่นี่: http://www.theremino.com/en/blog/standalone-applications/#raspberry
ไม่เพียง แต่ ADC เท่านั้น แต่ยังมี Output Input ที่สามารถกำหนดค่าได้สำหรับ Raspberry Pi