Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: [IAR] Ошибка сборки исходников Atmel AppNote AVR318
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
Didro
Добрый день,

пытаюсь опросить датчик температуры DS18b20 по 1-wire с помощью ATMega8. Причем сделать это нужно обязательно аппаратно (например, используя USART).
Нашел Application Note от Atmel - AVR318 и исходники к нему - AVR318.zip.
Исходники под IAR EWAVR. Указано, что использовалась версия 3.20, которую найти не смог.

При попытке собрать исходники из папки \interrupt_driven в IAR EWAVR версий 4.0, 4.30, 5.20 на этапе линковки появляется ошибка:

Цитата
Error[e46]: Undefined external "?need_segment_init" referred in OWIIntFunctions ( E:\Documents and Settings\admin\Рабочий стол\AVR318\interrupt_driven
В настройках проекта пробовал - -cpu: ATMega16, memory model: Tiny\Small - результат тот же.
Гугл по ошибке " Undefined external "?need_segment_init" " ничего не говорит.

Прошу вашей помощи.

Спасибо
sigmaN
попробуйте просто Undefined external
rezident
Ошибка указывает на то, что есть ссылка или вызов не описанной (или описанной как extern) функции в OWIIntFunctions.c. Поскольку ни в одном хедере или исходнике проекта нет ни такой функции, ни вызова ее, а также тот факт, что название начинается с вопросительного знака, позволяет предположить, что это какая-то внутренняя библиотечная функция линкера. Например, вызываемая из старт-апа. Возможно вы неправильно экспортировали или создали вновь данный проект. Тем более, что в листинге есть и ключи вызова компилятора/линкера и строка с упоминанием данной функции
Код
EXTERN ?need_segment_init

См. файл \polled\Debug\List\main.s90.
AndryG
Я на такое нарвался, когда отключил библиотеки в проекте. Люди посоветовали не отключать smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.