Resistor secara seri dengan Tx dan Rx

10

Saya membuat papan sendiri dan menggunakan ATmega 328 dengan bootloader Arduino. Saya memiliki saklar DIP untuk memilih salah satu chip FTDI (untuk pemrograman) yang akan dihubungkan ke ATMega's Rx dan Tx, atau GPS yang menghasilkan serial untuk dihubungkan. Saya melihat skema ini untuk referensi: http://arduino.cc/en/uploads/Main/ArduinoNano30Schematic.pdf

Mengapa ada 2 resistor pada Rx dan Tx yang berasal dari ATMega? Apakah saya perlu itu hanya untuk koneksi ke chip FTDI, atau apakah mereka perlu ada di sana untuk GPS juga?

aloishis89
sumber
Saya akan mengatakan mereka dimaksudkan untuk menjadi resistor terminasi, tetapi jika Anda memiliki impedansi 1K pada jejak PCB Anda memiliki masalah yang lebih besar.
drxzcl
1
Mengapa tidak bertanya kepada orang yang mendesainnya?
endolith

Jawaban:

10

Salah satunya ada untuk mencegah kerusakan yang dapat terjadi jika AVR memiliki RxD yang diprogram sebagai output, pin pada kedua perangkat dapat rusak jika itu terjadi karena pin AVR dapat sumber dan menenggelamkan cukup banyak arus. Saya tidak berpikir bahwa resistor lain diperlukan.

Leon Heller
sumber
Jika Anda akan menambahkan perangkat keras untuk mengimbangi kemungkinan bug firmware, maka daftar tidak pernah berakhir. Saya tidak tahu banyak tentang AVR, tetapi kebanyakan mikrokontroler bangun dengan pin dalam keadaan impedansi tinggi untuk alasan ini. Pin umum tidak menjadi output sampai firmware secara eksplisit membuatnya. Terkadang perangkat keras tambahan untuk menangani kemungkinan bug masuk akal dalam prototipe, tetapi untuk produk-produk bervolume tinggi dengan firmware yang diuji, ini hanyalah pemborosan. Sebagian besar output digital akan bertahan baik ketika macet bersama, meskipun saya tidak sengaja melakukan ini.
Olin Lathrop
8
Arduino umumnya digunakan oleh orang-orang seperti siswa seni dan desain, maka kebutuhan akan perlindungan seperti itu. OP seharusnya tidak perlu resistor di sana.
Leon Heller
1
Saya pikir itu mungkin menjadi mungkin untuk mengatur Rx pada FT232 sebagai output, dalam mode bit-bang.
Connor Wolf
2
@Olin Repurposing pin sebagai pin output cukup umum, bisa menggunakannya untuk pemrograman dan IO umum adalah fitur. PORTD adalah satu-satunya port penuh 8 bit yang Anda miliki di arduino untuk dimainkan sehingga menggunakan kembali garis tx / rx adalah tarif standar jika Anda tidak perlu berbicara serial selama operasi normal.
John Meacham
5

Sepertinya tidak ada alasan bagus untuk resistor itu. Kedua bagian pada skema itu tampaknya berjalan pada 5V dengan landasan bersama. Seharusnya tidak perlu resistor di garis antara dua chip.

Jika garis tidak terhubung, maka mungkin ada beberapa titik untuk meletakkan resistor secara seri untuk melindungi bagian-bagian on-board, tetapi sepertinya itu bukan apa yang terjadi dalam skema itu.

Ingatlah ini adalah skema Arduino. Itu berarti ada peluang bagus siapa pun yang mendesainnya tidak melakukan ini secara profesional. Ada banyak takhayul di luar sana. Hanya karena ada sesuatu di internet tidak berarti itu dilakukan dengan benar.

Olin Lathrop
sumber
6
Arduino secara khusus ditujukan untuk orang yang baru mengenal hal ini. Oleh karena itu, merancang perangkat keras menjadi kesalahan perangkat lunak toleran yang dapat menyebabkan konflik bus adalah akal sehat. Saya bisa melihat alasan yang sangat baik untuk resistor - Orang mungkin tidak sengaja mengatur garis TX / RX ke output ketika mereka seharusnya tidak.
Connor Wolf
Ada alasan bagus untuk resistor ada di sana, silakan periksa jawaban lainnya.
Marcelo
5

Ini adalah pertanyaan lama dan sudah dijawab, tetapi dalam salah satu jawaban saya tidak menemukan salah satu alasan yang baik dan mungkin salah satu alasan paling penting agar resistor ada di sana.

Meskipun kebanyakan orang menggunakan RX / TX hanya untuk menghubungkan Arduino ke PC mereka untuk pemrograman chip dan / atau melakukan debugging serial, yang lain menggunakan pin RX / TX Arduino untuk berkomunikasi dengan perangkat seri lainnya. Dalam hal ini, chip FTDI dan perangkat lain ini akan mengalami konflik dan sangat mungkin akan merusak keduanya karena korsleting. Resistor ini "memisahkan" FTDI dari perangkat lain ketika ada satu yang terhubung ke AVR RX / TX pin, melindungi keduanya dan memungkinkan mereka untuk dihubungkan dan dihubungkan secara bersamaan.

Satu hal yang perlu diingat adalah bahwa, sekali perangkat serial lain terhubung ke pin RX / TX Arduino, resistor akan menutupi level logis dari FTDI dengan cara yang sama yang terjadi dengan resistor pullup / pull-down, jadi, perangkat eksternal akan memiliki "preferensi" daripada komunikasi FTDI.

Marcelo
sumber
1
inilah yang ingin saya jawab, dan sangat tepat karena saya telah mencari subjek ini sebelumnya.
Elektron
Maksudmu seperti ini? electronics.stackexchange.com/questions/77562/…
Pejalan kaki
4

Ini bisa dilakukan untuk mencegah perangkat off board lainnya memberi daya pada Atmel saat dimatikan. Karena arus yang berjalan melalui dioda penjepit internal Atmel ...

pengguna57449
sumber
Selamat datang di EE.SE! Umumnya kami menyarankan pengguna untuk tidak menjawab pertanyaan lama kecuali jika pertanyaannya kredibel dan tidak memiliki jawaban. Dengan itu, pertanyaan spesifik ini sudah lebih dari tiga tahun dan memiliki jawaban yang diterima. Di masa mendatang, cobalah untuk tidak menjawab pertanyaan yang lebih lama karena pertanyaan itu akan membawa ke bagian atas umpan pertanyaan di halaman depan dan memberikan tampilan yang berantakan ke EE.SE. Terima kasih!
Funkyguy
2
@ Funkyguy jawaban yang diterima adalah, meskipun bukan pengamatan yang tidak benar, mungkin bukan alasan yang sebenarnya.
Chris Stratton
2

Menambahkan resistor seri bernilai kecil (sekitar 100 ohm) pada sinyal yang tidak aktif dapat mengurangi emisi RF. Resistor pada skema bergambar tampaknya tidak ditempatkan dengan baik untuk itu. Penggunaan lain untuk resistor adalah sebagai mux yang sangat murah. Jika chip FTDI mencoba untuk menggerakkan pin RX Arduino dan tidak ada yang mencoba di header, chip FTDI akan "menang", tetapi jika sesuatu di header mencoba untuk menggerakkan pin itu tanpa resistor seri, perangkat di header akan " menang". Itu mungkin menjelaskan beberapa kegunaan untuk resistor pada pin RX Arduino. Tidak yakin apa tujuan dari TX, berfungsi, kecuali, kecuali ada koneksi eksternal untuk kawat "TX" yang terhubung ke pin RX FTDI dan saya tidak melihatnya (jika ada koneksi eksternal seperti itu,

supercat
sumber
2

Saya telah melihat 100 ohm resistor pada bus I2C dan UART sebelumnya, mereka sering untuk perlindungan ESD. Mereka bekerja bersama dengan dioda penjepit bawaan di MCU.

Thomas O
sumber