ข้อควรพิจารณาในการยกเลิกการเป็น SPI Bus


22

ดังนั้นในคำถามก่อนหน้าของฉันฉันถามเกี่ยวกับการใช้ SPI บัสในระยะทางสั้น ๆ สำหรับการสื่อสารระหว่างบอร์ดกับบอร์ด ฉันแนะนำให้ลองตัวต้านทานการยกเลิก ฉันวางตัวต้านทานใกล้กับปลายทาง (แต่ไม่ตรงนั้นมีระยะทาง 1 ซม.) และต่อสายดิน [เนื่องจากนี่เป็นบอร์ดที่ไม่มีรอยต้านทานตัวต้านทานแบบยกเลิก ฉันไม่สามารถประสานตัวต้านทานเข้ากับอุปกรณ์ได้เนื่องจากเป็น TQFP และมีพินที่ละเอียดอ่อน]

จากการทดสอบขั้นพื้นฐานบางอย่างฉันพบว่าตัวต้านทาน 1K ลดการโอเวอร์โหลดไม่มากนัก 470 โอห์มและ 180 โอห์มทำงานได้ดีขึ้น ยิ่งฉันไปต่ำเท่าไหร่ก็ยิ่งทำงานได้ดีขึ้นเท่านั้น ด้วย 180 โอห์มการโอเวอร์เฮทเป็นโวลต์หรือต่ำกว่าเล็กน้อย ตอนนี้โชคไม่ดีที่ฉันไม่สามารถลงไปมากกว่านั้นได้เพราะกระแสมากกว่า MCU ของฉันสามารถจัดการได้ ฉันแก้ไขปัญหาที่เกิดขึ้นในการปรับปรุงบอร์ดปัจจุบันโดยใช้ความต้านทาน 330 โอห์มในซีรีย์ สิ่งนี้นำไปสู่การโอเวอร์โหลดเป็น 3.7 V และเวลาเพิ่มขึ้นเป็น 10 หรือ 11 ns แต่ฉันต้องการทางออกที่ถูกต้องในการแก้ไขครั้งต่อไป ข้อกำหนดด้านความถี่ของฉันยังคงเหมือนเดิม: 2 MHz แต่จะต้องการ 4 MHz

ดังนั้นฉันรู้สึกว่าฉันควรถามที่นี่: ในการแก้ไขครั้งต่อไปของกระดานฉันควรวางบัฟเฟอร์เนื้อในบรรทัดหรือไม่ การค้นหาบัฟเฟอร์ไม่ใช่ปัญหา แต่การดึงปัจจุบันจะเพิ่มขึ้นอย่างมีนัยสำคัญ - ฉันมี 8 อุปกรณ์บน SPI ซึ่งต้องการการเลิกจ้างและ 3 บรรทัดที่ใช้งานอยู่เสมอสำหรับแต่ละอุปกรณ์ ตัวอย่าง SCK ไปที่อุปกรณ์ทั้ง 8 ตัว อุปกรณ์แต่ละตัวจะมีตัวต้านทานการเลิกจ้าง 100 โอห์ม นั่นคือการวาดปัจจุบันของ 12 * 3.3 / 100 = 390 mA!

ดังนั้นการขอความช่วยเหลือที่ดีที่สุดที่นี่คืออะไร? ฉันควรจะไปที่ 'การยกเลิกแบบแอคทีฟ' โดยใช้ไดโอด Schottky เป็นตัวหนีบหรือไม่?

แก้ไข: เกี่ยวกับความต้านทานบรรทัด: ตามที่ฉันกล่าวก่อนหน้านี้ความตั้งใจที่จะเชื่อมต่อ 4 บอร์ดภายนอก ระยะห่างของ pad to pad เหมือนกันสำหรับทั้งหมด (12 นิ้ว) อย่างไรก็ตามยังมีอุปกรณ์ในบอร์ดเดียวกันกับ MCU - แต่สิ่งเหล่านี้ไม่จำเป็นต้องมีจุดสิ้นสุด - ความยาวประมาณหนึ่งนิ้ว (หรือน้อยกว่า) และมีการโอเวอร์โหลดน้อยมาก (300 หรือ mV) ร่องรอยที่ไปยังบอร์ดภายนอกนั้นมีความยาวและความกว้างเท่ากัน ชั้นที่สองบนกระดานของฉันคือระนาบกราวด์ที่ไม่ต่อเนื่อง


วิธีการทั่วไปคือการวางตัวต้านทานแบบอนุกรมที่ตรงกับความต้านทานเส้น ลองทำอะไรบางอย่างเช่นการยกเลิกแบบอนุกรมที่ 50ohm มันจะช่วยถ้าคุณออกแบบการติดตามและการเชื่อมต่อของคุณให้เป็นอิมพีแดนซ์ที่แน่นอน ลองใช้การยุติแบบอนุกรมที่ต่ำกว่าและดูว่าคุณพบอะไร เขาแนะนำให้หยุดลงที่พื้นดินที่ 32 โอห์มคุณสามารถทำพลังงานที่ต่ำกว่านี้ได้มากใช้กำลังน้อยกว่า 3dB โดยวาง 64 โอห์มไปที่รางไฟฟ้าและ 64ohm ลงบนรางรถไฟ
Kortuk

@Kortuk ตัวต้านทาน 32 โอห์มน่าเสียดายที่ไม่ได้ลดการโอเวอร์โหลดลงอย่างมาก อย่างไรก็ตามรอยเท้ายังอยู่ในสถานที่ที่ไม่ถูกต้อง (มันไม่เคยตั้งใจจะเป็นจุดสิ้นสุด) และไม่ได้อยู่ที่แหล่งที่มาดังนั้นฉันอาจจะไม่แน่ใจ เกี่ยวกับความต้านทานของเส้นเส้นทุกเส้นมีความยาวและความกว้างเท่ากัน พวกเขาวิ่งไปบนพื้นดินอย่างสมบูรณ์ซึ่งอยู่บนชั้นที่ 2
Saad

1
การเลิกจ้างซีรีส์อยู่ที่แหล่งที่มาหากคุณวางไว้ที่การโหลดก็ไม่ได้ทำอะไรเลย ลองวาง 50ohm ลงในแหล่งที่มาของคุณในซีรีส์เพื่อดูผลกระทบ
Kortuk

คุณสามารถคิดได้ตามที่อธิบายไว้ stevenvh มีทั้งบรรทัดทำหน้าที่เป็นตัวเก็บประจุและตัวต้านทานนั้นทำหน้าที่เป็นตัว R สำหรับมันผ่านต่ำถ้าคุณคิดว่ามันเป็นรูปแบบก้อน ตัวต้านทานที่เข้าคู่กันนั้นถ้าคุณดูที่รุ่นของสายส่งหมายความว่าคุณมีคลื่นครึ่งแอมพลิจูดที่เคลื่อนที่และเมื่อมันชนกับปลายอีกด้านหนึ่งและสะท้อนให้เห็นว่ามันกระแทกกับค่าเต็มที่
Kortuk

คำตอบ:


32

การพูดถึงการยุติสัญญาณนั้นเหมือนกับการเปิดกระป๋องเวิร์ม นี่เป็นเรื่องใหญ่ที่ยากที่จะสรุปเพียงไม่กี่ร้อยคำ ดังนั้นฉันจะไม่ ฉันจะทิ้งอะไรไว้มากมายจากคำตอบนี้ แต่ฉันจะเตือนคุณเช่นกัน: มีข้อมูลที่ผิดมากมายเกี่ยวกับการยกเลิกตัวต้านทานบนเน็ต ในความเป็นจริงฉันจะบอกว่าสิ่งที่พบมากที่สุดในเน็ตเป็นสิ่งที่ผิดหรือทำให้เข้าใจผิด บางวันฉันจะเขียนสิ่งที่ยิ่งใหญ่และโพสต์ไว้ในบล็อกของฉัน แต่ไม่ใช่ในวันนี้

สิ่งแรกที่ควรทราบก็คือค่าตัวต้านทานที่ใช้สำหรับการเลิกจ้างของคุณจะต้องเกี่ยวข้องกับอิมพิแดนซ์การติดตามของคุณ ส่วนใหญ่แล้วค่าตัวต้านทานจะเหมือนกับค่าอิมพิแดนซ์การติดตามของคุณ หากคุณไม่ทราบว่าอิมพีแดนซ์ของร่องรอยคืออะไรคุณควรเข้าใจ มีหลายที่มีเครื่องคิดเลขสมรรถภาพออนไลน์ที่มีอยู่ การค้นหาของ Google จะนำมาซึ่งอีกหลายสิบ

ร่องรอย PCB ส่วนใหญ่มีความต้านทาน 40 - 120 โอห์มซึ่งเป็นสาเหตุที่คุณพบว่าตัวต้านทานการเลิกจ้าง 1k ไม่ได้ทำอะไรเลยและตัวต้านทาน 100-ish ohm นั้นดีกว่ามาก

มีการเลิกจ้างหลายประเภท แต่เราสามารถแบ่งได้เป็นสองประเภท: การเลิกจ้างที่มาและสิ้นสุด การยุติแหล่งที่มาอยู่ที่ไดรเวอร์การเลิกจ้างสิ้นสุดอยู่ที่ปลายสุด ภายในแต่ละหมวดหมู่มีการเลิกจ้างหลายประเภท แต่ละประเภทดีที่สุดสำหรับการใช้งานที่แตกต่างกันโดยไม่มีประเภทใดที่ดีสำหรับทุกสิ่ง

การยุติของคุณซึ่งเป็นตัวต้านทานเพียงตัวเดียวที่อยู่ไกลสุดแล้วจริงๆแล้วไม่ค่อยดีนัก ในความเป็นจริงมันผิด ผู้คนทำมัน แต่มันก็ไม่เหมาะ ในอุดมคติแล้วตัวต้านทานจะไปยังรางพลังงานอื่นที่ครึ่งหนึ่งของรางพลังงานของคุณ ดังนั้นถ้าแรงดันไฟฟ้า I / O เป็น 3.3v ดังนั้นตัวต้านทานนั้นจะไม่ไปที่ GND แต่จะมีรางพลังงานอีกอันที่ครึ่งหนึ่งของ 3.3v (หรือ 1.65v) ตัวควบคุมแรงดันไฟฟ้าสำหรับรางนี้จะต้องมีความพิเศษเพราะมันจำเป็นต้องมีแหล่งที่มาและจมในปัจจุบันที่หน่วยงานกำกับดูแลส่วนใหญ่เท่านั้นที่มาในปัจจุบัน หน่วยงานกำกับดูแลที่ทำงานเพื่อการใช้งานนี้จะกล่าวถึงบางอย่างเกี่ยวกับการเลิกจ้างในหน้าแรกของแผ่นข้อมูล

ปัญหาใหญ่ที่มีการเลิกจ้างส่วนใหญ่คือพวกเขาใช้กระแสไฟฟ้าจำนวนมาก มีเหตุผลสำหรับสิ่งนี้ แต่ฉันจะไม่เข้าไป สำหรับการใช้กระแสไฟต่ำเราจะต้องดูการสิ้นสุดของแหล่งที่มา รูปแบบการเลิกจ้างแหล่งที่ง่ายที่สุดและบ่อยที่สุดคือตัวต้านทานแบบอนุกรมที่เอาต์พุตของไดรเวอร์ ค่าของตัวต้านทานนี้จะเหมือนกับค่าอิมพิแดนซ์การติดตาม

การเลิกจ้างที่มาทำงานแตกต่างจากการสิ้นสุดการสิ้นสุด แต่ผลกระทบสุทธิเหมือนกัน มันทำงานโดยการควบคุมการสะท้อนสัญญาณไม่ได้ป้องกันการสะท้อนแสงในสถานที่แรก ด้วยเหตุนี้มันจะทำงานเฉพาะเมื่อเอาต์พุตของไดรเวอร์กำลังป้อนโหลดเดียว หากมีการโหลดหลายครั้งควรทำอย่างอื่น (เช่นใช้การสิ้นสุดแบบจุดสิ้นสุดหรือตัวต้านทานการยกเลิกแบบหลายจุด) ประโยชน์มากมายของการยกเลิกแหล่งที่มาคือมันไม่ได้โหลดไดรเวอร์ของคุณเหมือนการยกเลิกจุดสิ้นสุด

ฉันบอกไปแล้วว่าตัวต้านทานซีรีย์ของคุณสำหรับการยกเลิกแหล่งข้อมูลจะต้องอยู่ที่ไดรเวอร์และจะต้องมีค่าเช่นเดียวกับอิมพิแดนซ์การติดตามของคุณ นั่นเป็นเรื่องธรรมดามาก มีรายละเอียดสำคัญหนึ่งที่ควรทราบเกี่ยวกับเรื่องนี้ ไดรเวอร์ส่วนใหญ่มีความต้านทานต่อเอาต์พุตของมัน ความต้านทานนั้นมักจะอยู่ในช่วง 10-30 โอห์ม ผลรวมของความต้านทานเอาต์พุตและตัวต้านทานของคุณจะต้องเท่ากับอิมพีแดนซ์ร่องรอยของคุณ สมมติว่าการติดตามของคุณคือ 50 โอห์มและไดรเวอร์ของคุณมี 20 โอห์ม ในกรณีนี้ตัวต้านทานของคุณจะเป็น 30 โอห์มตั้งแต่ 30 + 20 = 50 ถ้าแผ่นข้อมูลไม่ได้บอกว่าอิมพีแดนซ์ / ความต้านทานเอาต์พุตของไดร์เวอร์คืออะไรคุณสามารถสันนิษฐานได้ว่าเป็น 20 โอห์ม - จากนั้นดูสัญญาณบน PCB และดูว่าจำเป็นต้องปรับหรือไม่

อีกสิ่งที่สำคัญ: เมื่อคุณดูสัญญาณเหล่านี้ในขอบเขตที่คุณต้องสอบสวนที่รับ การสำรวจที่อื่นจะทำให้รูปคลื่นบิดเบี้ยวและหลอกให้คุณคิดว่าสิ่งต่าง ๆ แย่กว่าที่เป็นจริง ตรวจสอบให้แน่ใจว่าคลิปกราวด์ของคุณสั้นที่สุด

สรุป: เปลี่ยนไปใช้การยุติแหล่งที่มาด้วยตัวต้านทาน 33 ถึง 50 โอห์มและคุณควรจะดี ใช้คำเตือนปกติ


เดวิดขอบคุณมากสำหรับคำตอบที่ครบถ้วนสมบูรณ์ ทั้งหมดนี้ใช้งานได้ดี แต่ฉันคิดว่ามันมีความซับซ้อนมากกว่าเดิมในระบบของฉัน - สาย SPI เปลี่ยนจากบอร์ดหนึ่งไปอีกบอร์ดหนึ่ง ดังนั้นการประมาณความต้านทานของเส้นอาจเป็นเรื่องยาก - สัญญาณ traces ประมาณ 3 "บนกระดานหลักจะต้องผ่านสายริบบิ้น 6" จากนั้นเดินทางไปตามรอย 3 "อีกครั้งจนกว่าจะถึงปลายทางสายไฟของสายริบบิ้นเป็นทางเลือก กราวด์ (เช่น SCK, GND, MOSI, GND และอื่น ๆ ) ข้อเสนอแนะ 30-20 โอห์มของคุณยังคงอยู่ใช่หรือไม่
Saad

@Saad สิ่งที่ฉันทำในกรณีเช่นนี้ (และฉันทำสิ่งนี้มาก) คือการใช้ตัวต้านทานตัวเดียวที่ไดรเวอร์และปรับแต่งค่าของมันเมื่อต้นแบบถูกสร้างขึ้น มันเป็นการประนีประนอม แต่มันได้ผล จริง ๆ แล้วฉันมีหลายระบบในขณะนี้ที่รัน SPI บนสายเคเบิลขนาด 1 ฟุตที่มีร่องรอย 3-6 นิ้วในแต่ละ PCB บางส่วนทำงานที่ 30 MHz! ใช่เริ่มต้นด้วย 33 หรือ 47 โอห์มแล้วบิดจากตรงนั้น

3
+1 แล้ว แต่ไดอะแกรมที่แสดงวิธีเชื่อมต่อการเลิกจ้างแหล่งที่มา (เช่นในซีรีย์ไม่ใช่จากบรรทัดสู่พื้น) จะมีประโยชน์มาก
โฟตอน

16

เนื่องจากคุณกำลังไปในระยะทางสั้น ๆ ฉันไม่คิดว่าตัวต้านทานการเลิกจ้างเป็นความคิดที่ดี อย่างที่คุณพบพวกเขาจะต้องทำงานค่อนข้างต่ำแล้วเส้นจะดึงกระแสมากและแรงดันจะลดลง 2 ถ้าคุณขับเส้นที่มีอิมพีแดนซ์เดียวกัน

อัตรานาฬิกาของคุณนั้นไม่สูงมากดังนั้นความถี่ที่คุณต้องการเพื่อรองรับอัตราบิต 4 MHz แม้ไม่ใช่สิ่งที่ก่อให้เกิดปัญหา ปัญหาคือคุณมีขอบขับรถอย่างรวดเร็วซึ่งมีเสียงประสานใน 100s ของ MHz ซึ่งทำให้เกิดปัญหา ที่ความถี่ที่คุณต้องการคุณมีระบบก้อนไม่ใช่สายส่ง สิ่งนี้ทำให้ง่ายขึ้นมาก

วิธีการแก้ปัญหาคือการลดทอนความถี่สูงที่คุณไม่ต้องการ แต่ก่อให้เกิดปัญหา สิ่งนี้สามารถทำได้ด้วยตัวกรองความถี่ต่ำแบบง่ายๆผ่าน RC ทันทีหลังจากสิ่งใดก็ตามที่ขับสาย นี่เป็นส่วนหนึ่งที่ตัวต้านทาน 330 330 กำลังทำอยู่ พวกมันเป็นฟิลเตอร์กรองความถี่ต่ำที่มีความจุของกาฝากของเส้น เห็นได้ชัดว่าไม่เพียงพอและ / หรือไม่สามารถคาดเดาได้เพียงพอ สิ่งนี้สามารถแก้ไขได้ด้วยความจุที่จงใจในแต่ละบรรทัด

คุณต้องการรันบัสด้วยความเร็ว 4 MHz ซึ่งหมายความว่าสัญญาณที่เร็วที่สุดที่มันต้องการใช้คือคลื่นสี่เหลี่ยม 4 MHz นั่นหมายถึงความยาวของแต่ละระดับคือ 125 ns สมมติว่าเราต้องการให้ค่าคงที่เป็นเวลาอย่างน้อย 4 ค่าซึ่งหมายถึงเวลาตกตะกอน 98% นั่นหมายถึงค่าคงที่เวลาสูงสุดที่เราต้องการอนุญาตคือ 31 ns 31ns / 330Ω = 94 pF นั่นคือโหลดทั้งหมดของตัวต้านทาน 330 Ωซีรีส์ที่คุณต้องการเพื่อให้ได้ค่าคงที่ 31 ns จะมีความสามารถของกาฝากที่คุณไม่สามารถคาดการณ์ได้เสมอดังนั้นฉันจะเห็นว่าสิ่งต่าง ๆ มีขนาด 47 pF อย่างไร ที่เหลือห้องสำหรับ 10-20 pF ของความจุที่ซ่อนอยู่ในขณะที่ไม่เกินค่าคงที่เวลาสูงสุดที่เราอนุญาต

ตัวต้านทานแบบอนุกรมควรใกล้เคียงกับพินทั้งหมดที่ขับรถบัส นี่จะถือว่าหมุดอื่น ๆ ทั้งหมดบนบัสเป็นอินพุต CMOS เมื่อมีการขับขี่ สำหรับเส้นที่ขับด้วยหมุดเดียว (เช่นเดียวกับสายนาฬิกาซึ่งถูกควบคุมโดยมาสเตอร์เท่านั้น) ให้ใส่ 47 pF ให้ใกล้ที่สุดหลังจากตัวต้านทาน สำหรับเส้นที่สามารถขับเคลื่อนด้วยพินที่แตกต่างกันในเวลาที่ต่างกัน (เช่น MISO) ให้ใส่ 47 pF ใกล้กับกึ่งกลางของไดรเวอร์ทั้งหมด แต่ละบรรทัดได้รับตัวเก็บประจุ 47 pF เพียงตัวเดียวไม่ว่าจะมีไดรเวอร์เท่าใด แต่ก็มีตัวต้านทานหนึ่งตัวสำหรับไดรเวอร์แต่ละตัว

การคำนวณข้างต้นมีไว้เพื่อเป็นแนวทางที่ดีในการเริ่มต้น ไม่ทราบพารามิเตอร์บางตัวและคิดล่วงหน้า เริ่มต้นด้วย 330 Ωในซีรีส์และ 47 pF ลงกราวด์ แต่อย่ากลัวที่จะเปลี่ยนแปลงสิ่งต่าง ๆ ตามผลลัพธ์ที่สังเกตได้จริง


2

ในกรณีที่ไม่มีการสิ้นสุดใด ๆ เมื่อสัญญาณถูกส่งจากแหล่งความต้านทานต่ำมากไปยังตัวรับความต้านทานสูงมากสัญญาณจะเด้งกลับไปกลับมาซ้ำ ๆ เฟสของสัญญาณจะพลิก 180 องศาในแต่ละรอบการเดินทาง

หากไม่มีใครต้องการให้สัญญาณสะท้อนเมื่อพวกเขาไปถึงที่หมายปลายทางอาจใช้จุดสิ้นสุดปลายทาง สิ่งนี้จะทำให้สัญญาณถูกดูดซับอย่างสะอาดที่ปลายทางโดยไม่มีการสะท้อน แต่การใช้งานทั่วไปจำนวนมากจะทำให้แหล่งที่มาเห็นโหลด DC ที่สำคัญ

ในหลายกรณีหนึ่งอาจบรรลุผลที่เป็นประโยชน์ในทางปฏิบัติหากมีการแทรกตัวต้านทานแบบอนุกรมที่แหล่งสัญญาณ หากไม่มีตัวรับสัญญาณที่ปลายสุดของบรรทัดสัญญาณจะถูกสะท้อนเมื่อไปถึงที่นั่น แต่การสะท้อนใด ๆ ดังกล่าวจะถูกดูดซับโดยแหล่งกำเนิดแทนที่จะสะท้อนกลับอีกครั้ง โปรดทราบว่าการเลิกจ้างแหล่งที่มาไม่ได้กำหนดโหลด DC บนอุปกรณ์ที่ขับสาย

ในกรณีที่ไม่มีการเลิกจ้างหากสายถูกขับเคลื่อนด้วยความต้านทานต่ำและได้รับความต้านทานสูงอุปกรณ์รับอาจเห็นแรงดันไฟฟ้าสูงกว่าแรงดันไฟฟ้าในการขับขี่ (ในทางทฤษฎีเพิ่มแรงดันเป็นสองเท่า ศูนย์และความต้านทานที่ได้รับนั้นไม่มีที่สิ้นสุด) หากแหล่งจ่ายหรือตัวรับสัญญาณถูกยกเลิกอย่างเหมาะสมแรงดันไฟฟ้าที่ได้รับจะเท่ากับแรงดันไฟฟ้าของไดรฟ์ (ถ้าแหล่งกำเนิดความต้านทานศูนย์กำลังขับตัวรับความต้านทานที่เหมาะสมหรือแหล่งความต้านทานที่เหมาะสมกำลังขับตัวรับความต้านทานไม่มีที่สิ้นสุด แรงดันไฟฟ้าที่ได้รับจะเท่ากับแรงดันไดรฟ์) หากทั้งสองอย่างถูกยกเลิกอย่างถูกต้องรับแรงดันไฟฟ้าจะเป็นครึ่งหนึ่งของแรงดันไดรฟ์

การจำลองที่นี่แสดงให้เห็นถึงสิ่งนี้ มันรวมถึงเครื่องกำเนิดพัลส์ที่ผลิตสายโซ่ของพัลส์ประมาณ 49 ครั้งต่อวินาที, สองสายล่าช้า 5ms ในซีรีส์ (เวลาไปกลับ 1/50 วินาที), และตัวต้านทานการยกเลิกแบบสลับได้ที่ปลายทั้งสอง

วงจรประกอบด้วยสวิตช์สาม SPDT คลิกที่หนึ่งเพื่อเปลี่ยนสถานะ สวิตช์ล่างสองสวิตช์ควบคุมแหล่งที่มาและการยกเลิกปลายทาง สำหรับสิ่งเหล่านั้น "up" หมายถึงการสิ้นสุดที่ดีและ "down" หมายถึงไม่ดี สวิทช์ด้านบนควบคุมว่าสายควรถูกขับเคลื่อนด้วยเครื่องกำเนิดพัลส์อัตโนมัติหรือโดยอินพุตตรรกะแบบแมนนวล หากต้องการส่งพัลส์ลงบรรทัดด้วยตนเองให้สลับสวิตช์ด้านบน "ลง" แล้วนาฬิกา "L" ถัดจากสวิตช์

สัญญาณถึงปลายทางจะสะอาดถ้าทั้งแหล่งที่มาหรือปลายทางอย่างถูกต้องถูกยกเลิก หากทั้งสองอย่างถูกยกเลิกแรงดันสัญญาณที่ได้รับจะเป็นครึ่งหนึ่งของแรงดันไฟฟ้าของไดรฟ์ หากหนึ่งถูกยกเลิกอย่างถูกต้อง แต่อื่น ๆ ไม่ได้แรงดันไฟฟ้าที่ได้รับจะเป็น 91% ของแรงดันไฟฟ้าไดรฟ์ (ตัวต้านทาน "ไม่ดี" เป็น "ผิด" โดยปัจจัยสิบและไม่สามารถดูดซับได้ (10/11) ของพลังงาน) หากไม่มีการยกเลิกแรงดันไฟฟ้าที่ได้รับจะเริ่มต้นที่ประมาณ 1.656 เท่าของแรงดันไฟฟ้าของไดรฟ์ แต่การสะท้อนแสงแปลก ๆ จะปรากฏขึ้นทุก ๆ 20ms


1

ลองใช้การเลิกจ้าง AC (ตัวอย่างเช่นตัวเก็บประจุ 470 pF ในซีรีย์ที่มีตัวต้านทาน 110 โอห์ม) และเชื่อมต่อซีรี่ส์นี้จากที่เอาต์พุตของปลายทางนาฬิกา SPI ไปที่กราวด์ การเลิกจ้างจะวาดประมาณ 30 mA สำหรับความยาวของเวลาที่บางสิ่งบางอย่างสามารถทำได้ง่าย แต่ไม่มีกระแสไฟฟ้าเป็นศูนย์ สำหรับสายข้อมูลแบบสองทิศทางจะมีความยุ่งยากเล็กน้อย ฉันใส่การเลิกจ้าง 470 pF, 220 Ohm AC ทั้งในส่วนปลาย master และ slave ของสายข้อมูล SPI และใช้งานได้นั่นคือการโอเวอร์โหลดที่ยอมรับได้และ undershoot

ฉันยินดีรับฟังความคิดเห็นเกี่ยวกับเรื่องนี้


0

ไม่ต้องลึกลงไปในรายละเอียดมากไปกว่าการโพสต์ก่อนหน้านั้นตอกตะปูบนหัว มันลงมาที่ SPI ว่าเป็นสายที่ไม่สมดุล แม้ว่าคุณจะมีความถี่สัญญาณนาฬิกาต่ำ แต่ขอบของนาฬิกาก็ยังต้องได้รับการเคารพ ในกรณีของฉันพบตัวต้านทาน 470 โอห์มในซีรีส์กับสาย SPI CLK ที่ฝั่งมาสเตอร์ การถอดตัวต้านทานนั้นและการใช้งานโซลูชันที่แนะนำสำหรับสายที่ไม่สมดุลจาก Lattice และคำแนะนำที่โพสต์ไว้ด้านบน (ฉันทำได้เพียงครึ่งหนึ่งของโซลูชันจากด้าน Slave tweaked ฝาครอบตัวกรองตาม) ฉันสามารถขยายความยาวของสายเคเบิล SPI 10 ซม. ถึง 160 ซม. โดยไม่มีข้อผิดพลาด comms:

การปรับปรุงภูมิคุ้มกันเสียงรบกวนสำหรับส่วนต่อประสานอนุกรม : เอกสารทางเทคนิค Lattice Semiconductor (กรกฎาคม 2014)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.