SIGNAL()

概要

SIGNAL()は、割り込みベクタに登録する関数を定義するためのマクロです。

ソースコード

SIGLAN()は、hardware/tools/avr/avr/include/avr/interrupt.h に定義されています。以下に全ソースコードを示します。

1
2
3
4
5
#  define __INTR_ATTRS used, externally_visible

#  define SIGNAL(vector)                                        \
    extern "C" void vector(void) __attribute__ ((signal, __INTR_ATTRS));        \
    void vector (void)

signalは、その関数が割り込みハンドラであることを示します。usedは、未使用に見える場合でもファイルに書き出すよう指示します。externally_visibleは、gccのコンパイルオプションの-fwhole_programの効果を無効にします。

バージョン

7.3.0-atmel3.6.1-arduino7

最終更新日

May 15, 2021

inserted by FC2 system