Bagaimana saya bisa menentukan apakah mikrokontroler rusak?

8

Saya punya beberapa mikrokontroler yang duduk di tempat sampah saya. Saya pikir beberapa dari mereka tiba di sana ketika, setelah memprogram mereka, mereka menunjukkan perilaku aneh. Saya telah belajar banyak, misalnya, bagaimana memiliki optimasi yang salah pada kompiler dapat menyebabkan perilaku aneh seperti itu. Di sisi lain, beberapa mikrokontroler mungkin telah rusak karena statis, dari tegangan toleransi, dll. Jadi, saya percaya beberapa mungkin dalam keadaan baik.

Sebelum saya membuang semuanya, saya bertanya-tanya: Apakah ada cara yang relatif mudah atau mudah untuk menguji mikrokontroler untuk menentukan apakah masih bagus?

Mikro khususnya adalah Atmel ATTiny13, ATTiny26, dan ATTiny2313, keduanya versi DIP dan SOIC.

JYelton
sumber
2
Tergantung pada programmer Anda, saya pikir itu harus dapat berbicara dengan chip sebelum pemrograman, untuk memverifikasi ID dan semacamnya. Sudahkah Anda mencoba hal seperti itu?
dext0rb
Menggunakan USBTiny dan AVRDude, ya, itu akan menunjukkan jika ia tidak dapat membuat koneksi ke chip; dalam kasus-kasus itu saya memperlakukan mereka sebagai mati. Terkadang pemrograman selesai, tetapi chip berperilaku aneh. Dalam kasus-kasus itu sepertinya cara yang tepat untuk mendiagnosis adalah seperti yang disarankan @Passerby.
JYelton
@JYelton Silakan lihat posting ini untuk mendapatkan beberapa informasi yang berguna tentang menghubungkan Arduino ke program micros. Anda dapat menggunakan perintah avrdude -e untuk menghapus perangkat dan melihat apakah avrdude dapat berbicara dengan perangkat Anda. Ini adalah halaman manual untuk referensi perintah avrdude.
Chetan Bhargava
Anda dapat menggunakan Arduino untuk pemrograman Tegangan Tinggi juga, yang mungkin (atau mungkin tidak) menyelesaikan masalah (komunikasi) lainnya dengan AVR. rickety.us/2010/03/arduino-avr-high-voltage-serial-programmer
jippie

Jawaban:

10

Jika saya sepenuhnya menguji setiap MCU untuk fungsionalitas yang benar, saya akan membangun papan uji untuk masing-masing, dengan adaptor atau soket untuk membantu perubahan IC yang mudah. Hubungkan setiap pin IO ke output visual seperti LED, dan programkan dengan firmware sederhana yang akan menguji setiap pin secara bergantian. Langkah selanjutnya adalah menguji komunikasi dan fitur-fitur lainnya tergantung pada seberapa teliti yang Anda inginkan.

Namun jika Anda hanya ingin cepat memeriksa MCU berkomunikasi dengan benar dengan programmer. Saya akan menggunakan programmer seperti Pocket AVR Programmer , dengan papan breakout atau adaptor untuk setiap MCU. Kemudian gunakan baris perintah dengan cepat menguji setiap MCU untuk melihat apakah itu merespons.

Contoh untuk ATTiny2313 adalah:

masukkan deskripsi gambar di sini http://www.ladyada.net/make/usbtinyisp/avrdude.html

davivid
sumber
Arduino (jika Anda memiliki satu berguna atau ingin menyimpan satu berguna) juga dapat digunakan untuk mengujinya bersama avrdude seperti yang disebutkan @davivid. Anda dapat dengan cepat memasangnya di papan tempat memotong roti.
Chetan Bhargava
4

Program mereka dengan kode yang tidak dioptimalkan, mudah di-debug / amati. Jika tidak bertindak sebagaimana mestinya, tetapi dilakukan pada chip yang dikenal baik, maka Anda dapat menganggap chip tersebut rusak.

Pejalan kaki
sumber