Previous: 9.1.2. EXTIとして使用するGPIOの指定 |
Up: 9.1. EXTI割込み(ライン0-4) |
Next: 9.1.4. NVICの設定 |
GPIOの設定がこれで完了ですので、次に使用するEXTIラインの設定・初期化を、EXTI_Init関数(ライブラリ 15?2)を使用して行います。
ライブラリ 15?2 EXTI_Init関数
関数プロトタイプ |
void EXTI_Init(EXTI_InitTypeDef * EXTI_InitStruct ) |
|
動作 |
EXTIを初期化します |
|
引数 |
EXTI_InitStruct |
タイムベースユニットの設定をEXTI_InitTypeDef構造体変数(ライブラリ 15?3)として渡します |
戻り値 |
なし |
ライブラリ 15?3 EXTI_InitTypeDef構造体のメンバ
EXTI_Line |
設定対象となるEXTIのラインを指定します。
|
||||||||||||||||||||||||||||||||||||||||
EXTI_LineCmd |
対象とするEXTIラインを有効とするか無効とするかを、以下のマクロで指定します。
|
||||||||||||||||||||||||||||||||||||||||
EXTI_Mode |
EXTIを割込みモードで使用するのかイベントモードで使用するのかを、以下のマクロで指定します。
|
||||||||||||||||||||||||||||||||||||||||
EXTI_Trigger |
割込み・イベントを発生させるEXTIラインのエッジを、以下のマクロで指定します。
|
サンプルプログラムでは以下のように指定しています。オンボードスイッチは本書のどのボードでもPA0なのでEXTI_Line0にしています。EXTI_Modeは割込みを使用するのでEXTI_Mode_Interruptです。イベントモードは、EXTIを使用して周辺回路を作動させるような場合に使用します(低電力モードからの復帰、ADCやDACの変換トリガ等)。
EXTI_InitStructure.EXTI_Line = EXTI_Line0; EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; EXTI_InitStructure.EXTI_LineCmd = ENABLE; EXTI_Init(&EXTI_InitStructure); |
Previous: 9.1.2. EXTIとして使用するGPIOの指定 |
Up: 9.1. EXTI割込み(ライン0-4) |
Next: 9.1.4. NVICの設定 |