MCU ของฉันใช้ SPI บัสซึ่งมีอุปกรณ์ประมาณ 4 ตัว ฉันต้องการต่อรถบัสคันนี้ให้ออกนอกบอร์ดด้วยเช่นมี PCB บางอันเชื่อมต่อกับบอร์ด "หลัก" และขยายการทำงาน ระยะทาง "pad to pad" จะเป็น:
ความยาวร่องรอยของกระดานหลัก + ความยาวสายเคเบิล + ความยาวร่องรอยบนกระดานขยาย
3 "+ 6" + 3 "= ประมาณ 12"
จากประสบการณ์ของฉันแม้กระทั่งสัญญาณ 1 MHz ที่มีเวลาเพิ่มขึ้นประมาณ 7 ns ระยะทางผ่านสายเคเบิลริบบิ้นนี้มีการแก้ไขเกิน 1 V (แต่ไม่มีเสียงเรียกเข้ามากเกินไป) บอร์ดจะได้รับพลังงานจากแหล่งจ่ายไฟเดียวกัน
หมายเหตุ: คุณไม่เห็นเวลาที่เพิ่มขึ้นที่นี่ แต่คุณสามารถเห็นการโอเวอร์โหลดมากเกินไป - นี่คือสัญญาณ 3.3V และใช่สิ่งนี้วัดได้อย่างถูกต้องด้วยเส้นลวดที่สั้นมากจากหัววัดถึงกราวด์ เหมือนที่มันมักจะแนะนำบนเว็บไซต์นี้ ฉันไม่คิดว่ามันเป็นข้อผิดพลาดในการวัด
ฉันต้องการให้ระบบทำงานที่ 4 MHz แต่ 2 MHz ก็เป็นที่ยอมรับเช่นกัน ค่าสูงสุด จำนวนบอร์ดที่ฉันต้องการเชื่อมต่อจะมีประมาณ 4 ตัวและจะขยายบัส SPI ให้มีอุปกรณ์ประมาณ 12 ตัว ฉันไม่คิดว่ามันจะยากเกินไปที่จะจัดการผ่านรหัสเพราะฉันมีบางสิ่งบางอย่างที่ทำงานเช่นนี้แล้ว การมีสายเลือกทาสเพิ่มเติมไม่ใช่ปัญหาเช่นกัน
อย่างไรก็ตามข้อกังวลของฉันคือวิธีการส่งข้อมูล SPI จากบอร์ดหนึ่งไปยังอีกบอร์ดหนึ่ง ฉันควรส่ง SPI แบบตรงหรือแปลงเป็น LVDS ที่ปลายด้านหนึ่งแล้วแปลงกลับเป็น SPI ที่ปลายอีกด้านหนึ่งหรือไม่