Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Замена mega8 на mega168 - пропала sprintf
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
kd_Rash
Перепаял котлы, поменял.
в коде все исправил, что связано с настройками регистров таймеров и т.д.
компилю в IAR-е
прошил - не работает, сплошные глюки.
по-тихоньку по шагам выяснил что если все sprintf-ы убрать, или к примеру
sprintf (str,"U%3d",parameter);
заменить на
strcpy (str,"U111");
схема "заработала", естественно как типа теста

в чем порылась собаченция

С Уважением, Дмитрий
Сергей Борщ
Цитата(kd_Rash @ Oct 24 2007, 14:19) *
в коде все исправил, что связано с настройками регистров таймеров и т.д.
компилю в IAR-е
В .xcl тоже исправили? У 168 ОЗУ начинается с другого адреса. Попробуйте стека добавить - возможно из-за отсутствия сегмента tiny требуется больше стека для каких-то функций. А вообще можно написать простенькую программу из одного sprintf и putchar и прогнать ее в симуляторе.
GDI
Может модель памяти поменялась а настройках проекта, да и настройки спринтф-ов тоже не помешает проверить ? А еще можно миграцию почитать...
kd_Rash
в том то и дело, что стек увеличивал.
правда с 0х35 до 0хАА - не помогло

а сейчас взял да и забацал 0xFF- заработало!!!

спасибо, ура!

только надо ли пробовать его уменьшать по-тихоньку или можно оставить FF

спасибо!

а .xcl - это где?

а миграцию тоже читал, только смотрел на регистры, вот блин
GDI
В настройках линкера разрешите генерировать листинг в ХТМЛ формате и галки поставьте( я не помню какие точно надо а ИАРа под руками нет) файл будет лежать в Debug/List и в нем есть оценка использования стеков после вызова каждой функции и результирующий размер, я всегда ставил размер стека больше результирующего.
kd_Rash
спасибо!
еще раз

Удачи, Дмитрий.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.