Ö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.
Şimdi kendi sigorta ayarlarımızı yapıp mikrodenetleyicimize yükleyelim.
16 Mhz kristal osilatör kullanacağız.
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
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
Yorum Gönder