ATMEL PROGRAMLAMA 14 - USBASP & AVRDUDE ile sigorta ayarları

                 Önce Atmega 328p mikrodenetleyicimizin halihazırda ayarlı olan (bendeki default ) sigorta ayarlarını görelim.

                 CMD ile komut istemcisine geçeriz. USBASP ile Atmega 328p arasındaki gerekli bağlantıları yaptıktan sonra komut satırına aşağıdaki ifadeyi yazarız.




avrdude -c usbasp -p m8 -U lfuse:r:lfuse.hex:i -v
 
 
 
 
 low fuse byte       = 0x62
 high fuse byte      = 0xd9 
 extended fuse byte  = 0x07



Şimdi kendi sigorta ayarlarımızı yapıp mikrodenetleyicimize yükleyelim.

16 Mhz kristal osilatör kullanacağız.



LOW FUSE BYTE 

CKDIV8 = 1 ------->  Frekansı 8'e bölmeyeceğiz
CKOUT  = 1 ------->  Clock çıkışı olmayacak
SUT1 = 1 ve  SUT0 = 1 ------->  14CK+65ms için
CKSEL3=1 ,CKSEL2=1, CKSEL1=1 ve CKSEL0=1  -------> Low power crystal osillator seçildi

Low fuse byte =0xff olacak

HIGH FUSE BYTE

RSTDISBL = 1 olmalı (!!!dikkatli olun!!! )  reset pini aktif
DWEN        = 1 olmalı (!!!dikkatli olun!!! )  on-chip debug aktif değil
SPIEN         = 0 olmalı (!!!dikkatli olun!!! ) seri programlama aktif
WDTON     =  1 -----> watchdog timer kapalı 
EESAVE     =  0 -----> EPROM silme koruması aktif 
BOOTSZ1  =  0,    BOOTSZ0  = 0  -----> 2kb bootloader alanı ayrılmış  
BOOTRST =  1  

high fuse byte = 0xd1 


!!!! RSTDISBL, SPIEN ve  DWEN seçeneklerinden uzak durunuz. ve bunların ayarlarını değiştirmediğinizden emin olunuz. !!!

 EXTENDED FUSE BYTE

BODLEVEL2 = 1, BODLEVEL1 = 1 ve BODLEVEL0 = 1   -----> brown out dedection kapalı

extended fuse byte =0x07

bu değerleri mikrodenetleyiciye yazmak için  komut istemcisinde

avrdude -c usbasp -p m328p  -U lfuse:w:0xFF:m -U hfuse:w:0xD1:m -U efuse:w:0x07:m
 
 
artık mikrodenetleyicimiz 16Mhz harici kristal osilatör ile çalışacak.

Yorumlar