Atmel AVR Fuse Bit Onarım Devresi Atmega Fusebit Doctor

| Haziran 19, 2023 Tarihinde güncellendi
Atmel AVR Fuse Bit  Onarım Devresi Atmega Fusebit Doctor

Atmel ATMEGA serisi mükrodenetleyiciler için hazırlanan Fusebit onarım devresini ilk çıktığı gün paylaşacaktım fakat arada kaynayıp gitti sağ olsun geçenlerde bir okurumuz hatırlattı paylaşmak bu güne kısmetmiş 🙂

ATMEGA FuseBit onarım devresi programda sigorta (Fuse) bitler hatalı ayarlandığında ya da programlandığında kilitlenen mikrodenetleyiciyi çalışır hale getirmek için kullanılıyor.

Atmel AVRler entegre konfigürasyonu (sigorta ayarları) program içinde ayrı bir satırda yer almıyor hazırlanan programın özelliğine göre sigorta bitleri (fuse bit) program gibi entegreye yazdırılıyor yazdırma sırasında hatalı, uygun olmayan sigorta biti seçilirse entegre tekrar yazılamaz hale geliyor, kilitleniyor işte AVR fuse bir onarım devresi sayesinde mikrodenetleyiciyi kurtarıp tekrar kullanılabilir hale getirebilirsiniz

atmega-fusebit-doctor-hvpp-hvsp-fix-fusebits-avr-fusebit

Atmega sigorta bit doktoru (HVPP+HVSP) – sigorta bitlerini onarın

mega_fusebit_doctor_1Atmega Fusebit doktoru, adından da anlaşılacağı gibi, AVR mikrodenetleyicilerinde yanlış konumlandırılmış sigorta bitlerini onarmak için kullanılan bir cihazdır. En büyük sorunlar, yanlış saat kaynağının ayarlanması (CKSEL sigorta bitleri), SPI programlamanın devre dışı bırakılması (SPIEN sigorta biti) veya sıfırlama pininin G/Ç moduna (RSTDISBL sigorta biti) ayarlanmasıdır. Bu basit cihaz, mikrodenetleyiciyi saniyeden çok daha kısa bir sürede onararak fabrika ayarlarına getirir.

İlk durumda bir saat üreteci veya bir RC/kuvars üreteci kullanabilirsiniz, ikinci ve üçüncü durumda ise SPI seri programlayıcıyı kullanarak mikrodenetleyiciyi tekrar hayata döndürmek mümkün değildir. Çok az insan paralel bir programlayıcı oluşturmaya karar verir, çünkü kullanımı elverişsizdir ve yeni bir mikrodenetleyici satın almak bazı onarımlarla uğraşmaktan daha ucuzdur. Ancak uzun vadede, bu cihazı inşa etmenin çok iyi bir fikir olduğu ortaya çıkıyor.

Sunulan cihaz, paralel ve seri yüksek voltaj programlama olasılığını kullanır. Reset veya isp devre dışı olarak sisteme girmenizi sağlayan programlama yöntemleri şunlardır:

HVPP = yüksek gerilim paralel programlama = yüksek gerilim paralel programlama.

HVSP = yüksek gerilim seri programlama = yüksek gerilim seri programlama.

Desteklenen çiplerin listesi:

Cihaz şu anda tamamı test edilmemiş olsa da 145 yongayı destekliyor.

1 KB: AT90s1200, Atiny11, Attiny12, Attiny13/A, Attiny15

2kB: Attiny2313/A, Attiny24/A, Attiny26, Attiny261/A, Attiny28, AT90s2333, Attiny22, Attiny25, AT90s2313, AT90s2323, AT90s2343

4kB: Atmega48/A, Atmega48P/PA, Attiny461/A, Attiny43U, Attiny4313, Attiny44/A, Attiny48, AT90s4433, AT90s4414, AT90s4434, Attiny45

8kB: Atmega8515, Atmega8535, Atmega8/A, Atmega88/A, Atmega88P/PA, AT90pwm1, AT90pwm2, AT90pwm2B, AT90pwm3, AT90pwm3B, AT90pwm81, AT90usb82, Attiny84, Attiny85, Attiny861/A, Attin y87, Attiny88, AT90s8515, AT90s8535

16kB: Atmega16/A, Atmega16U2, Atmega16U4, Atmega16M1, Atmega161, Atmega162, Atmega163, Atmega164A, Atmega164P/PA, Atmega165A/P/PA, Atmega168/A, Atmega168P/PA, Atmega169A/PA, Attiny167, AT90 pwm216, AT90pwm316, AT90usb162

32kB: Atmega32/A, Atmega32C1, Atmega323/A, Atmega32U2, Atmega32U4, Atmega32U6, Atmega32M1, Atmega324A, Atmega324P, Atmega324PA, Atmega325, Atmega3250, Atmega325A/PA, Atmega3250A/PA, Atmega32 8, Atmega328P, Atmega329, Atmega3290, Atmega329A/PA, Atmega3290A / PA, AT90can32

64kB: Atmega64/A, Atmega64C1, Atmega64M1, Atmega649, Atmega6490, Atmega649A/P, Atmega6490A/P, Atmega640, Atmega644/A, Atmega644P/PA, Atmega645, Atmega645A/P, Atmega6450, Atmega6450A/P, AT90usb646, AT90usb647, AT90can64

128kB: Atmega103, Atmega128/A, Atmega1280, Atmega1281, Atmega1284, Atmega1284P, AT90usb1286, AT90usb1287, AT90can128

256kB: Atmega2560, Atmega2561

Cihazın yapımı son derece basit ve ucuz, tek ihtiyacınız olan bir doktor olarak Atmega8 (veya uyumlu, aşağıya bakın), iki LED, bir jumper, dengeleyici, transistörler. Sadece “serbest” uC’yi bağlayın ve BAŞLAT düğmesine basın ve sistem istenen işlemi gerçekleştirecek ve hastamız hayata döndürülecektir. En popüler olan atmega8, atmega16 ve attiny2313 ile pin uyumlu işlemciler için kartta üç soket vardır. Ek olarak, kartın adaptörleri bağlamak için gerekli tüm sinyalleri içeren bir dişi altın pimli konektörü vardır:

20pin Attiny26 ve 40pin Atmega8515 ile uyumlu CPU’lar için HVPP uzantısı olarak “#1 HVPP adaptörü”

Çok az pin nedeniyle paralel olarak programlanamayan HVSP 8pin ve 14pin küçük işlemciler için “HVSP adaptörü”.

DIP veya SMD muhafazalarda diğer işlemci türleri için kendi ek adaptörlerinizi yapmak mümkündür. Ancak tek bir işlemi düzeltmek için adaptör yapmanıza gerek yok, sinyalleri uygun pinlere bağlayarak breadboard ile yapabilirsiniz. Nasıl? AVR’nizin veri sayfasına bakın, “bellek programlama”ya ve ardından “paralel programlama”ya gidin – bir plaka üzerinde sinyal ve pin adları.

Tüm pinler DIP40 soketi altında imzalanmıştır ve “boş” adaptör projesi de ekte yer almaktadır. Tek taraflı pcb, boyutları 55mm x 92mm. Üst kısma birkaç jumper lehimlenmeli veya tahta çift taraflı tahta olarak da yapılabilir. 12V stabilize güç kaynağı. R7’den R23’e kadar olan dirençler 100 ohm ile 1K arasında değerlere sahip olabilir, ben 330 ohm öneririm. Lütfen veri hattındaki üç bitlik pimlerin ISP programcısı tarafından programı güncellemek için kullanıldığını unutmayın – örneğin, programlayıcı ile bunlara lehim yaparsak cihaz düzgün çalışmaz.

DİKKAT! DIP40 soketini monte ederken, metal konektörleri 29 ila 37 pimden çıkarın! Bu yerlerden geçen hatlar pimlere elektriksel olarak bağlanamaz.

Sistem çalışması:

ALLOW ERASE atlama teli, Lockbit’lerin ayarlanması durumunda tüm belleği silmenizi sağlar (bunları silmeden, Fusebit’leri değiştirmek mümkün değildir). Sistemi bağladıktan ve BAŞLAT düğmesine bastıktan sonra, program yüksek voltajlı programlama modunu başlatır. HVSP veya HVPP olması donanım konfigürasyonuna bağlıdır, insan açısından sistem takılan HVSP adaptörünü otomatik olarak algılayacak ve otomatik olarak bu modda çalışacaktır.

Bu adaptör olmadan HVPP modunda çalışır. Sistemin yaptığı ilk şey, programlama moduna doğru giriş anlamına gelen RDY/BSY pininde yüksek bir durum beklemektir. Ardından bağlı olduğu mikrodenetleyicinin imzasını okur ve işleyip işlemediğini kontrol eder. Bir sonraki adım, kullanıcı izin verdiyse tüm belleği silmektir. Daha sonra kilit bitleri kontrol edilir ve erişimi engellemezlerse, doktor sigorta bitlerini okur ve bunları veritabanında depolanan fabrika bitleriyle karşılaştırır. Farklı ise, hasta modelinde genişletilmiş sigorta bitleri olup olmadığına bakılarak fabrika çıkışlı olanları kaydeder. Bazı eski AVR yongalarında yalnızca bir bayt fusk bulunur – DÜŞÜK – ve bu da dikkate alınır. Sonunda, program kaydedilen verilerin doğruluğunu onaylar ve uygun LED’i yakar.

Diyot işaretleri:

yeşil yanıyor – sigortalar onarıldı ve doğrulandı, sistem onarıldı. Lockbit koruması ayarlanmışsa, sadece fuskların fabrika ayarlarına uyup uymadığını kontrol eder, öyleyse bu LED’i de yakar.

kırmızı açık – imza okuma sorunu, sistem yok veya veritabanında imza yok.

yanıp sönen yeşil – imza okunuyor, sigorta bitleri fabrika bitleriyle eşleşmiyor, ancak kilit bitleri ayarlandı ve bunları düzeltmek için hafıza silmeye izin vermeniz gerekiyor.

yanıp sönen kırmızı – imza okunuyor, kilit bitleri devre dışı, ancak yeni birleştirme bitleri herhangi bir nedenle kaydedilemiyor.

Terminal:

Terminal yalnızca isteğe bağlıdır, cihaz onsuz çalışır ve her şeyi diyotların kendisinden öğreneceğiz … Kart üzerinde ayrıca RS232 olarak tanımlanan bir konektör var, bu bir UART çıkışı, ona bağlanarak onarım işleminin seyri hakkında her şeyi öğreneceğiz – aşağıdaki galeride örnek ekran görüntüleri. uart aracılığıyla bilgi düzenli olarak gönderilir. Cihazı bir bilgisayara bağlamak için uygun dönüştürücüyü kullanın. Bilgisayarda RS232 için bir COM bağlantı noktası varsa, MAX232 yongasına dayalı basit bir dönüştürücü kullanabilirsiniz (örn. bu). Dizüstü bilgisayar kullanıyorsak, bir USB dönüştürücü kullanılmalıdır (belki bu veya bu).

Terminal ayarları:
baud hızı: 4800
parite: yok
veri biti: 8
durdurma bitleri: 1
el sıkışma: yok

Aşağıdaki mikrodenetleyicilerden biri doktor çipi olarak kullanılabilir: Atmega8, Atmega88, Atmega88P, Atmega168, Atmega168P, Atmega328, Atmega328P – ve bunların daha yeni/düşük voltajlı “A” veya “L” versiyonları. Gruplar uygun şekilde etiketlenmiş klasörlerdedir. Sistemin güç kaynağı stabilize 12V’tur. Daha yüksek voltaj, tamir edilmekte olan sisteme zarar verebilir!

Program, AVR mikrodenetleyicilerinin katalog notlarının (bellek programlama – paralel/seri programlama) her birinde bulunan paralel ve yüksek voltajlı seri programlama açıklaması temel alınarak yazılmıştır. 2008 yılında başlayan proje zaman yetersizliğinden yarıda kaldı, şimdi (2010) yeniden yapıldı. Attiny CPU’ların kilidini açmak için özel bir cihaz arıyorsanız, önceki projem olan Attiny Fusebit Doctor’a göz atın. Ancak projede hatalar ortaya çıktı ve artık tüm Attiny işlemcileri destekleyen “Atmega Fusebit Doctor” oluşturulması nedeniyle geliştirilmiyor. Ancak kaynak kodunu orada yayınladım ve katalog notunun yukarıda belirtilen bölümünü kullanarak, tartışılan mekanizmayı hızlı bir şekilde anlayabilirsiniz.

Sigorta bitleri:

1MHz dahili saat ve EESAVE biti etkin, BENİOKU dosyasına bakın.

Yeni çipi doktor olarak kullanıyorsanız herhangi bir değişiklik yapmanıza gerek yok çünkü fabrika ayarları iyi ve çip zaten dahili 1MHz’de çalışıyor. EESAVE biti gerekli değildir, programın güncellenmesi durumunda eeprom belleğinin içeriğinin silinmemesine neden olur – eeprom’da sistem, değeri tamamen istatistiksel amaçlar için rs232 aracılığıyla gönderilen onarılan sistemlerin sayacını kaydeder. . Yani isterseniz bu sigortayı yağlayın.

GÜNCELLEME 2.1X

Terminal üzerinden kendi sigorta bitlerinizi ve kilit bitlerinizi gönderin, imzası zarar görmüş devrelerle çalışın. Terminalin Tx pinini doktorun RX pinine bağlarsanız manuel mod otomatik olarak başlayacaktır. Bu, terminalin Tx piminin boştayken yüksek olmasını gerektirir, 10K aşağı çekme direncini yukarı çekmelidir. Aksi takdirde (gelen bağlantı kesilir), doktor otomatik modda çalışacaktır (eskiden olduğu gibi).

Önce doktor imzayı okuyacak. Okuma başarısız olursa, manuel olarak girmenizi isteyecektir. İmzanın son iki baytını HEX (4 karakter) olarak yazın ve enter tuşuna basın.

Daha sonra doktor verilen sinyale göre çipi okumaya çalışacaktır.

Başarılı olursa, seçeneklerden birini seçin:

1 – sigorta bitlerini yaz – arabellekteki değerlerle sigorta bitlerini yazma (fabrika varsayılanı).

2 – birleştirme bitlerini değiştir – bu seçenek, birleştirme bitlerini manuel olarak değiştirmenize izin verir, arabellekteki veriler değişir. HEX (2 karakter) olarak bir bayt yazın ve enter tuşuna basın. Her bayt için (varsa) tekrarlayın.

3 – kilit bitlerini ayarlayın – kilit baytı değerini HEX’te bir bayt (2 karakter) girin ve enter tuşuna basın.

Kullanılmayan bitlerin her zaman 1 olması gerektiğini unutmayın! Örneğin, LB1 ve LB2 tip FC’yi (11111100) etkinleştirmek istiyorsanız

4 – çipi sil – tüm belleği ve kilitli bitleri silerek, güvenlik için “silme izni ver” jumper’ı gereklidir.

5 – son – programlamayı bitirin ve voltajı serbest bırakın – çipi çıkarabilirsiniz.

İmzası bozuk Attiny13’ün nasıl onarıldığını görün. Aynı düzenin nasıl “kırıldığını” görün. Manuel modda LED’ler tarafından yönlendirilmeyin – istedikleri gibi yanıp sönerler 🙂

DİKKAT – Firmware 2.1x, kartın 2h sürümüne güncellenmesini GEREKTİRİR!

Sık sorulan Sorular ve Cevaplar:

S: Yaşam belirtisi yok, LED’ler yanmıyor.
C: Ciddi kart hataları veya kötü programlanmış işlemci.

S: Kırmızı LED yanar.
C: İşlemci tanınmıyor. Voltajları ölçün. Boştayken, dişi altın pimli konektördeki +12 RESET ve +5 SUPPLY hatlarındaki voltajları ölçün – bunlar 0V veya 0V’a yakın olmalıdır. BAŞLAT düğmesine bastıktan sonra bu gerilimler yaklaşık bir saniye +5V ve +12V yakın değerlere gidecektir. Değilse, iyi transistörler kullandığınızdan ve bunları doğru şekilde lehimlediğinizden emin olun.

S: Kırmızı LED yanar.
C: Kart üzerindeki hatalar, izler yoğun bir şekilde paketlenmiş ve bir yerde görünmeyen bir kırılma, kısa devre veya soğuk lehim bağlantısı olması çok olası. Her şeyi bir sayaçla kontrol edin, ancak TAM OLARAK.

S: Kırmızı LED yanar.
C: Onarım günlüğünü almak için cihazı terminale bağlayın. Veri almak için başlat’a basın.

S: “Başlangıç ​​programlama…” alındı ​​ve başka bir şey alınmadı – VEYA – alınan imza “00 01 02” veya “FF FF FF”.
C: Takılan işlemci hasarlı veya kartta hatalar var – yukarıya bakın.

S: Alınan imza “1E 90 00”, “1E 1E 1E” veya benzeri (anlamlı verilere benzer)
C: Takılan işlemci çalışıyor, reset atıyor, kart üzerindeki DATA, BS, XA hatlarında kısa devre var.

S: Yeşil LED yanıyor / “Doğrulanıyor… – Tamam!” alındı ancak cpu hala normal bir programlayıcıda çalışmıyor
C: Fusebit’ler %100 sabittir, CPU’nun donanım SPI’si hatalı veya başka bir hasara sahip.

S: Günlükte “İmzayı Oku…BAŞARISIZ!” ne yapar? ve “T2313 pin çıkışı deneniyor… Tamam”?
C: Tüm 20 pimli düzenlerin biraz farklı ele alınması gerekir. Varsayılan olarak cihaz standart şemaya göre işlemciyi okumaya çalışır ve başarısız olursa (“FAIL!”) T2313 uyumlu 20 pinli sistemler için şemayı dener ve sadece sistem okunur. Bu normal bir davranış, bir hata değil.

S: Kütüğün başındaki “[2J” burçları ne işe yarar?
C: Bu, “VT100” emülasyonunu etkinleştiren ayarlarda terminal ekranı temizleme sırasıdır.

S: Bir 2.10 terminaline karakter göndermeye çalışıyorum ama hiçbiri görünmüyor.
C: Terminal ayarlarında el sıkışma seçeneğini HİÇBİRİ olarak ayarladığınızdan emin olun.

Kaynak: mdiy.pl/atmega-fusebit-doctor-hvpp/

atmel-avr-fuse-bit-onarim-devresi-atmega-fusebit-doctor

Şifre-Pass: 320volt.com

Yayım tarihi: 2013/03/16 Etiketler: , , , , ,



11 Yorum “Atmel AVR Fuse Bit Onarım Devresi Atmega Fusebit Doctor

  1. est32est32

    bu devreyi yapalı birkaç yıl oluyor, bu devre sayesinde yanlış sigorta ayarı yüzünden seri programlama ile tekrar programlanamayan işlemcilerimi geri kazanabildim.
    İlaç gibi gelmişti. Yoksa kaç tane AVR’yi çöpe atacaktım.
    Özellikle Atmel’e yeni başlayanlar bu devreyi göz ardı etmesinler. Atmele yani başlayanlar için sigorta bitlerinin programlanması(daha doğrusu öğrenmesi) çok sıkıntılı,bu devreye ihtiyaçları olabilir…

    CEVAPLA
  2. 15.gece15.gece

    Avr ile uğraşıyorsanız baş ucunuzda bulunması gereken bir devre 2 entegreyi kıracaktım. Bu devreyi yapıp entegrelerin çalıştığını görünce rahatladım.Atmeli överler de bu huyundan kimser bahis etmez. Her ne kadar koruma amaçlı yapılmış olsa da bu sigorta ayarlarının katılığı bir eksiklik gibi görünüyor.

    CEVAPLA
  3. AdemAdem

    Elimde uydu alıcıdan çıkma çalışır durumda 8952 yongası var. Syncmos marka. Bunlarda da fuse bit olayı var mı?
    İçindeki programı silip kendi programımı atmayı düşünüyorum. Bu fuse bit bana sorun çıkarır mı?
    https://ibb.co/Z8mzR7d

    CEVAPLA
      1. AdemAdem

        Verdiğiniz sayfada ürünün ISP desteği yok olarak görünüyor. Program atmak da zor olacak sanırım.

        CEVAPLA
  4. Gökhan kaplanGökhan kaplan

    Bu cihazla lock bit sıfırlana biliyor mu kilitli mcu okumak istiyorum

    CEVAPLA
  5. zlatko grgiczlatko grgic

    Dear,
    I have problems with programming the ATmega processor and setting the fuses, the processor is blocked and I can no longer use it. I want to make you a device Atmel AVR Fuse Bit Onarım Devresi Atmega Fusebit Doctor for resetting fuses on ATmega 8, 88, everything is clear to me about the device, sch and pcb. The problem is that I cannot open the file atmega_fusebit_doctor_2.11_m88.bin in the firmware directory, I tried, but it didn’t work. Please send me instructions on how to open the file or pictures for installing fuses to my email.
    I am a hobbyist and radio amateur and I would be grateful for your help.
    With thanks, Zlatko.
    Bosnia and Herzegovina
    Sarajevo

    CEVAPLA
  6. zlatko grgiczlatko grgic

    Canım,
    ATmega işlemcisini programlama ve sigortaları ayarlama konusunda sorun yaşıyorum, işlemci bloke oldu ve artık kullanamıyorum. Size bir cihaz yapmak istiyorum Atmel AVR Sigorta Bit Onarımı Devresi Atmega Fusebit Doktoru ATmega 8, 88’deki sigortaları sıfırlamak için, cihaz, şema ve pcb hakkında her şey benim için açık. Sorun şu ki firmware dizinindeki atmega_fusebit_doctor_2.11_m88.bin dosyasını açamıyorum, denedim ama işe yaramadı. Lütfen bana sigorta kurulumuna ilişkin dosyayı veya resimleri nasıl açacağıma dair talimatları e-posta adresime gönderin.
    Ben bir hobi ve radyo amatörüyüm ve yardımınız için minnettar olurum.
    Teşekkürler Zlatko.
    Bosna Hersek
    Saraybosna

    CEVAPLA
    1. ipli jetonipli jeton

      Cihaz üzerinde sıfırlama işlemini yapan Atmega8 veya Atmega88 işlemci var. _m88 ile biten dosya Atmega88 işlemci için. Siz cihazda işlemci Atmega8 kullandıysanız _m8 ile biten firmware dosyasını kullanmanız gerekmektedir. Firmware dosyasını bir AVR programlayıcı ile Atmega8(ya da Atmega88)’e yüklemeniz gerekmektedir. Ardından her şeyi eksiksiz yaptıysanız çalışması lazım.

      CEVAPLA

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir