Atmega8. Работа от генератора на 12 МГц

Обсуждаем контроллеры компании Atmel.
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Atmega8. Работа от генератора на 12 МГц

Сообщение kushman »

Добрый день!
Припаял к Атмеге8 внешний кварц, на 12 МГц, с конденсаторами по 22 пФ. Фьюзы вроде выставил по науке, CKOPT=0, CKSEL3...0=1110 (см. приложение), однако, работает она явно с гораздо большими задержками, чем от внутреннего на 8 МГц. Подскажите товарищи, в чем может быть дело?
Вложения
fuse.jpg
(97.27 КБ) 975 скачиваний
Реклама
Аватара пользователя
ИС-пытатель
Вымогатель припоя
Сообщения: 577
Зарегистрирован: Ср июн 19, 2013 08:10:48
Откуда: Москва, СПб, Липецк, Рязань

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение ИС-пытатель »

Попробуй кондеры подобрать. поменьше/побольше
Реклама
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение kushman »

Мне в принципе не нужен высокочастотный кварц, впаял, что под руокй было, просто УАРТ нестабильно работает от внутреннего. Может часовой запаять, не скажется это сильно на производительности?
Alkul
Держит паяльник хвостом
Сообщения: 933
Зарегистрирован: Ср апр 13, 2011 11:09:20
Откуда: Екатеринбург

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение Alkul »

kushman писал(а):Добрый день!
Припаял к Атмеге8 внешний кварц, на 12 МГц, с конденсаторами по 22 пФ. Фьюзы вроде выставил по науке, CKOPT=0, CKSEL3...0=1110
Я с кодевижном не работал, поэтому не знаю, инверсно там устанавливаются фьюзы, или нет.
CKOPT лучше запрограммировать, но тогда у Вас неверно выставлены CKSEL
Фьюзы должны быть такими:
CKSEL3...0=0001, CKOPT=0. Если программатор требует инверсной записи, то CKSEL3...0=1110, CKOPT=1
И конденсаторы поставьте емкостью 15 или 16 пФ, 22 пФ многовато.
Реклама
Эиком - электронные компоненты и радиодетали
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение kushman »

Похоже доигрался с фьюзами, поставил CKSEL3…0 = 1001, и все пишет avrprog error entering programming mode.
Реклама
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение akl »

Подразумевая, в соответствии с DS, под 1 - Незапрограммированный(нет галки) бит, 0-Запрограммированный(галка) бит, Вы перевели mega8 в режим тактирования от часового кварца.
СпойлерИзображение
fuse_CKSEL3_0_M8.GIF
Если наоборот, то mega8 ожидает подключения внешней RC-цепочки.
СпойлерИзображение
fuse_RC_mega8.GIF
kushman писал(а):Фьюзы вроде выставил по науке, CKOPT=0, CKSEL3...0=1110
Для кварца 12МГц биты должны быть выставлены так
CKSEL3...0 1111 CKOPT=0.
СпойлерИзображение
fuse_CKSEL3_0_M8_12MHz.GIF
Реклама
Аватара пользователя
ИС-пытатель
Вымогатель припоя
Сообщения: 577
Зарегистрирован: Ср июн 19, 2013 08:10:48
Откуда: Москва, СПб, Липецк, Рязань

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение ИС-пытатель »

В последнем вложении Вы обвели для внутреннего генератора. Для кварца верхние строчки
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение akl »

Нет. В последнем вложении красным обведен вариант с кварцем, верхние строчки для керамики, а это не одно и то же.
Аватара пользователя
ИС-пытатель
Вымогатель припоя
Сообщения: 577
Зарегистрирован: Ср июн 19, 2013 08:10:48
Откуда: Москва, СПб, Липецк, Рязань

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение ИС-пытатель »

А, точно! Прошу прощения. Я че-то посчитал, что Crystal - это сам камень, микросхема. )
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение kushman »

В том и дело, я припаял часовой кварц, и на фьюзы поставил галочки на CKSEL2 и CKSEL1. В CodeVision, галочки означают нули. Т.е. CKSEL3...0 = 1001.
Но контроллер теперь вообще отказывается программироваться.
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение akl »

Программатор нужно настроить на максимально низкую частоту обмена. Это возможно?
Tiller
Опытный кот
Сообщения: 801
Зарегистрирован: Ср июл 03, 2013 23:13:43
Откуда: Россия

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение Tiller »

kushman писал(а):Мне в принципе не нужен высокочастотный кварц, впаял, что под руокй было, просто УАРТ нестабильно работает от внутреннего. Может часовой запаять, не скажется это сильно на производительности?
Вот, блин, спецов развелось. А западло даташит сначала почитать, прежде чем схему паять?
И заголовок сменить надо. Ведь речь идёт не о том, как запустить Atmega8 от генератора, а о том, почему неустойчиво работает UART!
А в топике вообще речь идёт не о работе от генератора, а запуске Atmega8 от кварцевого резонатора.
Одно название топика сбивает с толку.
Открываем даташит и читаем раздел по UART. Конкретно - какие значения загрузить в регистры конфигурации. Примеры расчётов там даны.
И ещё один совет - для работы с UART лучше всего подходят кварцы с частотой, кратной 1.8432.
В этом случае UART будет работать идеально.

И ещё одно замечание - Atmeg'и прекрасно запускаются и без кондёров у кварца.
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение akl »

Уверяю Вас, что настроенный на работу от 12МГц UART работает не менее идеально. :)
Tiller
Опытный кот
Сообщения: 801
Зарегистрирован: Ср июл 03, 2013 23:13:43
Откуда: Россия

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение Tiller »

akl писал(а):Уверяю Вас, что настроенный на работу от 12МГц UART работает не менее идеально. :)
А не надо уверять, Вы ведь не гадалка?
Расчёт нужен для выбранной скорости обмена.
Для кварца, кратного 1.8432 связь будет идеальной на любой скорости обмена, а вот для 12 МГц необходимо проверить, удастся ли уложиться в допуск.
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение kushman »

Там даны не только примеры расчета, но даже код, который в зависимости от скорости обмена и частоты кварца автоматом расчитывает значения регистров конфигурации, и код этот вполне работает. Но вот незадача в том, что при изменении температуры, UART отказывается корректно работать, и приемное устройство команды не переваривает.
Отсюда и пошла мысль, что в связи с нестабильностью RC-генераторов, неплохо было бы попробовать запустить МК от внешнего кварца. Однако, тут я приплыл :)
Tiller
Опытный кот
Сообщения: 801
Зарегистрирован: Ср июл 03, 2013 23:13:43
Откуда: Россия

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение Tiller »

kushman писал(а):Отсюда и пошла мысль, что в связи с нестабильностью RC-генераторов, неплохо было бы попробовать запустить МК от внешнего кварца. Однако, тут я приплыл :)
Решение правильное. UART от встроенного RC это не серьезно.
Идеально - кварц из серии 1.8432*К, но можно использовать и кварцы других частот. Только связь будет не на всех скоростях.
Тактовая частота микроконтроллера должна быть, как минимум, в 4 раза выше тактовой частоты программатора.

МК у Вас программируется?
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение kushman »

Нет, МК программироваться отказывается, пишет ошибку (см. выше).
Tiller
Опытный кот
Сообщения: 801
Зарегистрирован: Ср июл 03, 2013 23:13:43
Откуда: Россия

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение Tiller »

kushman писал(а):Нет, МК программироваться отказывается, пишет ошибку (см. выше).
Вернуть кварц 12 МГц на место. Сначала надо оживить МК.
Если МК не запускается с кварцем 12 МГц, подайте через резистор примерно 3кОм на вход XTAL1 внешний тактовый сигнал. Хватит 1 МГц. Можно и выше.
Главное - запустить МК.
Аватара пользователя
ИС-пытатель
Вымогатель припоя
Сообщения: 577
Зарегистрирован: Ср июн 19, 2013 08:10:48
Откуда: Москва, СПб, Липецк, Рязань

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение ИС-пытатель »

kushman писал(а):Но вот незадача в том, что при изменении температуры, UART отказывается корректно работать, и приемное устройство команды не переваривает.
Прошу прощения, а можно поподробнее? Насколько уходит частота внутреннего генератора контроллера при изменении температуры на 1 градус и на 10 градусов?
Просто я сейчас работаю над одной темой, в которой так же используется UART. Я настаиваю на том, чтобы подключить внешний резонатор (не только для UARTA, а вообще для общей более-менее стабильности временных параметров), но вот мои вышестоящие коллеги рогами упираются в землю - что это, дескать, лишнее. Хотя тема военная и копеечный кварц заметно улучшил бы ее характеристики.
Tiller
Опытный кот
Сообщения: 801
Зарегистрирован: Ср июл 03, 2013 23:13:43
Откуда: Россия

Re: Atmega8. Работа от генератора на 12 МГц

Сообщение Tiller »

ИС-пытатель писал(а): Хотя тема военная и копеечный кварц заметно улучшил бы ее характеристики.
У Ваших коллег проблемы с головой? Тут даже думать нечего. В комнатных условиях не прокатывает.
И изучение чужих мнений только навредит. Не мнения надо собирать, а открывать даташит и рассчитывать (просчитывать) нестабильноть температурную и пр.
Это необходимо делать не только для промышленного применения, а даже для собственного. А тут - военка! Ну, блин, "разработчики".
Ответить

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