Arduino codeblocks как подключить библиотеку

10 настроек CodeBlocks, которые надо сделать сразу после установки

Сразу после установки CodeBlocks настройте его под себя. Среда CodeBlocks была сделана программистами для программистов. Она имеет множество настроек. Рассмотрим самые важные.

1. Установите ассоциации с файлом проектов

Выполните «Меню — Настройки — Среда»

Нажмите кнопку «Управление».

Нажмите сначала «Удалить все», чтобы не было лишних ассоциаций, а потом установите те из них, которые вам нужны. Если вы новичок, то рекомендую поставить галочку только в первой строчке «.cbp (project file). В этом случае вы будет уверены, что если зашли в проект, то всё будет работать.

Затем нажмите «Применить».

2. Увеличьте шрифт редактора

Шрифт редактора по умолчанию мелковат.

Нажмите на клавишу Ctrl и, не отпуская, покрутите колесо мыши. Так можно быстро выбрать комфортный шрифт.

3. Увеличьте шрифт выводимых сообщений

С помощью предыдущего приёма вы можете установить размер шрифта в окне «Журнал сборки»:

Но неудобство в том, что размер шрифта в этом журнале будет опять сброшен после следующей сборки.

Поэтому войдите в меню «Настройки — Среда — Вид»

И поставьте нужный размер шрифта логов сообщений.

4. Выберите стиль отступов

Так как язык Си — это язык свободной формы, то программист волен располагать текст программы как угодно. Компилятор всё равно ориентируется на точки с запятой в конце команды. Это породило целый ряд возможных стилей отступа. И CodeBlocks позволяет выбрать любой из самых популярных стилей.

Для этого войдите в меню «Настройки — Редактор — Средства форматирования»

Я рекомендую использовать Allman (ANSI), который наиболее удобен по целому ряду причин:

Но, конечно же, если вы привыкли к другому стилю, то выбирайте его.

5. Создайте свой шаблон проекта

Когда вы создаете новый проект, то CodeBlocks предлагает целый ряд шаблонов. Вы легко можете добавить свой. Для этого начните с любого шаблона (или с чистого листа), и напишите вашу минимальную программу.

Потом войдите в меню «Файл — Сохранить проект как шаблон…»

Введите имя шаблона и нажмите Ok.

Для создания нового проекта по этому шаблону войдите в меню «Файл — Создать — Проект — Пользовательские шаблоны»

6. Установите код текста программы по умолчанию

Войдите в меню: «Настройки — Редактор — Код по умолчанию» и добавьте код, с которого вы обычно начинаете ваш файл. Обычно это комментарий к программе.

Вы можете задать свой текст для каждого вида файла. При создании нового файла этого типа в начале уже будет размещён этот код.

7. Настройте стиль подсветки синтаксиса

CodeBlocks уже имеет настройки подсветки синтаксиса для множества языков программирования. Вы можете как выбрать уже готовый стиль, так и создать новые цветовые схемы.

Для этого войдите в меню: «Настройки — Редактор — Подсветка синтаксиса»

Здесь вы можете настроить подсветку любых элементов текста.

8. Настройте сочетания клавиш

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

Для этого войдите в меню: «Настройки — Редактор — Сочетания клавиш»

Здесь вы можете создать несколько профилей, и в каждом профиле определить свои клавиатурные сокращения для вызова пунктов меню.

READ  Как подключить ноутбук к wifi точке доступа

9. Настройте сокращения для быстрого ввода кода

Кроме автодополнения кода в CodeBlocks есть дополнительно так называемые сокращения.

Автодополнение кода — это подсказка редактора, когда вы набираете часть слова, а редактор предлагает возможные варианты:

Сокращения — это наборы букв, которые нужно написать и нажать Ctrl+J. После этого в текст будут вставлены полный текст.

Для настройки сокращений войдите в меню: «Настройки — Редактор — Сокращения»

Вы здесь видите, что если набрать «ife» и нажать Ctrl+J, то в текст будет вставлена структура «if — else». Это позволяет ускорить ввод кода.

10. Добавьте сниппеты

Сниппеты — это фрагменты кода, которые можно вставлять в текст простым перетаскиванием мышкой.

Для включения окна сниппетов поставьте галочку в пункте меню «Вид — Фрагменты программы»

После этого щёлкните правой кнопкой мыши на строке «codesnippets»

Нажмите «Добавить фрагмент программы» и введите текст кода и заголовок.

Теперь если мышкой перетащить заголовок сниппета в текст программы, то будет вставлен фрагмент текста. Это позволяет быстро добавлять повторяющиеся тексты в программе и избегать ошибок при вводе.

Как видите, среда CodeBlocks может быть настроена для удобной и эффективной работы.

Обратите внимание! ▼

Похожие записи:

Комментарии 24

Спасибо за ценную информацию, Константин. Я — новичок в программировании на С, поэтому она мне очень кстати.

отличная информация и очень ценная. спасибо огромное, ВАМ!

с наступающим 2018 годом!
здоровья, удачи, любви и тепла в Вашем доме.
Спасибо.
С уважением,
Юрий Бородицкий

Здравствуйте! Это по поводу урока в вашем курсе Азбука программирования. У меня некорректно срабатывает программа. Когда делаю точку останова и нажимаю F8 устанавливается курсор на точку, как положено, но потом сразу открывается консоль, как при нажатии F9(при этом я F9 не нажимал). В консоли все выполняется правильно, как в вашем уроке. Но при нажатии любой клавиши консоль не закрывается, ее можно закрыть только, если полностью закрываешь программу codeBlock. Пожалуйста, помогите!

Скорее всего, у Вас не создан проект. Попробуйте создать проект по шаблону и выполнить отладку после этого.

Здравствуйте! В курсе азбука программирования не работает видео 4.2 Руссификация GTK. Так же и аудиофайл не скачивается. Исправьте, пожалуйста!

Проверил, всё работает. По техническим проблемам с получением курса пишите на zakaz@sheremetev.info

Здравствуйте! Подскажите, пожалуйста, что значит эта ошибка undefined reference to `gdk_color_parse’?

Это значит, что компилятор не может найти библиотеку. Её нужно указать явно.

не пойму, где у меня ошибка в коде

// 5.5 Текстовый редактор
#include

GtkWidget *textview1;
GtkTextBuffer *buffer1;

int ShowError()
<
GtkWidget *dialog;

dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL,
GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
_U(» Не найден файл\n main.glade»));

// Меню «Создать»
G_MODULE_EXPORT void on_imagemenuitem1_activate (GtkButton *button, gpointer label)
<
gtk_text_buffer_set_text(buffer1, «», 0);
>

int ShowMainWindow()
<
GtkWidget *window1, *statusbar1;
GtkBuilder *builder;

builder = gtk_builder_new ();
if (gtk_builder_add_from_file (builder, «main.glade», NULL))
<
window1 = GTK_WIDGET(gtk_builder_get_object(builder, «window1»));
statusbar1 = GTK_WIDGET(gtk_builder_get_object(builder, «statusbar1»));
textview1 = GTK_WIDGET(gtk_builder_get_object(builder, «textview1»));

gtk_window_set_default_size (GTK_WINDOW (window1), 500, 300);
gtk_window_set_position(GTK_WINDOW(window1), GTK_WIN_POS_CENTER);

gtk_builder_connect_signals (builder, NULL);
g_signal_connect(G_OBJECT(window1), «destroy», G_CALLBACK(gtk_main_quit), NULL);

gtk_statusbar_push( GTK_STATUSBAR(statusbar1), 0, _U(«Строка состояния»));

// Поменяли цвет текста
GdkColor color;
gdk_color_parse («green», &color);
gtk_widget_modify_text(textview1, GTK_STATE_NORMAL, &color);

int main (int argc, char *argv[])
<
gtk_init (&argc, &argv);
if (ShowMainWindow ())
<
gtk_main ();
return 0;
>
else
<
ShowError();
return 1;
>
>

этот файл посмотрите, первый не точно скопировал
// 5.5 Текстовый редактор
#include #include

GtkWidget *textview1;
GtkTextBuffer *buffer1;

int ShowError()
<
GtkWidget *dialog;

dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL,
GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
_U(” Не найден файл\n main.glade”));

// Меню “Создать”
G_MODULE_EXPORT void on_imagemenuitem1_activate (GtkButton *button, gpointer label)
<
gtk_text_buffer_set_text(buffer1, “”, 0);
>

int ShowMainWindow()
<
GtkWidget *window1, *statusbar1;
GtkBuilder *builder;

builder = gtk_builder_new ();
if (gtk_builder_add_from_file (builder, “main.glade”, NULL))
<
window1 = GTK_WIDGET(gtk_builder_get_object(builder, “window1”));
statusbar1 = GTK_WIDGET(gtk_builder_get_object(builder, “statusbar1”));
textview1 = GTK_WIDGET(gtk_builder_get_object(builder, “textview1”));

READ  Trendnet tew 651br как подключить

gtk_window_set_default_size (GTK_WINDOW (window1), 500, 300);
gtk_window_set_position(GTK_WINDOW(window1), GTK_WIN_POS_CENTER);

gtk_builder_connect_signals (builder, NULL);
g_signal_connect(G_OBJECT(window1), “destroy”, G_CALLBACK(gtk_main_quit), NULL);

gtk_statusbar_push( GTK_STATUSBAR(statusbar1), 0, _U(“Строка состояния”));

// Поменяли цвет текста
GdkColor color;
gdk_color_parse (“green”, &color);
gtk_widget_modify_text(textview1, GTK_STATE_NORMAL, &color);

int main (int argc, char *argv[])
<
gtk_init (&argc, &argv);
if (ShowMainWindow ())
<
gtk_main ();
return 0;
>
else
<
ShowError();
return 1;
>
>

У меня тоже не работает этот вариант — компилятор ругается на gdk_color_parse
В Sources.zip\Sources\Sources\Урок 5.5\main.c по другому реализовано изменение цвета текста:
// Поменяли цвет фрагмента текста
tag = gtk_text_buffer_create_tag (buffer1, «blue_foreground»,
«foreground», «blue», NULL);
gtk_text_buffer_get_iter_at_offset (buffer1, &start, 7);
gtk_text_buffer_get_iter_at_offset (buffer1, &end, 13);
gtk_text_buffer_apply_tag (buffer1, tag, &start, &end);
И это работает

Если компилятор выдает ошибку, на некоторую функцию, то это значит, что он не может найти библиотеку. Укажите явно библиотеку, в которой эта функция реализована.

Источник

Используем библиотеки Arduino

Библиотеки являются очень мощным инструментом при работе с Ардуино, особенно для новичка. Библиотека является файлом (набором файлов), содержащим точно такой же С++ код, на котором мы пишем скетч (иногда встречаются и ассемблерные вставки). Мы можем подключить библиотеку в свой код и использовать возможности, которые она даёт, а вариантов там весьма много: готовые “инструменты” для работы с внешними датчиками и модулями, для работы с внутренней периферией микроконтроллера (таймеры, АЦП, память), библиотеки различных математических инструментов и многое многое другое. Мой личный список интересных библиотек, составленный за годы работы с платформой, можно посмотреть здесь.

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

Как установить библиотеку

Менеджер библиотек

Как я уже говорил, библиотека это набор текстовых файлов с кодом. Библиотеку можно установить двумя способами: из официального репозитория или вручную. У ардуино есть несколько библиотек, которые можно получить прямо из программы Arduino IDE при помощи встроенного менеджера библиотек, который позволяет устанавливать, удалять и обновлять библиотеки. Это удобно, но в этом списке есть далеко не все существующие библиотеки, да и нормального описания менеджер не предоставляет. Для установки библиотеки из официального репозитория Arduino перейдите в Скетч/Подключить библиотеку/Управлять библиотеками… Откроется менеджер библиотек, в котором можно найти и в один клик установить библиотеку из списка.

Ручная установка

Ручная установка библиотеки подразумевает перемещение папки с библиотекой в папку, в которой Arduino IDE будет эту библиотеку искать. Таких папок две: одна находится в папке с программой:

В папку со скетчем

В то же время библиотеки, содержащие несколько файлов в разных папках, таким образом работать отказываются. Возможно это проблема самой IDE:

Где брать библиотеки?

Очень часто можно встретить опубликованный кем-то проект, в котором используются библиотеки. Автор может приложить непосредственно файлы библиотек, которые он использовал, может дать ссылку на библиотеку, или просто указать её название. Также интересные библиотеки попадаются на форумах, где люди просто написали для себя и поделились с другими. На официальном сайте бибилиотеки или на её странице на GitHub можно встретить подробное описание библиотеки (документацию, вики), советы по использованию, схемы и другую полезную информацию.

Большинство библиотек публикуется на сайте GitHub, у неподготовленного человека могу возникнуть проблемы со скачиванием файлов с этого ресурса. Допустим, вы наткнулись на какую-то интересную библиотеку и захотели её скачать. Например, IRLremote – библиотека для работы с ИК приёмниками. Неважно, в какую папку репозитория вы попали – всегда можно нажать на название библиотеки (Имя автора/Название репозитория) и попасть на главную страницу репозитория.

С главной страницы можно скачать весь репозиторий как архив, нажав Clone or download, затем Download ZIP. Данный способ универсален для всех библиотек.

READ  Как подключить айфон к магнитофону пионер

Таким образом вы скачаете исходный код библиотеки, в котором могут быть не относящиеся к самой библиотеке файлы. Большинство авторов выпускают релизные версии библиотек, которые находятся во вкладке Releases:

Со вкладки Releases можно загрузить архив с библиотекой нужной версии

Также GitHub позволяет открыть для чтения или скачать единичный файл из репозитория. Для этого нужно открыть файл и нажать кнопку Raw

Решение конфликтов

Иногда случается конфликт библиотек, который заключается в том, что IDE находит на компьютере несколько одинаковых библиотек. Об этом сообщается в логе компиляции предупреждением: “несколько библиотек найдено… используется то, не используется сё“. Если вы ставили некоторые библиотеки через менеджер (Скетч/Подключить библиотеки/Управлять библиотеками…), они будут воевать с библиотеками, установленными вручную в папку с программой. Где вообще лежат библиотеки?

Конфликтовать могут и ядра, поэтому решением всех проблем может стать чистая установка Arduino IDE с удалением остатков от предыдущей версии. Удаляем программу как программу, и вручную сносим папки:

“Внутри” библиотеки

Библиотека, в зависимости от объема кода и настроения программиста, может быть оформлена как очень компактно, так и подробно, с кучей файлов и дополнительных папок. Рассмотрим классический состав библиотеки. Для удобства работы рекомендую включить видимость расширений файлов. Все перечисленные ниже типовые файлы являются обычными текстовыми файлами, открыть их можно обычным блокнотом. Также рекомендую использовать “блокнот программиста” – Notepad++ (ссылка на официальный сайт), который подсвечивает синтаксис и в целом является очень удобным инструментом разработчика.

.h – заголовочный файл, самый главный файл библиотеки. Он настолько главный, что библиотека может состоять только из него одного. Находится обычно в корне библиотеки, либо в папке src (source, исходник). В этом файле обычно перечислены все классы/методы/функции/типы данных, находится информация о библиотеке, часто встречается расширенное описание для каждого метода или функции. Очень часто главный заголовочный файл является мини-документацией на библиотеку. Библиотека может иметь многофайловую структуру с большим количеством заголовочных файлов, но главный заголовочный файл всегда один, он имеет такое же название, как папка с библиотекой.

Файл с расширением .cpp – файл реализаци, в котором находится основной исполнительный код программы. Обычно идёт парой к своему заголовочному .h файлу, т.е. .cpp.

keywords.txt – файл, в котором перечислены подсвечиваемые в Arduino IDE (выделенные другим цветом) в коде названия функций, методов и прочих рабочих имён библиотеки.

Файл library.properties – файл, содержащий информацию о библиотеке для агрегаторов и менеджеров библиотек (название, версия, автор, категория и проч.)

Папка src – в этой папке могут находиться основные файлы библиотеки (.h, .cpp, .c).

Папка examples – папка с примерами использования библиотеки.

Помимо перечисленных файлов и папок в папке с библиотекой могут находиться и другие служебные файлы и папки, иногда можно встретить даже полную документацию в виде текстовых файлов или html страниц.

Как работать с библиотекой?

Допустим, вы купили какой то модуль или датчик, загуглили по нему информацию, нашли статью с примером. Примеры обычно простенькие, показать как подключается и работает. Скачали библиотеку из статьи, попробовали, всё работает. Что дальше? Дальше следует открыть папку с библиотекой и посмотреть официальные примеры, разобраться как они работают и что умеют. Примеры находятся в папке examples в папке с библиотекой.

Примеры обычно не раскрывают всех возможностей библиотеки, поэтому открываем и читаем заголовочный файл, который название_библиотеки.h. В нем можно найти буквально список инструментов библиотеки, очень часто с описанием для каждого. Вооружившись этой информацией, можно выжать из модуля все возможности, которые ему прописал разработчик библиотеки. Давайте рассмотрим банальную библиотеку servo, я думаю большинство с ней работали. Даже у меня есть небольшой видеоурок по работе с Servo!

Посмотрим примеры, которые лежат в папке с библиотекой:

Источник

Поделиться с друзьями
Как подключить и установить...
Adblock
detector