ตัวต้านทานในอนุกรมที่มี Tx และ Rx


10

ฉันทำบอร์ดของตัวเองและใช้ ATmega 328 กับ Arduino bootloader ฉันมีสวิตช์ DIP เพื่อเลือกชิป FTDI (สำหรับการเขียนโปรแกรม) เพื่อเชื่อมต่อกับ Rega และ Tx ของ ATMega หรือ GPS ที่เอาต์พุตอนุกรมที่จะเชื่อมต่อ ฉันกำลังดูแผนผังนี้สำหรับการอ้างอิง: http://arduino.cc/en/uploads/Main/ArduinoNano30Schematic.pdf

เหตุใดจึงมีตัวต้านทาน 2 ตัวสำหรับ Rx และ Tx ที่มาจาก ATMega ฉันจำเป็นต้องใช้สิ่งเหล่านี้เพื่อเชื่อมต่อกับชิป FTDI หรือไม่หรือต้องมี GPS ด้วยหรือไม่


ฉันจะบอกว่าพวกเขาตั้งใจจะเป็นตัวต้านทานการเลิกจ้าง แต่ถ้าคุณมีความต้านทาน 1K ในการติดตาม PCB คุณจะมีปัญหามากขึ้น
drxzcl

1
ทำไมไม่ถามคนที่ออกแบบมัน?
endolith

คำตอบ:


10

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


หากคุณกำลังจะเพิ่มฮาร์ดแวร์เพื่อชดเชยข้อบกพร่องของเฟิร์มแวร์ที่เป็นไปได้รายการจะไม่สิ้นสุด ฉันไม่ค่อยรู้เกี่ยวกับ AVR มากนัก แต่ไมโครคอนโทรลเลอร์ส่วนใหญ่ตื่นขึ้นมาด้วยพินในสภาพที่มีความต้านทานสูงด้วยเหตุผลนี้ หมุดทั่วไปจะไม่กลายเป็นเอาท์พุทจนกว่าเฟิร์มแวร์จะทำอย่างชัดเจน บางครั้งฮาร์ดแวร์พิเศษที่จะจัดการกับข้อบกพร่องน่าจะเป็นแบบอย่างที่ดี แต่สำหรับผลิตภัณฑ์ที่มีปริมาณมากที่มีเฟิร์มแวร์ทดสอบนี่เป็นเพียงขยะ เอาท์พุทดิจิตอลส่วนใหญ่จะอยู่รอดได้ดีเมื่อติดกันแม้ว่าฉันจะไม่ทำสิ่งนี้โดยเจตนา
Olin Lathrop

8
Arduino โดยทั่วไปแล้วจะใช้โดยคนเช่นนักเรียนศิลปะและการออกแบบดังนั้นความต้องการการป้องกันเช่นนี้ OP ไม่จำเป็นต้องมีตัวต้านทาน
Leon Heller

1
ฉันคิดว่าอาจเป็นไปได้ที่จะตั้งค่า Rx บน FT232 เป็นเอาต์พุตในโหมด bit-bang
Connor Wolf

2
@Olin การนำพินกลับมาใช้เป็นพินที่ส่งออกเป็นเรื่องปกติมากความสามารถในการใช้สำหรับทั้งการเขียนโปรแกรมและ IO ทั่วไปเป็นคุณสมบัติ PORTD เป็นพอร์ต 8 บิตเต็มเพียงตัวเดียวที่คุณมีใน arduino ที่จะเล่นด้วยดังนั้นการนำสาย tx / rx กลับมาใช้ใหม่เป็นค่ามาตรฐานหากคุณไม่จำเป็นต้องพูดซีเรียลในระหว่างการทำงานปกติ
John Meacham

5

ดูเหมือนจะไม่มีเหตุผลที่ดีสำหรับตัวต้านทานเหล่านั้น ทั้งสองส่วนในแผนผังนั้นดูเหมือนว่าจะทำงานบน 5V ที่มีพื้นดินทั่วไป ไม่จำเป็นต้องมีตัวต้านทานในบรรทัดระหว่างสองชิป

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

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


6
Arduino มีไว้สำหรับผู้ที่ยังใหม่กับสิ่งนี้ ดังนั้นการออกแบบฮาร์ดแวร์ให้ผิดพลาดของซอฟต์แวร์ซึ่งอาจทำให้เกิดข้อขัดแย้งของบัสได้ ฉันเห็นเหตุผลที่ดีมากสำหรับตัวต้านทาน - ผู้คนอาจตั้งค่าบรรทัด TX / RX โดยไม่ตั้งใจไปยังเอาต์พุตเมื่อไม่ควรทำ
Connor Wolf

มีเหตุผลที่ดีสำหรับตัวต้านทานที่จะอยู่โปรดตรวจสอบคำตอบอื่น ๆ
Marcelo

5

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

แม้ว่าคนส่วนใหญ่ใช้ RX / TX เท่านั้นเพื่อเชื่อมต่อ Arduino กับพีซีของพวกเขาสำหรับการเขียนโปรแกรมชิปและ / หรือทำการดีบักแบบอนุกรม แต่คนอื่น ๆ ใช้หมุด RX / TX ของ Arduino เพื่อสื่อสารกับอุปกรณ์อนุกรมอื่น ๆ ในกรณีนี้ชิป FTDI และอุปกรณ์อื่น ๆ นี้จะขัดแย้งกันและมีโอกาสมากที่จะเกิดความเสียหายทั้งเนื่องจากการลัดวงจร ตัวต้านทานเหล่านี้ "แยก" FTDI จากอุปกรณ์อื่นเมื่อมีการเชื่อมต่อกับหมุด AVR RX / TX ช่วยปกป้องทั้งสองและทำให้พวกเขาสามารถเชื่อมต่อและเชื่อมต่อได้พร้อมกัน

สิ่งหนึ่งที่ต้องจำคือเมื่ออุปกรณ์อนุกรมอื่นเชื่อมต่อกับหมุด RX / TX ของ Arduino ตัวต้านทานจะปิดบังระดับตรรกะจาก FTDI ด้วยวิธีที่คล้ายกันที่เกิดขึ้นกับตัวต้านทาน pullup / pulldown ดังนั้นอุปกรณ์ภายนอกจะ มี "การตั้งค่า" ผ่านการสื่อสาร FTDI


1
ตรงนี้เป็นสิ่งที่ฉันต้องการที่จะตอบและมันแม่นยำมากตั้งแต่ฉันได้ค้นหาเรื่องนี้มาก่อน
อิเล็กตรอน

คุณหมายถึงอย่างนี้? electronics.stackexchange.com/questions/77562/…
Passerby

4

มันสามารถทำได้เพื่อป้องกันไม่ให้อุปกรณ์ off-board อื่น ๆ กำลังเปิด Atmel เมื่อมันถูกปิด เนื่องจากกระแสที่ไหลผ่านแคลมป์ไดโอดภายในของ Atmel ...


ยินดีต้อนรับสู่ EE.SE! โดยทั่วไปเราแนะนำให้ผู้ใช้หลีกเลี่ยงการตอบคำถามเก่า ๆ เว้นแต่คำถามนั้นน่าเชื่อถือและไม่มีคำตอบ เมื่อกล่าวถึงนี้คำถามเฉพาะนี้มีอายุเกินสามปีและมีคำตอบที่ยอมรับได้ ในอนาคตโปรดพยายามอย่าตอบคำถามเก่า ๆ เพราะมันจะนำคำถามไปที่ด้านบนสุดของฟีดคำถามในหน้าแรกและให้ความยุ่งเหยิงกับ EE.SE ขอบคุณ!
Funkyguy

2
@Funkyguy คำตอบที่ยอมรับคือในขณะที่ไม่ใช่การสังเกตที่ไม่จริงอาจไม่ใช่เหตุผลที่แท้จริง
Chris Stratton

2

การเพิ่มตัวต้านทานแบบอนุกรมมูลค่าเล็ก ๆ (100 โอห์มหรือมากกว่านั้น) บนสัญญาณที่ออกนอกบอร์ดสามารถลดการปล่อย RF ตัวต้านทานในแผนผังที่แสดงนั้นดูจะไม่อยู่ในตำแหน่งที่ดี การใช้ตัวต้านทานอีกตัวก็คือ mux ที่ราคาถูกจริงๆ หากชิป FTDI พยายามขับหมุด RX ของ Arduino และไม่มีอะไรในส่วนหัวพยายามชิป FTDI จะ "ชนะ" แต่ถ้ามีบางอย่างในส่วนหัวพยายามขับหมุดนั้นโดยไม่มีตัวต้านทานแบบอนุกรมอุปกรณ์บนส่วนหัวจะ " ชนะ". นั่นอาจอธิบายถึงประโยชน์บางประการสำหรับตัวต้านทานบนขา RX ของ Arduino ไม่แน่ใจว่าจุดประสงค์ใดบน TX ให้บริการเว้นแต่ว่าจะมีการเชื่อมต่อภายนอกอื่นสำหรับสาย "TX" ที่ต่อสายไปที่หมุด RX ของ FTDI และฉันไม่เห็นมัน (ถ้ามีการเชื่อมต่อภายนอกเช่นนั้น


2

ฉันเคยเห็นตัวต้านทาน 100 โอห์มบน I2C และรถเมล์ UART มาก่อนพวกเขามักจะป้องกัน ESD พวกเขาทำงานร่วมกับไดโอดในตัวใน MCU

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