свои LIB в Keil (С51)

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
c717411
Встал на лапы
Сообщения: 148
Зарегистрирован: Ср дек 29, 2010 21:19:03

свои LIB в Keil (С51)

Сообщение c717411 »

Хочу сделать свою библиотеку, чтобы юзать нужные мне функции в различных проектах.
Взял для теста две функции в либе (в функциях смысла не искать, они тупо для теста):

Код: Выделить всё

#include <reg51.h>
void set_port(unsigned char f)
{
    P3=f;
}
void delay()
{
int i;
for(i=0;++i;i<40000);
}
Заголовочный файл:

Код: Выделить всё

#ifndef __MYLIB_H__
#define __MYLIB_H__
extern void set_port(unsigned char f);
extern void delay(void);
#endif
И проект с полученной либой:

Код: Выделить всё

#include <reg51.h>
#include <mylib.h>
void main()
{
   P3=0x81;
   set_port(0x00);
   delay();
   set_port(0xAA);
   delay();
}
Библиотека собирается нормально. А при ее использовании и сборке проекта - куча варнингов типа:
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: DELAY
*** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: _SET_PORT
*** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: DELAY

Причем HEX файл создается, но не работает как положено. Не могу никак понять причину, в документации по Кеил тоже ничего толкового нет, только как создать LIB и всё. Помогите пофиксить этот маленький проект. Исходники прилагаются. Спасибо.

2moders: перенесите плз топик в "Микроконтроллеры и ПЛИС"
Вложения
test_lib.rar
(65.26 КБ) 233 скачивания
Реклама
ilya_z
Родился
Сообщения: 6
Зарегистрирован: Вт окт 18, 2011 17:37:45

Re: свои LIB в Keil (С51)

Сообщение ilya_z »

1. Уберите из проекта библиотеки файл startup.a51
2. Добавьте в тестовый проект скомпиленную библиотеку .lib
все должно работать
Реклама
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: свои LIB в Keil (С51)

Сообщение Gudd-Head »

c717411 писал(а):2moders: перенесите плз топик в "Микроконтроллеры и ПЛИС"
Сделано!
В следующий раз пользуйтесь кнопкой Изображение для привлечения модераторов.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
c717411
Встал на лапы
Сообщения: 148
Зарегистрирован: Ср дек 29, 2010 21:19:03

Re: свои LIB в Keil (С51)

Сообщение c717411 »

ilya_z писал(а):1. Уберите из проекта библиотеки файл startup.a51
2. Добавьте в тестовый проект скомпиленную библиотеку .lib
все должно работать
Спс, так заработало.
Реклама
Эиком - электронные компоненты и радиодетали
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»