関数プロトタイプは
int alt_irq_register (alt_u32 id,
void* context,
void (*isr)(void*, alt_u32));
最後の部分 とはどういう意味ですか? 何をしているの*isr
ですか?
関数プロトタイプは
int alt_irq_register (alt_u32 id,
void* context,
void (*isr)(void*, alt_u32));
最後の部分 とはどういう意味ですか? 何をしているの*isr
ですか?
関数へのポインタです。関数のパラメーターとして関数を使用する必要がありalt_irq_register
ます。例:
void irq_handler(void *ptr, alt_u32 val) { /* my function */
/* I'm handling the interupt */
}
int alt_irq_register (alt_u32 id, void* context, void (*isr)(void*, alt_u32));
alt_irq_register
コードでは、関数を次のように使用する必要があります。
/* your code */
ret = alt_irq_register(id, context_ptr, irq_handler);
/* other code */
この関数は登録と割り込みハンドラーを想定しているため、登録中に、関連する割り込みが発生したときに使用する必要がある関数をシステムに渡します。
関数へのポインタです。この関数は 2 つの引数 (void*
とalt_u32
) を取り、何も返しません ( void
)。そのパラメータ名はisr
.