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

Обсуждаем контроллеры компании Atmel.
Vertel
Родился
Сообщения: 18
Зарегистрирован: Чт фев 15, 2007 18:13:29

Сообщение Vertel »

Привет. Прочитал на "avr123" о программировании фьюзов, что-то не понятно, как запрограммировать МК на частоту 16 МГц в CodeVisionAVR C Compiler Evaluation, установленная галочка это «1»?
Аватара пользователя
Abaktyсh
Вечно гонимый
Сообщения: 232
Зарегистрирован: Ср фев 28, 2007 17:48:07

Сообщение Abaktyсh »

Vertel писал(а):Привет. Прочитал на "avr123" о программировании фьюзов, что-то не понятно, как запрограммировать МК на частоту 16 МГц в CodeVisionAVR C Compiler Evaluation, установленная галочка это «1»?


на станице /07.htm написано

З а п о м н и т е :

НЕ запрограммированный фьюз 1

ЗАпрограммированный фьюз 0

=======
А на скриншоте над окном фьзов написано что значит галочка.

Об установке фьюзов на 16 МГц прямо под скриншотом написано:

"Для использования ATmega16 (и других мег) с внешним кварцевым или керамическим резонатором на частотах выше 8 МГц вам нужно установить фьюзы как в примере выше но запрограммировать CKOPT - значит сделать его "0". Т.е. вам нужна такая комбинация: ... "

========
Читайте не спеша и внимательно - много времени сэкономите.
fikus
Родился
Сообщения: 8
Зарегистрирован: Пн апр 16, 2007 14:29:11
Контактная информация:

Сообщение fikus »

Подскажите если не трудно по Attiny2313-какие fuse-биты при программировании установить, чтобы указать микроконтроллеру тактирование он внешнего источника (кварц на 3,68Мгц) программой PopyProg2000? Спасибо.
Аватара пользователя
Tohey
Грызет канифоль
Сообщения: 257
Зарегистрирован: Сб сен 09, 2006 19:00:18
Откуда: СССР

Сообщение Tohey »

А если установить фузы для защиты ПО, возможно будет стереть МК через ISP и опять записывать через ISP? На примере mega8, mega16
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

Да, если не отключить RESET в меге8.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Tohey писал(а):А если установить фузы для защиты ПО, возможно будет стереть МК через ISP и опять записывать через ISP? На примере mega8, mega16

Можно (если ISP разрешено).
Защита устанавливается не фузами, а Lock-битами, которые стираются при общем стирании памяти. Фузы при стирании памяти не стираются.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Алексей П
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Сб фев 24, 2007 06:26:18
Откуда: г.Нижний Тагил
Контактная информация:

Сообщение Алексей П »

Подскажите, как нужно выставить фьюзы чтобы tiny2313 работал с частотой 8мГц без внешнего кварца?
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

Алексей П писал(а):как нужно выставить фьюзы чтобы tiny2313 работал с частотой 8мГц без внешнего кварца?


Как написано в кратком курсе на странице 7 - "прошивание AVR"

Смотрите таблицу в дш "Table 2. Device Clocking Select"

Найдите комбинацию фьюзов для 8 МГц

==========

Затем уже в программе нужно установить деление частоты на 1

Раздел ДШ "System Clock Prescalar" стр. 30

Существует специальная процедура:

"To avoid unintentional changes of clock frequency, a special write procedure must be followed to change the CLKPS bits:

1. Write the Clock Prescaler Change Enable (CLKPCE) bit to one and all other bits
in CLKPR to zero.

2. Within four cycles, write the desired value to CLKPS while writing a zero to
CLKPCE.

Interrupts must be disabled when changing prescaler setting to make sure the write procedure
is not interrupted.

Даю перевод :lol:

Отключить прерывания.

1. Вписать в регистр CLKPR число 1000 0000

2. На позднее следующих 4 тактов записать в число CLKPR 0000xxxx где xxxx - устанавливает коэф деления.

=========

Советую делать это мастером начального кода
компилятора CVAVR - вот что он мне выдал:

Код: Выделить всё

// Crystal Oscillator division factor: 1
#pragma optsize-

CLKPR=0x80;
CLKPR=0x00;

#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif


=====
По ходу программы вы можете менять коэф. деления
(и значит частоту такта) от 1 до 256.

Не забывайте выключать прерывания !
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Attiny2313 производится с уже заданным значением фюзов, настроенном на работу от встроенного генератора (т.е. без внешнего кварца) 8 МГц, но при этом так же при производстве включается фьюз CKDIV8 - то есть фактически ядро работает на чатоте в 8 раз меньшей.
Чтобы МК заработал на частоте 8 МГц без внешнего кварца, надо сбросить фьюз CKDIV8 - и все. Естественно, SUT-ы должны быть верно настроены в соответствии с BODLEVEL, но об этом, кажется, никто не спрашивает...
Предделитель тактовой частоты автоматически устанавливается при сбросе в значение, соответствующее либо делению на 8 (CKDIV8=0, т.е. установлен), либо делению на 1 (CKDIV8=1, т.е. сброшен), если в процессе работы надо его переустанавливать - делаайте по вышеописанной процедуре, но просто для запуска это лишнее.
Тут обнаружил довольно много информации в инете о том, что в доке атмела есть несоответствие практике (и здесь на форуме об этом говорилось) - якобы Attiny2313 с завода выходят все-таки настроенными на встроенный генератор 4 МГц, а не 8 (как в доке). Посему, кроме вышеизложенного, надо убедиться, что CKSEL задают чвстроенный генератор 8 МГц, т.е. CKSEL=0100
Последний раз редактировалось ARV Вс апр 29, 2007 08:20:57, всего редактировалось 1 раз.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Алексей П
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Сб фев 24, 2007 06:26:18
Откуда: г.Нижний Тагил
Контактная информация:

Сообщение Алексей П »

Уважаемые спецы, подскажите существуют ли даташиты на AVR на русском, или хотябы полное описание фьюзов с примерами, т.е. поставиш птичку здесь будет тото, а если здесь то получиш полный абзац.
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

Вот пользуйтесь :

Установка фузов для ATtiny2313 по-русски
http://www.tvinfo.ru/tp/attiny2313.htm
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Аватара пользователя
Алексей П
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Сб фев 24, 2007 06:26:18
Откуда: г.Нижний Тагил
Контактная информация:

Сообщение Алексей П »

Вот теперь вопросы:
1)Что такое WDTON и как он работает?
2)Чем отличаются BODLEVEL0, BODLEVEL1 и BODLEVEL2?
3)Что будет если SUT1 и SUT0 оба включить или выключит и в чем измеряется время старта?
4)Что произойдет если выставить CKSEL3..0 следдующие знасения 0000 , 0001, 0011 и тд?
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Алексей П писал(а):Вот теперь вопросы:
1)Что такое WDTON и как он работает?
2)Чем отличаются BODLEVEL0, BODLEVEL1 и BODLEVEL2?
3)Что будет если SUT1 и SUT0 оба включить или выключит и в чем измеряется время старта?
4)Что произойдет если выставить CKSEL3..0 следдующие знасения 0000 , 0001, 0011 и тд?

Алексей П, а ты не пробовал все же заглядывать в фирменную документацию? Я могу понять, что текст на английском может быть сложен для понимания, но таблица из двух столбиков "CKSEL" и "System Clock" или типа того - разве ее понять невозможно? Герцы и миллисекунды, по-моему, обозначаются так, что всякий разберется...
Ответить на твои вопросы в двух словах понятно вряд ли получится, а давать перевод документации - тоже, знаешь, как-то не очень... Есть же в конце концов Prompt, который встраивается прямо в Acrobat Reader - непонятные слова можно переводить прямо из pdf...

А по существу твоих вопросов скажу следующее: CKSEL, SUT и BODLEVEL взаимосвязаны между собой, и то "что произойдет" - разное при разных их комбинациях. Документация по этому вопросу составлена так, что понять сразу все там не получается (или это я не могу - у меня, кстати, с английским тоже нелады) - слишком там напутано все... А WDTON работает просто: если он запрограммирован, watchdog-timer всегда будет работать только на аппаратный сброс МК (как в классическом AT90S2313) и отключить его программно будет нельзя, а если не запрограммирован, то появляется возможность программно настроить его не только на сброс, но и на прерывание или вообще отключить.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Алексей П
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Сб фев 24, 2007 06:26:18
Откуда: г.Нижний Тагил
Контактная информация:

Сообщение Алексей П »

Поповоду промта, может у вас в Новочеркаске и продают его, а унас в магазинах с дисками нет ничего кроме игрушек и DVD.
Мне так и непонятно что же такое WDTON?
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Промпт можно и слить откуда-нибудь, хотя дороговато выйдет :)
Могу выслать наложенным платежом (почтовый сбор + стоимость болванки) :)
WDTON - это fuse-бит, отвечающий за принудительное включение сторожевого таймера.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Алексей П
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Сб фев 24, 2007 06:26:18
Откуда: г.Нижний Тагил
Контактная информация:

Сообщение Алексей П »

Тоесть если я правелно понял, если включить WDTON,то при зависании процессора он его сбросит, тогда такой вопрос, а через какое врамя.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Через какое время - это задается в программе через WDTCSR - можно выбрать от 16 мс до 8 секунд (это время приблизительное - формируется отдельным встроенным малостабильным генератором). Если ничего не делать с этим регистром, а просто навсегда включить сторожевого песика фьюзом WDTON, то сброс произойдет через 16 мс.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

Алексей П писал(а):Вот теперь вопросы:


На первой странице курса есть линк на русский перевод даташита на атмегу128 - там все это есть.

И в низу второй страницы курса ПО-РУССКИ описано
устройство AVR и фьюзы.

Линк на Курс в моем профиле.
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Аватара пользователя
Алексей П
Вымогатель припоя
Сообщения: 615
Зарегистрирован: Сб фев 24, 2007 06:26:18
Откуда: г.Нижний Тагил
Контактная информация:

Сообщение Алексей П »

Сегодня проверил на 4-х attiny2313 заводскую установку фьюзов,
поучил следующий результат: CKSEL=0100, CKDIV8=1,SUT=01, CKOUT=0, BODLEVEL=000, WDTON=0,DWEN=0, EESAVE=0. Получается что с завода они идут всеже с тактированием на 8мГц, а предделитель сброшен.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Очень может быть, что Атмел, начитавшись наших форумов, пришли к выводу, что проще перенастроить производство :)
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Ответить

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