Apakah boleh memasang LED langsung ke 5V Attiny?

9

Dari datasheet , saya pikir AT90S1200 memiliki pin saat ini terbatas dan ketika berjalan pada 5V akan menenggelamkan jumlah yang tepat saat ini melalui LED hijau yang melekat pada + (0 menyalakan LED, 1 mematikannya) tanpa resistor eksternal. Sayangnya ketika saya memasang 8 dari mereka IC terbakar setelah beberapa menit. Saya juga memiliki papan tempat memotong roti tanpa solder yang cerdik dan mungkin akan menyingkat bagian tersebut.

Apa yang saya salah pahami tentang lembar data itu ?

joeforker
sumber
1
Di mana Anda membacanya di lembar data? Saya tidak dapat menemukannya.
starblue
1
Saya menemukannya, @starblue. Halaman 29, Port B: "Semua pin port memiliki resistor pull-up yang dapat dipilih secara individual. Buffer output Port B dapat tenggelam 20 mA dan karenanya mendorong tampilan LED secara langsung." @ Joeforker, apakah Anda yakin sirkuit kabel Anda sudah benar dan kode sudah diatur dengan benar untuk penggunaan ini? Maukah Anda memposting skema dan kode Anda untuk ditinjau?
Lou
10
Pernyataan pada Halaman 29 tidak menyiratkan perilaku pengaturan saat ini. Ini menyatakan bahwa ada cukup arus tenggelam untuk menggerakkan LED yang berarti buffer eksternal tidak diperlukan untuk arus 20mA atau kurang. Anda masih perlu membatasi arus jika desain Anda mampu menenggelamkan arus lebih tinggi dari 20mA.
jluciani
3
Dapat "mengarahkan tampilan LED secara langsung" berarti ada cukup jus yang tersedia untuk mengarahkan led tanpa saklar / transistor / buffer / driver. Cukup untuk membakar sebagian besar tipe juga. Juga, saya pikir semua AVR's memiliki output push-pull yang Anda dapat beralih ke pullup yang lemah atau tiriskan sepenuhnya terbuka dengan mengutak-atik beberapa register port. Memang perlu beberapa pengaturan dan tidak terkait dengan LED (pikirkan I2C).
XTL

Jawaban:

8

Dari lembar data

Arus DC per I / O Pin ........................................... .... 40.0 mA

DC Current VCC dan Pin GND ................................ 200.0 mA

Sekarang setiap led akan digerakkan pada 40mA (karena tidak ada resistor pembatas arus) - cukup untuk mempersingkat masa pakai led tetapi sebaliknya tidak terlalu buruk. Namun menjalankan 8 leds akan menarik total 320mA dari mikrokontroler - bersama dengan setiap arus yang dibutuhkan untuk menjalankan (tergantung pada kecepatan clock). Ini cukup untuk melebihi total 200mA yang diizinkan, maka chip Anda yang hangus.

JohnC
sumber
5
Saya kira itu berarti "jangan lakukan itu" daripada "chip akan memastikan tidak lebih dari 40 mA melewati pin I / O".
joeforker
4
Itu adalah Peringkat Maksimum Mutlak, bukan fungsi membatasi chip saat ini. Dari lembar data, "Menekan di luar yang tercantum di bawah" Peringkat Maksimum Mutlak "dapat menyebabkan kerusakan permanen pada perangkat." Saya cukup yakin pin tersebut akan memungkinkan Anda untuk menarik arus sebanyak resistensi yang melekat akan memungkinkan dan itu tidak akan berhenti pada 40 mA. Sebenarnya, saat meninjau lembar data, saya TIDAK menemukan referensi untuk perilaku yang mengatur saat ini (Halaman 29, Port B). Namun, saya tidak berpikir pin yang tidak dikonfigurasi dengan cara ini akan berhenti pada 40mA. Bagaimanapun, saya pikir saya hanya akan menggunakan resistor.
Lou
1
Bacaan lebih lanjut mengungkapkan batas 100mA untuk satu port.
joeforker
2
Seperti yang disebutkan Lou, tidak ada fungsi pembatas saat ini. Juga Catatan 3 pada halaman 49 menyatakan bahwa "Pin tidak dijamin akan tenggelam lebih dari kondisi pengujian yang tercantum." Kondisi pengujian yang tercantum untuk IOL adalah 20mA untuk Vcc 5V dan 10mA untuk Vcc atau 3V.
jluciani
5

Tidak apa-apa untuk memasang LED ke mikro Anda tanpa resistor yang membatasi saat ini selama Anda tidak keberatan menghabiskan uang untuk mengganti mikro sesekali. Anda akan terus memecahnya jika Anda hanya menghubungkan LED.

Pembuat chip memberikan batasan saat ini pada pin output mereka sehingga Anda tidak membakar bagian atau membuatnya melayang dari semua pemanasan yang akan dihasilkan dari menarik begitu banyak (relatif) daya melaluinya. Resistor sangat murah dan saya tidak bisa memikirkan situasi yang masuk akal untuk tidak menempatkannya sesuai dengan LED.

Chris Gammell
sumber
1
ya, dan perhatikan bahwa ini adalah batas saat ini pada spesifikasinya , tidak harus atau biasanya batas saat ini dibangun ke dalam bagian, jadi jika Anda pergi ke luar batas mereka tidak membuat klaim untuk kelangsungan hidup atau fungsi bagian.
Jason S
Sekali, saya menggunakan PIC16F887 dan 6 LED tanpa resistor. Itu bertindak sangat aneh. Beberapa LED mengkilap beberapa di antaranya redup, beberapa di antaranya normal. Dan kecerahannya berubah ketika saya mengendarai LCD. Masalahnya diselesaikan segera setelah saya menambahkan resistor pembatas saat ini. Yah saya harus solder mereka langsung di kaki LED. Tapi aku teringat sesuatu :)
abdullah kahraman
3

Mereka tidak membangun fungsi pembatasan saat ini ke dalam chip, tetapi mereka adalah driver CMOS, dan pada dasarnya meningkatkan resistensi mereka semakin hangat, sehingga mereka umumnya akan dengan aman membatasi diri berdasarkan per-port (walaupun Anda bisa berakhir mengemudi lebih dari 20mA melalui LED yang diberikan, yang mungkin melebihi peringkat LED) selama Anda menjaga voltase rendah (yaitu, setiap port tidak harus turun lebih dari satu atau dua volt di atas dioda).

Tetapi jalur suplai internal ke chip tidak dapat menangani semua 8 jalur yang dimaksimalkan.

Ini tidak ideal untuk melakukan ini, karena Anda menekankan bagian, tetapi jika Anda benar-benar ingin menggerakkan LED tanpa resistor, selama Anda tidak melebihi arus agregat, Anda baik-baik saja.

Namun, Anda dapat menyiasatinya dengan menjalankan LED secara PWM. Hanya mengendarai satu LED pada satu waktu, tetapi urutan melalui mereka cukup cepat sehingga mereka muncul terus-menerus ke manusia, meskipun Anda benar-benar berkedip mereka pada 30+ kali per detik secara individual.

Tetap saja, resistor itu murah, jadi kecuali Anda punya alasan kuat untuk mengendarainya secara langsung tanpa batasan arus, yang terbaik adalah merancang sirkuit sehingga mikrokontroler dan LED beroperasi dalam batas desainnya.

Adam Davis
sumber
3

Saya belum melihat dalam beberapa saat tetapi Anda mungkin bisa mendapatkan LED dengan resistor pembatas arus internal.

jluciani
sumber