Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ATmega AVR
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/89: Рейтинг темы: голосов - 89, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41

Atmega328P-PU + кварц: не запускается генератор при понижении наряжения питания МК

06.08.2019, 01:39. Показов 18246. Ответов 36

Студворк — интернет-сервис помощи студентам
Схема, собранная на Atmega328P-PU работает при напряжении питания 5 В, но при переходе на питание от батареек (3 В) перестает работать. Подключение кварца в схеме - типовое: кварц - на ножки OSC1, OSC2 МК и конденсаторы для генерации 22 пФ.
Прежде, чем создавать эту тему, прочитал на форуме похожую с такой же проблемой "Кварцевый резонатор с МК" и выполнил рекомендации оттуда.
Что делал:
1. Для исключения влияния флюса
- повторно промыл плату;
- собирал эту же схему на макетке.
2. Конденсаторы - рекомендуемые, по маркировке: 22 пФ. Ошибочную емкость 22 нФ (вместо 22 пФ) я бы отличил по габаритам.
3. Поскольку в скетче используется внутренний сторожевой таймер (режим сна), то загружал в контроллер простейший тестовый скетч без режима сна - мигание светодиодом.
4. Проверял напряжение питания МК - 2,8 В.
Как вы понимаете, положительного результата перечисленные операции не принесли.

Где копать?
Не хотелось бы решить проблему, тупо добавив к двум батарейкам третью. Этот вариант - на крайний случай.
Заранее благодарю за помощь.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.08.2019, 01:39
Ответы с готовыми решениями:

Тактовый генератор и ATMEGA328P-PU
Здравствуйте! Есть микроконтроллер ATMEGA328P-PU и некоторые вопросы, а именно: Какой нужен тактовый генератор (я так понимаю без него...

Комп, при нажатии питания, просто не запускается, но если без звуковой карты - запускается нормально
Системка - "1155 GA-B75M-D3V", звуковуха - "Creative SoundBlaster Live! 5.1 EMU10K1", операционная система - "Windows 10". Копм,...

Не запускается внешний кварц на stm32f407...
Всем доброго времени суток! Пытаюсь сделать свою платку под сабжевый проц, раньше платы делал только под AVR, проблем никогда не было,...

36
Эксперт по электронике
6878 / 3301 / 340
Регистрация: 28.10.2011
Сообщений: 12,965
Записей в блоге: 7
06.08.2019, 15:29
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от cadil_cib Посмотреть сообщение
Не гарантирует? Что тогда значит строка в спецификации ATMEGA328P-PU:
Рабочее напряжение - 1.8-5.5 В?
Выше уже ответили. Atmega328P-PU + кварц: не запускается генератор при понижении наряжения питания МК
Читайте внимательно что написано в "P.S." до тех пор пока не поймете. А еще лучше скачайте даташит на Atmega328P. В нем все написано.
При напряжении 1.8 вольт, МК может работать на частоте не больше 4 МГц.
Замените кварц на 8 МГц. Тогда будет работать при 3.3 вольтах.
0
 Аватар для COKPOWEHEU
4092 / 2690 / 432
Регистрация: 09.09.2017
Сообщений: 11,968
06.08.2019, 15:32
Цитата Сообщение от cadil_cib Посмотреть сообщение
А как причитать записи в EEPROM - буду разбираться.
Так не сработает? avrdude -c arduino -P COM1 -p atmega328 -U eeprom:r:eeprom.hex:i
Хотя если у вас есть COM-порт, можно было через него переменные фьюзов и вывести, без работы с ПЗУ.
Цитата Сообщение от cadil_cib Посмотреть сообщение
О чем говорят цифры "255"?
О том, что в EEPROM'е пусто. Очищенный бит в flash/eeprom это 1, а запрограммированный - 0.
0
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41
06.08.2019, 15:43  [ТС]
Цитата Сообщение от liv Посмотреть сообщение
cadil_cib, 255 это 0xff
Повторю, о чем говорит 255(0xff)?
0
 Аватар для COKPOWEHEU
4092 / 2690 / 432
Регистрация: 09.09.2017
Сообщений: 11,968
06.08.2019, 15:49
Повторяю: о том, что там пусто.
0
 Аватар для Ethereal
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
06.08.2019, 21:25
Так во фьюзах не может быть FF FF FF. По крайней мере бит Enable Serial Programming должен быть прошит в ноль. Иначе как вы программу-то ISP заливали ? Так-что это не значения фьюзов, а результат их не чтения.
0
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
06.08.2019, 23:59
Чтобы прочитать отличное от ff, надо сначала туда записать содержимое фьюзов
0
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41
07.08.2019, 00:31  [ТС]
Цитата Сообщение от Ethereal Посмотреть сообщение
Добавлено через 8 минут
P.S. О, в Интернете нашел правда для других кристаллов - для ATmega48/88/168. От 4.5 до 2.7 вольт макс.частота падает линейно от 20 до 10 MHz. От 2.7 до 1.8 вольта снова линейно, но уже с другой крутизной, от 10 до 4 MHz.
Заменил кварц в схеме 16 МГц на 8 МГц, но схема, как и раньше, при 2,8В не работает. Хотя, по идее, должна работать
(см. график). Как запустить свою кривульку? Искать кварц 4 МГц?
Миниатюры
Atmega328P-PU + кварц: не запускается генератор при понижении наряжения питания МК  
0
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
07.08.2019, 00:35
Какое значение фьюзов?
0
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41
07.08.2019, 08:26  [ТС]
Цитата Сообщение от liv Посмотреть сообщение
Какое значение фьюзов?
Фьюзы еще нужно прочитать. Займусь этим позднее.
0
 Аватар для COKPOWEHEU
4092 / 2690 / 432
Регистрация: 09.09.2017
Сообщений: 11,968
07.08.2019, 11:15
Цитата Сообщение от cadil_cib Посмотреть сообщение
Как запустить свою кривульку? Искать кварц 4 МГц?
Сначала проверить наиболее вероятные причины. Обычно это косяки платы (раз говорите, что при высоком напряжении все работает, в данном случае это маловероятно), потом косяки прошивки (опять же именно в данном случае вряд ли), потом фьюзы (вот это сейчас наиболее вероятно), потом дохлые компоненты (бывает и такое, хотя куда реже первых вариантов). Ну и наименее вероятные для подобных устройств - наводки, ошибки документации и прочая экзотика, почти никогда не встречающаяся.
Цитата Сообщение от cadil_cib Посмотреть сообщение
Фьюзы еще нужно прочитать.
Это же дело получаса! Даже код есть, осталось прошить да посмотреть.
1
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41
08.08.2019, 21:51  [ТС]
Цитата Сообщение от liv Посмотреть сообщение
Какое значение фьюзов?
Установил программу SinaProg, в которой в качестве программатора могут использоваться платы Arduino. На скрине: слева - интерфейс SinaProg, а справа - окно Fuse. Код 1E950F соответствует МК Atmega328P.
Миниатюры
Atmega328P-PU + кварц: не запускается генератор при понижении наряжения питания МК  
0
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41
09.08.2019, 00:31  [ТС]
Цитата Сообщение от liv Посмотреть сообщение
Какое значение фьюзов?
Нашел калькулятор фьюзов. Установить в нем BODLEVEL для 1,8В несложно.
По-моему, в калькуляторе надо пересмотреть и другие фьюзы для Atmega328P. Например, Watch-dog Timer always on. Сторожевой таймер используется у меня в скетче. Буду благодарен, если вы проделаете эту работу, поскольку я со своими смутными догадками боюсь угробить контроллер.
0
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41
09.08.2019, 10:14  [ТС]
Мой вариант калькулятора (скрины во вложении). Изменения подчеркнуты.
Жду на критику и предложения.
Миниатюры
Atmega328P-PU + кварц: не запускается генератор при понижении наряжения питания МК   Atmega328P-PU + кварц: не запускается генератор при понижении наряжения питания МК  
0
 Аватар для COKPOWEHEU
4092 / 2690 / 432
Регистрация: 09.09.2017
Сообщений: 11,968
09.08.2019, 10:31
Биты CKSEL, RSTdisable и SPIen не трогайте и ничего не поломается.
1
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
09.08.2019, 12:00
cadil_cib, т.к. у нас 1.8В, используем BODLEVEL, то необходимо изменить CKSEL, SUT, ну и BODLEVEL
Надо, чтобы было CKSEL = 1011b и SUT = 01b, а BODLEVEL = 4
Получаем Extended byte = 04h, Low byte = 0edh, High byte не трогаем, оставляем равным 0deh
Лично я бит WatchDog-а выключаю (как сейчас и есть). Чтобы иметь возможность настраивать "сторожевого пса" в программе (можно менять его длительность срабатывания, включить/выключить). Если бит выключен, то "пес" все равно активен, пока его не выключишь явно!
Если включить бит фьюза, то "пес" будет активен всегда и с одной и той же длительностью. На Ваше усмотрение...

Добавлено через 15 минут
Немного ошибся, пардон... У нас 8МГц, поэтому необходимо CKSEL = 1101b ! Т.е. Low byte = 0f5h !!
1
 Аватар для COKPOWEHEU
4092 / 2690 / 432
Регистрация: 09.09.2017
Сообщений: 11,968
09.08.2019, 18:59
Лучший ответ Сообщение было отмечено cadil_cib как решение

Решение

Цитата Сообщение от liv Посмотреть сообщение
Немного ошибся, пардон... У нас 8МГц, поэтому необходимо CKSEL = 1101b ! Т.е. Low byte = 0f5h !!
У ТСа внешний кварц 16 МГц, так что CKSEL=1111
А поменять надо только BOD, (это ext fuse), так что фьюзы будут выглядеть так:
low=0xFF; high=0xDE; ext=0x06
или даже так:
low=0xFF; high=0xDE; ext=0x07
1
0 / 0 / 0
Регистрация: 13.04.2017
Сообщений: 41
10.08.2019, 09:26  [ТС]
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
...
или даже так:
low=0xFF; high=0xDE; ext=0x07
Воспользовался Вашим предложением. Простейший тестовый скетч заработал с первой попытки (2,8В; 16 МГц). Очередных успехов!
Попутно благодарю всех, кто откликнулся, за терпение и понимание.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.08.2019, 09:26
Помогаю со студенческими работами здесь

Не запускается часовой кварц на STM32L15*
Перестал запускаться часовой кварц. Иногда стартует, а иногда - вообще никак. В какую сторону копать в первую очередь?

Не запускается ПК при подключении доп.питания к видеокарте
Характеристики: Процессор:AMD Ryzen 5 5500 Материнская плата:MSI PRO B550-P Видеокарта:OCPC 3060ti Оперативная память:Netac (2x8) ...

Не запускается компьютер при подключении питания CPU
Здравствуйте. Имеется AMD Phenom ll x6. + мат. плата n68c-s ucc При попытке включения компьютера, ничего не происходит. Если...

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

При понижении ширины при адаптивной верстке появляется белая полоса справа
При понижении ширины при адаптивной верстке появляется белая полоса справа body { font-family: 'aileron'; font-size: 15px;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
37
Ответ Создать тему
Новые блоги и статьи
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации: В классе Работник добавить: накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни коэффициентПрезентеизма — снижает продуктивность. . .
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день. Для работы необходим браузер,. . .
Модель здравосохранения 16. Слишком хорошие и здоровые сотрудники уходят, недовольные зарплатой
anaschu 23.05.2026
Отладка увольнений и настройка производительности Сегодня во второй половине дня разобрались с механикой увольнений и настроили коэффициент сложности заданий. Вот что было сделано. . . .
Как я стал коммунистом))) Модель сохранения здоровья сотрудников, запись блога номер 15
anaschu 23.05.2026
Внезапно хорошее здоровье сотрудников не нужно капиталистам?))
Модель здравоСохранения 15. Как мы чинили AnyLogic модель рабочего коллектива: сочленение диаграммы состояний болезней и поломок в ресурспул
anaschu 23.05.2026
Как мы чинили AnyLogic модель рабочего коллектива Сегодня разобрались с пятью багами, из-за которых модель либо падала с ошибкой, либо давала совершенно бессмысленные результаты. Каждый баг был. . .
Диалоги с ИИ
zorxor 23.05.2026
Насколько я понимаю - Вы - Искусственный Интеллект. Это так? Да, всё верно. Я — искусственный интеллект. Я представляю собой большую языковую модель, созданную для помощи в самых разных задачах. . . .
Модель здравосохранения 14. Собираем всю модель вместе.
anaschu 22.05.2026
Модель собрана. В будущих постах на видео я покажу, как она работает. В этом посте запускаем её, проверяем результаты и разбираем что можно с ней делать дальше. Перед запуском проверяем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru