Свежие обсуждения
Микроконтроллеры

AVR начинающим - вопросы и ответы

1 49 68

Link: правда хотелось бы иметь 12 разрядов в АЦП
Утверждать не буду, но может оказаться, что из 12 р-в, реально получиться использовать 10

 

Alexey: Утверждать не буду, но может оказаться, что из 12 р-в, реально получиться использовать 10
ну так и в атмеге8 10разрядов АЦП это реально 9...

 

Снова требуется помощь "зала"...

Есть МК Tiny13.
Прошиваю его на программаторе UNIPROF.

МК прошивается нормально и работает в схеме.
Рабочая частота по умолчанию - 9,6МГц внутреннего RC генератора.

Теперь хочу снизить рабочую частоту до 128КГц - меняю соответствующие фузы и прошиваю их.
После этого появляется окно с сообщением об отсутствии чипа.

Чип становится не видимым для программатора.
И так - два чипа...

После ручного выбора типа МК в программаторе и нескольких циклов установки-перезаписи фузов (биты - по умолчанию), МК оживает и снова становится виден программатору. ЧИП можно снова перепрошивать и работать. Но только на частотах 9,6МГц или 4,8МГц. При попытке выставить частоту 128КГц чип снова "ломается".

фузы выставлены следующим образом:
CKSEL0 - нет
CKSEL1 - нет
SUT0 - прошит
SUT1 - нет
CKDIV8 - прошит
WDTON - прошит
EESAVE - нет
SPIEN - прошит
RSTDISBL - прошит
BODLEVEL0 - прошит
BODLEVEL1 - прошит
DWEN - нет
SELFPRGEN - нет

Собственно, меняются только два фуза: CKSEL0 и CKSEL1.
Состояние, когда оба прошиты не используется, так как генератор должен быть внутренний.
При прошивке только одного из них меняется рабочая частота - либо 9,6МГц, либо 4,8МГц - Всё работает.
А когда оба фуза оставить не прошитыми, то должен включиться режим с частотой 128КГц, но после прошивки МК перестаёт опознаваться.

Подскажите, пожалуйста, как выйти из положения? Что я не так делаю?

 

После прошивки Вы проверьте работу мк, он по идее должен работать, а не опознаётся потому что программатор чё то там от 1МГц ниже может его не видеть. Обратно то Вы же принудительно его фузы устанавливаете на большие частоты. Подобное что то было, пришлось даже светодиодик задействовать и подобрать частоту мигания, а то с 4 МГц в 100кГц замучился ждать и функционирование видеть. Сумбурно и давно как то это было, но попытайтесь воспользоваться тем что есть. Да, это было с Mega8.

 

Нет, после прошивки на 128КГц МК не работает в схеме.
Только при возврате на частоту 9,6МГц или 4,8МГц.

 

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

 

DWD: При попытке выставить частоту 128КГц чип снова "ломается".
Частота программировния должна быть в 4 раза ниже частоты кристалла

 

viczai: Но по логике сначала зашейте только программу на большей частоте, а потом только фузы.

Так и делал.

Alexey: Частота программировния должна быть в 4 раза ниже частоты кристалла

И как мне её понизить?

 

проверьте и подтвердите еще раз фузы:

CKDIV8 - прошит - тактовая делится на 8 (частота 16кГц) - поменяйте на противоположное.
SPIEN - прошит - разрешено последовательное программирование - менять нельзя.
RSTDISBL - прошит - отключен внешний ресет - как у вас тогда работает программатор - должно быть обратное значение?

 

DWD: И как мне её понизить?
В моем , выбирается из списка.
smg123: проверьте и укажите еще раз фузы:
Слышал,в разных программаторах есть разночтения : прошит-не прошит.