Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.74/34: Рейтинг темы: голосов - 34, средняя оценка - 4.74
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562

Как создать и загрузить библиотеку в iar system workbench?

12.12.2018, 19:46. Показов 7611. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пользуюсь данной IDE и изучаю опорное руководство STM32.
В процессе изучения само собой появился код, который хочу сохранить и использовать далее в своих проектах.
Как это сделать?
ПС.
IDE самая свежая, версия 8.82
ППС
В интернете ничего толкового не нашел.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.12.2018, 19:46
Ответы с готовыми решениями:

Как прочитать регистр(ы) состояния отказа доступа к памяти в IAR Embedded Workbench?
Помогите разобраться пожалуйста. В обработчике исключения MemManage_Handler нужно прочитать регистр(ы) состояния отказа доступа к памяти...

IAR Workbench 7.50.2
Здравствуйте! Подскажите, пожалуйста, как в IAR Workbench 7.50.2 отрегулировать клавишу Tab так, чтобы при нажатии на нее давало 4...

Создать свою библиотеку, чтобы она автоматически подключалась проектам, как это делает System.Linq
Хочу создать свою библиотеку. Нашел информацию, как создавать такие библиотеки VS и использовать их в проектах VS. (например статья...

20
 Аватар для _SayHello
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
12.12.2018, 20:45
Photofenix, http://supp.iar.com/FilesPubli... s.ENU.html
1
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
12.12.2018, 22:08  [ТС]
Спасибо, да вот собственно я тоже нашел данную инструкцию, и возникли у меня некоторые вопрос.
1) Создание проекта затруднений не вызывает.
2) Создание проекта библиотеки, запутался.
In the same workspace tutorials, add a new project called tutor_library.
Получается, что в той же директории, мне нужно создать новый проект и назвать его как душа пожелает.
Add the files Max.s and Min.s to the project.
И как их добавить?
Собственно пока волнует эти проблемы.
0
 Аватар для _SayHello
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
12.12.2018, 22:19
Photofenix,
Вы в других средах библиотеки делали/использовали? Например в Visual Studio.

Библиотека это тот же проект только подругому собранный.

Тут вам предлагают создать проект А, в котором вы будете использовать библиотеку. И проект Б из которого вы соберете библиотеку. Так вот файлы Max.s и Min.s это файлы проекта Б, по факту ваши файлы которые вы хотите собрать в библиотеку. Просто тут, оперируют с ассемблерными файлами у вас скорее всего будет связка .c + .h
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
13.12.2018, 05:40
Photofenix, понятие "библиотека" несколько размыта
есть по крайней мере два типа этого понятия
1 набор исходников C и H файлов
2 скомпилированный объектный модуль, для удобства работы также , обычно, прилагается заголовочный файл
о каком идет речь?
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
13.12.2018, 20:02  [ТС]
В общем бьюсь второй день, все делаю как по инструкции. Выдает ошибку. Может кто-нибудь покажет, как нужно делать правильно?
0
 Аватар для _SayHello
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
13.12.2018, 20:04
Photofenix, ну там ошибки опиши например.
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
13.12.2018, 20:11  [ТС]
Приведу скрин, где указаны ошибки.
Итак, создал проект под названием Libra. Содержит одно определение и два метода.
C++
1
2
3
4
5
6
7
8
9
#define test 0;
 
int getNull (){
  return 0;
}
 
int getOne (){
  return 1;
}
Собрал как библиотека.
Второй проект выбрал по умолчанию как ведущий, добавил в него файл библиотеки, пытаюсь в главной функции вызвать эти два метода, выдает ошибку.
Миниатюры
Как создать и загрузить библиотеку в iar system workbench?  
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
13.12.2018, 20:11  [ТС]
Цитата Сообщение от _SayHello Посмотреть сообщение
ну там ошибки опиши например.
Привел
0
 Аватар для _SayHello
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
13.12.2018, 23:12
Photofenix, а путь до библиотеки прописали в настройках линкера?
Вот еще на русском http://microsin.net/programmin... brary.html

Добавлено через 11 минут
и подключение хидера не вижу в main
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
14.12.2018, 11:17  [ТС]
Приведу скрины с пошаговыми действиями. Скрины придется приводить ссылкой, т.к. на этот форум он не загружает последовательно.
№1.
Создаю проект и добавляю его файл, написанный в notepad.


№2
Перехожу в настройки, во вкладке Target выбираю устройство, на котором отлаживаю программу.


№3
Во вкладке output, выбираю Library


№4
Во вкладке Labrary configuration, выбираю режим нормальный.


№5 Собираю проект.



###

№1
Создаю проект, выбираю как основной. Во вкладке выбираю устройство, на котором отлаживаю


№2
Собираю проект.

№3
Добавляю библиотеку в проект.


№4
Библиотека добавилась и скомпилировалась без ошибок. Но константы не работают.


Добавлю еще зип архив.
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
14.12.2018, 11:18  [ТС]
Ну б....ь, ни ссылок, ни картинок загрузить уже нельзя.
Вложения
Тип файла: rar Картинки.rar (349.0 Кб, 7 просмотров)
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
14.12.2018, 11:19  [ТС]
Он у меня просто не подключается.
0
 Аватар для _SayHello
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
14.12.2018, 13:50
Photofenix, перед main добавь прототипы
C
1
2
int getNull ();
int getOne ();
1
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
14.12.2018, 21:31  [ТС]
Попробовал использовать прототип функции. При выполнении кода, выполняется сам прототип, но никак заданная функция в библиотеке. Кроме того, там есть константа, которую хотелось бы использовать тоже.
0
Эксперт по электронике
6815 / 3240 / 337
Регистрация: 28.10.2011
Сообщений: 12,654
Записей в блоге: 7
14.12.2018, 21:42
Цитата Сообщение от Photofenix Посмотреть сообщение
Кроме того, там есть константа, которую хотелось бы использовать тоже.
Тогда подключайте *.c и *.h файлы к проекту вместо библиотеки.
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
15.12.2018, 20:03  [ТС]
Проблема была решена. Оказалось все намного проще. Не нужно создавать библиотеку и компилить её в отдельном файле.
Достаточно просто добавить необходимый файл с расширением .с или .h и в главном файле прописать библиотеку.
0
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
15.12.2018, 20:07  [ТС]
Вот, если кому то нужно.
Миниатюры
Как создать и загрузить библиотеку в iar system workbench?  
0
 Аватар для _SayHello
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
15.12.2018, 21:38
Photofenix, подключать .c файл к проекту не хорошо, для этого существуют .h файлы. Вам редактор даже заботливо об этом намекает варнингом.

Когда не знаешь что хочешь - так и получается. Нужно было всего лишь прицепить .h + .c файлы к проекту, а пытались подключить статическую библиотеку. Что кстати не лишено смысла и очень даже полезно.
1
63 / 63 / 39
Регистрация: 18.11.2016
Сообщений: 562
15.12.2018, 22:08  [ТС]
Спасибо. Мне пока этого хватить. Сейчас пишу разбираюсь с адресами и пишу код.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.12.2018, 22:08
Помогаю со студенческими работами здесь

IAR Workbench (EWARM)
Здравствуйте! Подскажите, когда я компилирую код в среде разработки IAR для ARM ( EWARM ), как мне посмотреть возникающие ошибки или...

Прерывания в IAR Embeddd WorkBench
Делаю такие прерывания: #pragma vector=TIMER_COMPA_vect _interrupt void TIMER1_inter() { } Непонятная ошибка: this...

IAR Embedded Workbench for AVR 5.50.1 Full
IAR Embeddid Workbench for AVR 5.50.1 Full - удобный и эффективный компилятор, компоновщик и отладчик программного обеспечения для...

MSP430 + IAR Embedded Workbench - Simulator
Всем привет. Пытаюсь запустить отладку в IAR без отладочной платы. При старте симуляции выдает ошибку: User error: Illegal opcode found...

Как загрузить содержание таблицы из модели на сервер в MySQL Workbench?
Ребята, создал таблицы, связи в модели в программе MySQL Workbench. Загрузил сами таблицы на сервер таким способом: Database ->...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru