Genelde 5V @ 8MHz'de (Arduino Pro 3.3V 8MHz profili ve önyükleyici kullanarak) çalışan özel bir Arduino ATMega328 kartım var. Bu kurulumu kullanmamın ana nedeni, ana güç bağlantısı kesildiğinde ve pil gücünden (madeni para hücresinden 3V) çıkmaya başladığında kartı uyku moduna geçirebilmemdir. 5V ve 3V kaynakları birlikte diyot OR'ed ve 5V girişi INT0'a bağlıdır. Kodda, INT0'ın düştüğünü tespit ettiğinde, uyku modunu başlatır ve dahili bir sayımı tutmak ve çipin geri alınması gerektiğini kontrol etmek için 1Hz'lik bir döngü tutan bekçi zamanlayıcı dışında her şey kapanır. Bu işleri güzelce 5V güç, daha sonra pil takıldığında, ilk uygulandığında daha sonra5V bağlantısı kesildi. Uyuyor ve 5V geri getirildiğinde uyanıyor ve sayımını kaybetmediğini görebiliyorum.
Ancak, sorun önce 3V uygulandığında ortaya çıkar . Açıkçası önyükleme yapıp yapmadığından emin değilim. Ancak yapması gereken önyükleme, INT0'ın (Dijital 2) düşük olup olmadığını kontrol edin ve eğer öyleyse, uykuya doğru gidin. Mevcut çekimi izleyerek, birkaç saniye boyunca birkaç mA'ya güç verdiğini, sonra yaklaşık 0.3mA'ya düştüğünü görüyorum (uyku modunda olması gerekenden daha yüksek). Ama 5V'yi tekrar uyguladığımda hiçbir şey yok . Güç çekimi geri gider, ancak yanıt vermez (FTDI seri üzerinden).
Belki 3V'de önyükleme yapamayacağım bir şey var mı ... teorik olarak iyi çalışmalı.
Güncelleme: D13 üzerine bir LED düşürdüm ve göz kırpma çizimini denedim. 3V veya 5V'den başlarken iyi çalışır. Ancak, ürün yazılımımı çalıştırıp 3V'den başlattığımda, LED çılgınca yanıp sönmeye başlar. Kodumda herhangi bir şey olarak D13 kurulumunu bile yapmadığımdan dolayı neye sebep olduğu hakkında hiçbir fikrim yok. Ama bu beni bootloader ile ilgilendiren bir şey yapıyor ...