Страница 1 из 1
Неправильные фьюзы или неправильный кварц?
Добавлено: Чт ноя 13, 2014 02:20:04
edwardoid
Друзья, я недавно купил Atmega328p(к сожалению мой проект не умещается в Atmega8A) и решил поменять фьюзы, чтобы использовать внешний кристалл. Но что-то видимо напортачил. Соединение программатор->мк правильное(ставил обратно Atmega8A и все работало как прежде). СОбственно вопрос: помогите разобраться, в чем проблема? Какой кристалл отменя хочет 328п-ой.
Вот фьюзы, которые я ставил:
http://eleccelerator.com/fusecalc/fusec ... LOCKBIT=FF
Вот как ругается avrdude:
Код: Выделить всё
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude.exe done. Thank you.
Схема проста: Atmega328p, на ножках XTAL1, XTAL2 сидит кристал на 16Mhz и 2 конденсатора на 18pF(пробовал с 22pF, тот же результат).
Re: Неправильные фьюзы или неправильный кварц?
Добавлено: Чт ноя 13, 2014 07:10:28
Pink-Pank
Неправильные фьюзы или неправильный кварц?
Невнимательный USER.
Кварц на 16 МГц, фьюзы выставлены на частоту 0,4 - 0,9 Мгц. +внимательно читаем даташит по минимальному уровню питания МК в зависимости от частоты тактирования.
Re: Неправильные фьюзы или неправильный кварц?
Добавлено: Пт ноя 14, 2014 22:01:34
edwardoid
Я поковырял даташит и убрал конденсаторы(таблица в начале 30-ой страницы Complete версии). Питаю МК от 5V. По идее должно хватить, но не пашет... я что-то не так понял или пропустил?
Re: Неправильные фьюзы или неправильный кварц?
Добавлено: Сб ноя 15, 2014 08:14:59
alex_
Если у тебя фьюзы прошиты на 0,4-0,9 МГц то меняй кварц в соответствии с фьюзами иначе не заведётся, конденсаторы можешь обратно поставить, когда фьюзы перешьёшь на верное значение, кварц поменяешь обратно.
Re: Неправильные фьюзы или неправильный кварц?
Добавлено: Сб ноя 15, 2014 16:54:00
Psychotherapeutics
edwardoid писал(а):СОбственно вопрос: помогите разобраться, в чем проблема?
Схема проста: Atmega328p, на ножках XTAL1, XTAL2 сидит кристал на 16Mhz и 2 конденсатора на 18pF(пробовал с 22pF, тот же результат).
AVRDUDE -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xFF:m -U lock:w:0xFF:m
Re: Неправильные фьюзы или неправильный кварц?
Добавлено: Вс ноя 16, 2014 17:35:01
edwardoid
Проблема решена кварцем в 8Мгц. Подключил -- работает. Всем спасибо.
Re: Неправильные фьюзы или неправильный кварц?
Добавлено: Ср янв 13, 2016 21:01:25
Ytm
Код: Выделить всё
C:\avrdudeprog33>avrdude.exe -p m328p -c usbasp -P usb -U lfuse:w:0x62:m -U hfuse:w:0xD9:m -U efuse:w:0xFF:m -U lock:w:0xFF:m
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude.exe: Device signature = 0x1e950f
avrdude.exe: reading input file "0x62"
avrdude.exe: writing lfuse (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude.exe: 1 bytes of lfuse written
avrdude.exe: verifying lfuse memory against 0x62:
avrdude.exe: load data lfuse data from input file 0x62:
avrdude.exe: input file 0x62 contains 1 bytes
avrdude.exe: reading on-chip lfuse data:
Reading | ################################################## | 100% -0.00s
avrdude.exe: verifying ...
avrdude.exe: 1 bytes of lfuse verified
avrdude.exe: reading input file "0xD9"
avrdude.exe: writing hfuse (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude.exe: 1 bytes of hfuse written
avrdude.exe: verifying hfuse memory against 0xD9:
avrdude.exe: load data hfuse data from input file 0xD9:
avrdude.exe: input file 0xD9 contains 1 bytes
avrdude.exe: reading on-chip hfuse data:
Reading | ################################################## | 100% -0.00s
avrdude.exe: verifying ...
avrdude.exe: 1 bytes of hfuse verified
avrdude.exe: reading input file "0xFF"
avrdude.exe: writing efuse (1 bytes):
Writing | | 0% 0.00s ***failed;
Writing | ################################################## | 100% 0.08s
avrdude.exe: 1 bytes of efuse written
avrdude.exe: verifying efuse memory against 0xFF:
avrdude.exe: load data efuse data from input file 0xFF:
avrdude.exe: input file 0xFF contains 1 bytes
avrdude.exe: reading on-chip efuse data:
Reading | ################################################## | 100% 0.02s
avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
0x07 != 0xff
avrdude.exe: verification error; content mismatch
avrdude.exe: safemode: efuse changed! Was ff, and is now 7
Would you like this fuse to be changed back? [y/n] y
и собственно все зависло, сигнатура теперь 000000... в общем убил свой последний живой 328, но собственно вопрос - почему? пытался прошить дефолтные фьюзы, но она в efuse почему-то записала 07 вместо ff, или я чет не понимаю?

если кварц отрубить то сигнатура меняется каждый раз