Page 127 - 최강 아두이노 퍼스트 참고서
P. 127
License along with this library; if not, write to the Free
Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
02110-1301 USA */
#include <Arduino.h>
//Declared weak in Arduino.h to allow user redefinitions.
int atexit(void (*func)()) { return 0; }
// Weak empty variant initialization function.
// May be redefined by variant files.
void initVariant() __attribute__((weak));
void initVariant() { }
int main(void)
{
init();
initVariant();
#if defined(USBCON)
USBDevice.attach();
#endif
setup();
for (;;)
{
loop();
if (serialEventRun)
serialEventRun();
}
return 0;
}
위의 main.cpp 코드의 setup() 과 loop() 함수가 보입니다.
아두이노 IDE 프로그램의 컴파일과 빌드 과정에서 위에서 찾은 소스 코드도 매번 같이 묶여
서 컴파일 됩니다. 위의 코드와 같이 해당 디렉터리의 거의 모든 파일이 “Blink” 예제 같이 작
은 프로그램 코드 빌드 시에도 묶여서 같이 빌드 됩니다. 타 회사의 AVR 프로그래밍 IDE 와
비교 시 아두이노 IDE 에서는 약간의 빌드 시간 이 더 소모됩니다. 확인 방법은 IDE 화면의 메
시지 로그창의 컴파일 내용을 보면 상세히 나와 있습니다.
127