Функция setup() вызывается однократно при запуске программы, то есть при подаче питания на модуль или при сбросе. Функция предназначена для определения режимов работы портов ввода-вывода, инициализации переменных, запуска используемых библиотек и тому подобное.

Пример:

В данном примере в функции setup() задаётся режим работы цифрового вывода № 11 Arduino Nano — как выход. К этому выводу через резистор 220 Ом подключён светодиод. В основном цикле (loop()) программы реализован алгоритм плавного увеличения и уменьшения яркости светодиода.