Saya pernah mendengar bahwa membiarkan pin mengambang di MCU ketika dikonfigurasi sebagai input (vs output default) buruk untuk pin, dan akhirnya dapat menyebabkan pin gagal sebelum waktunya. Apakah ini benar? NB dalam contoh saya pin melayang di suatu tempat antara 0,3V dan 1,3V karena sinyal video yang masuk. Ini kadang-kadang jatuh di zona tak bertuan 0.8V - 2.0V saat beroperasi dari 3.3V.
microcontroller
pins
Thomas O
sumber
sumber
Jawaban:
Masalah:
Membiarkan pin yang dikonfigurasikan sebagai input mengambang berbahaya karena Anda tidak dapat memastikan keadaan pin. Seperti yang Anda sebutkan, karena sirkuit Anda, pin Anda kadang-kadang RENDAH atau kadang-kadang di tanah tak bertuan atau terkadang bisa menjadi TINGGI.
Hasil: Pada
dasarnya, input mengambang AKAN pasti menyebabkan operasi chip yang tidak menentu atau perilaku yang tidak terduga. Saya telah memperhatikan beberapa chip membeku dengan hanya menggerakkan tangan saya lebih dekat ke papan (saya tidak memakai gelang ESD) atau beberapa akan memiliki perilaku startup yang berbeda setiap kali papan akan powerup.
Mengapa:
Ini terjadi hanya karena jika ada gangguan eksternal pada pin itu, pin tersebut akan berosilasi, yang akan menguras daya karena gerbang logika CMOS menguras daya ketika mereka berganti status.
Solusi:
Kebanyakan micros saat ini memiliki pullup internal juga, sehingga dapat mencegah perilaku ini terjadi. Pilihan lain adalah mengkonfigurasi pin sebagai output sehingga tidak mempengaruhi internal.
sumber
Ini sedikit lebih buruk daripada hanya berada dalam keadaan yang tidak diketahui, atau beralih tanpa kebutuhan. Sirkuit digital saat ini sebagian besar jenis CMOS, dengan transistor yang beralih dari sisi tinggi dan rendah; ketika kita memiliki 1s dan 0s yang jelas, keduanya mati atau jenuh, dua keadaan paling efisien untuk transistor. Di antara keduanya, bagaimanapun, adalah wilayah operasi linier; ini digunakan untuk amplifier analog, tetapi tidak seefisien ekstrem - yang berarti lebih banyak daya terbuang sebagai panas dalam transistor. Dalam kasus terburuk, baik transistor sisi tinggi dan rendah bocor demikian (karena pin sebenarnya tidak tinggi atau rendah), dan mereka kemudian dapat bergabung untuk menyebabkan arus penting dalam chip ketika mereka mencoba untuk menggerakkan keadaan internal keduanya tinggi dan rendah - mungkin melakukan hal yang sama ke gerbang berikutnya dalam reaksi berantai. Panas bisa menjadi masalah bahkan jika listriknya tidak. Solusi IntelliChick masih berlaku.
Untuk pin yang juga terhubung ke ADC, beberapa mikrokontroler menawarkan fungsi untuk menonaktifkan buffer input digital, untuk mencegah masalah ini dan kebocoran yang merusak sinyal.
sumber
Dalam praktiknya efek utamanya adalah peningkatan konsumsi daya. Jika pin benar-benar mengambang dan tidak terhubung ke beberapa sumber tegangan tak tentu, osilasi mungkin terjadi, yang juga meningkatkan penarikan daya dapat menimbulkan kebisingan ke bagian lain dari sistem. Setiap pin yang memiliki kemampuan untuk digunakan untuk input ADC atau komparator akan memiliki fasilitas untuk memutuskan buffer input digital untuk menghindari masalah ini. (DIDR pada AVR, ADCON1 / ANSEL di PIC)
sumber
Umumnya adalah ide yang buruk untuk membiarkan pin input mengambang karena hal ini dapat menyebabkan:
a) Masalah fungsional - keadaan input tidak dikenal, beralih (misalnya dapat memicu interupsi dengan ISR yang tidak ditentukan yang akan menggantung prosesor)
b) Konsumsi daya meningkat - kemungkinan gerbang input mirip dengan CMOS inverter. Dengan struktur ini ketika input cukup jauh dari kedua rel (misalnya pada setengah pasokan) arus silang yang signifikan akan mengalir terus-menerus.
c) Jika arus cross-over akan mengalir, fenomena yang dikenal sebagai injeksi hot carrier dapat benar-benar mengurangi masa pakai perangkat. Gerbang input mungkin dirancang hanya untuk switching normal dan bukan konduksi kontinu sehingga perangkat dapat gagal serempak. Namun perlu dicatat bahwa seseorang harus menempatkan perangkat dalam kondisi seperti itu selama ratusan jam pada suhu tinggi agar ini terjadi.
Perhatikan a) dan b) adalah masalah nyata yang kemungkinan besar akan ditemui. Adapun c) kemungkinan kecil masalah terjadi tetapi mengapa mengambil risiko?
sumber
Input akan beralih antara 0 dan 1 berdasarkan EMI apa pun. Saya tidak yakin apakah itu akan menyebabkan input gagal, tetapi itu akan menyebabkan lebih banyak daya yang digunakan karena transisi dari 0 ke 1 ke 0.
Atur ke output dan lakukan dengan itu.
sumber
Beberapa perangkat CMOS kecepatan tinggi dapat dihancurkan jika input dibiarkan mengambang, tetapi masalah yang paling umum yang akan diamati adalah peningkatan konsumsi saat ini. Pada seri mikrokontroler PIC, arus tambahan ada di urutan ratusan mikrogram per pin mengambang. Tidak cukup untuk menyebabkan kerusakan perangkat, tetapi cukup untuk sangat mempengaruhi masa pakai baterai dalam aplikasi yang jika tidak akan menarik 5uA. Beberapa chip memiliki opsi untuk menonaktifkan input digital; jika suatu input dinonaktifkan, ia dapat dibiarkan mengambang.
sumber