Всё о фьюзах...

Обсуждаем контроллеры компании Atmel.
Ответить
Собутыльник Кота
Аватара пользователя
Сообщения: 2977
Зарегистрирован: Сб май 21, 2016 11:04:52
Откуда: Беларусь

Сообщение olegue »

С дудкой у меня отдельная история. Дудка категорически не видит usb, пробую различные libusb0.dll, но пока безрезультатно. Англосаксы пишут, что виновата установленная avr studio и сейчас я проверяю эту версию.
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2977
Зарегистрирован: Сб май 21, 2016 11:04:52
Откуда: Беларусь

Сообщение olegue »

подружился таки я с дудкой. Источник здесь http://radioskot.ru/forum/9-4947-12#241785
Оказывается нужно было выставить Bitlock period с параметром -B, и все заработало, например -B 3
то есть добавить в programm.ini
раздел, например
[USBaspSpeed1]
progisp=usbasp -B 3
portprog=usb
portenabled=0

или

[USBaspSpeed2]
progisp=usbasp -B 1
portprog=usb
portenabled=0

Версию драйвер поставил такую libusb_0.1.12.1
Window 7 , Загрузил с опцией отключенной проверки цифровой подписи.
Реклама
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

возьми SinaProg 2.1. это оболочка для дудки. и не надо будет трахаться ни с какими параметрами.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Друг Кота
Аватара пользователя
Сообщения: 20132
Зарегистрирован: Чт сен 01, 2011 12:53:27
Откуда: ТьмуТаракания. Почетный житель подмостовья

Сообщение oleg63m »

ADS тоже оболочка. А хазама, если не ошибаюсь тоже через дудку работает :dont_know:
Шекспир сказал: Судить меня -дано лишь Богу, другим я укажу дорогу... https://natribu.org/
Я его полностью поддерживаю.
Программирую на Fuse AtmelAVR.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Открыл глаза
Аватара пользователя
Сообщения: 47
Зарегистрирован: Ср дек 10, 2008 15:57:16
Откуда: https://satfan.info/

Сообщение kotneko »

Подскажите , как правильно выставить фьюзы в Понипрог для Atmega8 c внешним кварцем 1 МГц ?
Реклама
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

Изображение
fuse_m8_1_8MHz.PNG
(10.18 КБ) 580 скачиваний
Сначала читаете, снимаете все "галки" и записываете.
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Почему для кварца 1 MHz CKSEL3..1 = 111?
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

Потому, что так написано в DS.
fuse_m8_1_8_DS.PNG
(58.93 КБ) 571 скачивание
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Тогда почему не включен CKOPT?
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

Потому что DS вещает.
For resonators, the maximum frequency is 8MHz with CKOPT unprogrammed and 16 MHz with CKOPT programmed.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Для резонаторов максимальная частота составляет 8 МГц с незапрограммированным CKOPT и 16 МГц с запрограммированным CKOPT.
Хорошая информация, но это-то тут при чем? Вы выставили:

Изображение
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

Был печальный опыт, когда кварцы 14,7456МГц выходили из строя из-за превышения допустимой мощности. Поэтому к биту CKOPT отношусь осторожно.
When CKOPT is programmed, the Oscillator output will oscillate a full rail-to-rail swing on the output.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Очень может быть, там размах колебаний почти равен напряжению питания. Вот я и пытался понять, почему тогда не был выбран

CKOPT = 1; CKSEL3..1 = 110; Freq = 0.9 - 3.0 MHz

Тоже ведь подходит. И без необходимости включать усилитель на полную дурь.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

По мне, вариант CKSEL3...0 1111 SUT1,0 11 более универсальный чем CKSEL3...0 1101. Последний тоже вполне рабочий, но не использую.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Позанудничаю. Есть даташит, который однозначно трактует тот или иной режим. Можно самовольничать, можно самостоятельно менять настройки по своему настроению, но вот советовать кому-либо я бы не стал точно. Впрочем, это уже личное дело каждого. :tea:
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

Всем привет.

Плата Arduino Nano V3.0
Хоть я и не пишу в среде Ардуино, но платы покупаю в виду их низкой стоимости.
Итак: Взялся за новый проект, написал код, подключил AVR_Dude программатор через ICP разъем...
Включил SinaProg, МК определился.
Считал фузы и тут же решил их исправить на нужные.
Указал фузы, но не совсем те, которые хотел - настроил по скриншоту с другого своего проекта.....
Старший 0x99, младший 0xCF ( а нужно было D9:De )
Прошил, и МК перестал определяться....
"Залочил что ли ?" - Подумалось мне.
Но как ? Фузы, которые я изменил - безопасные... Они не могли залочить МК!

На программаторе имеется разъем для установки перемычки, при установке которого понижается скорость обмена... Пробовал - не помогло.

Изменял только старший и младший ФУЗ биты - другие не изменял.
Сохранил такие, какие прочитались.


Куда копать? Неужели залочил? А может с тктированием что то сотворил?

Изображение
Вложения
fuse.jpg
(44.64 КБ) 564 скачивания
не зная броду не лезь к вольтмоду
akl
Друг Кота
Сообщения: 4450
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

uwrtey писал(а):...А может с тктированием что то сотворил?
Вы установили работу от керамического резонатора и кварц в этом режиме не возбуждается. Можно попробовать подать на PB6/XTAL1(TOSC1) внешнюю частоту не менее чем в 4 раза превышающую частоту программатора, предварительно отключив кварц.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

Спасибо, но позвольте еще вопросы позадаю:

На меге_32 настраивал такими фузами - работала от кварца на 16МГц. ( старший 0x99, младший 0xCF )
Или в 328-ой иначе?

Изображение

Мне кажется, что я настроил на кварцевый резонатор с частотой свыше 8МГц....
Последний раз редактировалось uwrtey Вс апр 09, 2017 07:59:24, всего редактировалось 1 раз.
не зная броду не лезь к вольтмоду
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2255
Зарегистрирован: Вт апр 21, 2009 22:24:10
Откуда: Иркутск

Сообщение edm2007 »

Судя по ID (1E 95 0F) микроконтроллер - ATmega328P.
uwrtey писал(а):Старший 0x99, младший 0xCF
Что Вы настроили:

Fuse Low Byte = 0xCF = 11001111

CKDIV8 = 1
CKOUT = 1
SUT1 = 0
SUT0 = 0
CKSEL3 = 1
CKSEL2 = 1
CKSEL1 = 1
CKSEL0 = 1

Отключено деление тактовой частоты на 8, тактирование настроено от внешнего кварца 8 - 16 Мгц (CKSEL3..1 = 111), с задержкой запуска 14CK + 65ms (CKSEL0 = 1, SUT1..0 = 00, для керамических резонаторов). Такую конфигурацию можно использовать и для кварцевых резонаторов, но только не на максимальных частотах.

//----------------------------------------------------------------------

Fuse High Byte = 0x99 = 10011001

RSTDISBL = 1
DWEN = 0
SPIEN = 0
WDTON = 1
EESAVE = 1
BOOTSZ1 = 0
BOOTSZ0 = 0
BOOTRST = 1

Если не смотреть на не критичные загрузчики и прочие сохранения EEPROM, то из опасных фьюзов RSTDISBL не включен. Это хорошо. SPIEN включен, но его и не получилось бы снять по SPI. Но еще включен DWEN. Это отладка по шине debugWIRE, которая совмещена с выводом RESET. Более микроконтроллер по шине ISP видеться не будет, пока не отключите DWEN. По опасности фьюзы RSTDISBL и DWEN стоят рядом - один делает вывод RESET пином порта, второй занимает вывод RESET для отладки. Но в обоих случаях программирование по SPI интерфейсу становится невозможным.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2309
Зарегистрирован: Пт июл 17, 2009 07:34:07
Откуда: Свердловская обл.

Сообщение uwrtey »

edm2007 писал(а):Такую конфигурацию можно использовать и для кварцевых резонаторов, но только не на максимальных частотах.
Такую конфигурацию без проблем использовал в проектах на Мега_32 с кварцем на 16 МГц
edm2007 писал(а):Но еще включен DWEN. Это отладка по шине debugWIRE, которая совмещена с выводом RESET. Более микроконтроллер по шине ISP видеться не будет, пока не отключите DWEN. По опасности фьюзы RSTDISBL и DWEN стоят рядом - один делает вывод RESET пином порта, второй занимает вывод RESET для отладки. Но в обоих случаях программирование по SPI интерфейсу становится невозможным.
Такую конфигурацию без проблем использовал в проектах на Мега_32 и без проблем использовал SPI
DWEN- http://fusecalc.mirmk.net/help/help08.htm
Похоже и вправду проблема в DWEN, но как объяснить то, что на мега_32 вывод RESET в режиме программирования работает?

Ответ найден:
Во первых:
Похоже это был какой то баг!
( сделал себе сриншот-подсказку сто лет назад, что бы каждый раз не конфигурировать фузы - а она с багом )
На скриншоте ( по которому я настраивал фузы ) JTAG якобы отключен, судя по графическому изображению, а судя по битам указанным правее графического изображения - включен!
Изображение
сейчас настроил по таким же битам и увидел, что он включен!!!!!
Изображение
Во вторых:
у меги_32 на этом месте бит JTAGEN а у меги_328 бит DWEN
JTAGEN не отключает ножку RESET - для этого нужно включить бит OSDEN ( аналог DWEN в 328ой )
А у меги 328 ножку reset можно отключить битами DWEN и RSTDISBL

edm2007 - спасибки :beer: // AKL тоже благодарю за участие
Последний раз редактировалось uwrtey Вс апр 09, 2017 10:13:03, всего редактировалось 4 раза.
не зная броду не лезь к вольтмоду
Ответить

Вернуться в «AVR»