Oprava pojistek

Problém je v tom, že netušíš, cos tam nasypal za pojistky. Co se léčby týká, můžeš mít špatný kontakt, špatně zapojené ATmegy, napětí na resetu mimo toleranci, prostě cokoliv. To, že Ti přeprogramování v bastlpoli nefunguje může mít spousu příčin.

K pojistkám - high jsi tam nasypal default a kdyby ses podíval do datasheetu, tak by jsi zjistil, že RESET sis nezablokoval. Tudíž ISP programování je stále možné.

Když se ale podíváš na low, tak zjistíš, že sis :

  1. nastavil BODLEVEL na 2,7V

  2. povolil BOD
    Tohle je OK, jen nesmí napájecí napětí klesnout pod 2,7V, jinak se MCU drží v resetu.

  3. nastavil startup time delay na 6 CK
    S použitím BOD je to OK

  4. nastavil systémové hodiny na External clock
    To znamená, že systémové hodiny si bere z pinu XTAL1. Stačí, když si naprogramuješ tu ATmegu, co měla fungovat jako doktor, aby kmitala některým pinem a ten připojit na XTAL1 u nemocné ATmegy. Pak stačí připojit programátor a přeprogramovat pojistky tak, aby běžena na IntRC a máš opraveno.

Ale tohle všechno by ses dozvěděl, kdyby sis DŮKLADNĚ prošel datasheet od ATmega8.