
 
 
| Previous: 9.1.4. NVICの設定 | Up: 9.1. EXTI割込み(ライン0-4) | Next: 9.2. EXTI割込み(ライン5-15) | 
メインルーチンの設定が終わったら、割込みハンドラを設定しましょう。
| void EXTI0_IRQHandler(void) { 
 ? /* Clear the Key Button EXTI line pending bit */ ? EXTI_ClearITPendingBit(EXTI_Line0); 
 ? // toggle on-board led ? if(GPIO_ReadOutputDataBit(OB_LED_PORT, OB_LED_PIN)) ??? { ????? GPIO_ResetBits(OB_LED_PORT, OB_LED_PIN); ??? } ? else ??? { ????? GPIO_SetBits(OB_LED_PORT, OB_LED_PIN); ??? } } | 
EXTI特有の設定項目は特にありませんので、割込みペンディングビットをクリアして、行いたい処理を記述します。
割込みペンディングビットをクリアするには、EXTI_ClearITPendingBit関数(ライブラリ 15?4)を使用します。
ライブラリ 15?4 EXTI_ClearITPendingBit関数
| 関数プロトタイプ | void EXTI_ClearITPendingBit(uint32_t EXTI_Line) | |
| 動作 | EXTI割込みの割込みペンディングビットをクリアします。 | |
| 引数 | EXTI_Line | クリアする対象のEXTIラインをEXTI_Linexの組み合わせで指定します。xには0から19までの数値が入ります。 | 
| 戻り値 | なし | |
| Previous: 9.1.4. NVICの設定 | Up: 9.1. EXTI割込み(ライン0-4) | Next: 9.2. EXTI割込み(ライン5-15) |