マイコン入門spacer ad
トップページに戻る(マイコン徹底入門:STM32で始めるARM/Cortex-M3組み込み開発)
「マイコン徹底入門」とは? |  「マイコン徹底入門」を読む |  ダウンロード |  掲示板 |  筆者の自己紹介


Previous: 9.1.2. EXTIとして使用するGPIOの指定

Up: 9.1. EXTI割込み(ライン0-4)

Next: 9.1.4. NVICの設定


マイコン徹底入門:周辺回路編:STM32のペリフェラルを活用: 9. 外部割込み/イベントコントローラ(EXTI): 9.1. EXTI割込み(ライン0-4):

9.1.3. EXTIの初期化

 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_Line0

EXTIライン0

EXTI_Line1

EXTIライン1

EXTI_Line2

EXTIライン2

EXTI_Line3

EXTIライン3

EXTI_Line4

EXTIライン4

EXTI_Line5

EXTIライン5

EXTI_Line6

EXTIライン6

EXTI_Line7

EXTIライン7

EXTI_Line8

EXTIライン8

EXTI_Line9

EXTIライン9

EXTI_Line10

EXTIライン10

EXTI_Line11

EXTIライン11

EXTI_Line12

EXTIライン12

EXTI_Line13

EXTIライン13

EXTI_Line14

EXTIライン14

EXTI_Line15

EXTIライン15

EXTI_Line16

EXTIライン16(PVD:プログラマブル電源検出回路)

EXTI_Line17

EXTIライン17(RTCアラーム)

EXTI_Line18

EXTIライン18(USBウェイクアップ)

EXTI_Line19

EXTIライン19(イーサネットウェイクアップ)

EXTI_LineCmd

対象とするEXTIラインを有効とするか無効とするかを、以下のマクロで指定します。

ENABLE

有効

DISABLE

無効

EXTI_Mode

EXTIを割込みモードで使用するのかイベントモードで使用するのかを、以下のマクロで指定します。

EXTI_Mode_Interrupt

割込みモード

EXTI_Mode_Event

イベントモード

EXTI_Trigger

割込み・イベントを発生させるEXTIラインのエッジを、以下のマクロで指定します。

EXTI_Trigger_Rising

立ち上がりエッジ

EXTI_Trigger_Falling

立ち下がりエッジ

EXTI_Trigger_Rising_Falling

両方のエッジ

 サンプルプログラムでは以下のように指定しています。オンボードスイッチは本書のどのボードでもPA0なのでEXTI_Line0にしています。EXTI_Modeは割込みを使用するのでEXTI_Mode_Interruptです。イベントモードは、EXTIを使用して周辺回路を作動させるような場合に使用します(低電力モードからの復帰、ADCDACの変換トリガ等)。

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の設定


このページはITと知的財産の法律情報「法務ネット」の管理人が制作・運営しています。
_Toc266801166