Arduino:Справочник языка Arduino/Синтаксис/include: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
 
Строка 15: Строка 15:
В этом примере подключается библиотека, которая помещает данные во '''flash''', а не в ram. Таким образом, '''ram''' остается свободной для динамической памяти, а большие таблицы поиска становятся более практичными.
В этом примере подключается библиотека, которая помещает данные во '''flash''', а не в ram. Таким образом, '''ram''' остается свободной для динамической памяти, а большие таблицы поиска становятся более практичными.


<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" highlight="1" enclose="div">
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" highlight="1">
#include <avr/pgmspace.h>
#include <avr/pgmspace.h>



Текущая версия от 12:40, 20 мая 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Include[1]

Директива #include используется для подключения к скетчу сторонних библиотек. Благодаря этому программист получает доступ к большому количеству стандартных C-библиотек (т.е. групп заранее подготовленных функций), а также библиотек, написанных специально для Arduino.

Страницу с C-библиотеками для AVR (это аббревиатура, отсылающая к чипам Atmel, на которых работает Arduino) можно найти тут.

Обратите внимание, что директиве #include (как и #define) не требуется разделитель в виде точки с запятой. Если его добавить, компилятор начнет выдавать разного рода непонятные ошибки.

Пример

В этом примере подключается библиотека, которая помещает данные во flash, а не в ram. Таким образом, ram остается свободной для динамической памяти, а большие таблицы поиска становятся более практичными.

#include <avr/pgmspace.h>

prog_uint16_t myConstants[] PROGMEM = {0, 21140, 702  , 9128,  0, 25764, 8456,
0,0,0,0,0,0,0,0,29810,8968,29762,29762,4500};

См.также

Внешние ссылки