メディア

マイコンの割り込み優先度、変更する理由とその仕組みQ&Aで学ぶマイコン講座(112)(1/4 ページ)

マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級者の方からよく質問される「割り込み優先度」についてです。

» 2026年02月26日 10時00分 公開

過去の質問一覧はこちら

 素朴な疑問から技術トラブルなどマイコンユーザーのあらゆる悩みに対し、マイコンメーカーのエンジニアが回答していく連載「Q&Aで学ぶマイコン講座」。

 今回は、初級者から多く寄せられる質問です。

質問です

 マイコンのCPUには、割り込み優先度(割り込み優先レベル/順位)をいくつかの段階に分けられる機能が搭載されています。しかし、同じCPUなのに、製品によって割り込み優先度が異なったり、変更できたりする場合があります。これはなぜですか? 割り込みの優先度を変更する理由と、その仕組、使い方を教えてください。

回答です

 本記事では、STマイクロエレクトロクス(以下、ST)の汎用マイコンSTM32ファミリー*1)の中のSTM32L4シリーズ*2)を例に挙げて説明します

 割り込み優先度とは、複数の割り込み要求が同時に発生した場合に、どの割り込みを優先的に実行するかを示す「割り込みの実行優先度」です。

 STM32L4シリーズに搭載されているArm Cortex-Mプロセッサでは、各割り込みの優先度をユーザーが256段階で設定することが可能です。しかし、一般的な汎用マイコンでは、256段階も必要ありません。コンシューマー機器の場合、8段階か16段階あれば十分です。一方、産業用ではかなり多くの割り込みが使われます。

 そのため、割り込み優先度は、マイコンメーカーが実際の製品を作る時に選択できるようになっています。マイコンメーカーは各製品のターゲットアプリケーションに応じた割り込み優先度の段階を選択するので、CPUが同じでも割り込み優先度が製品によって異なる仕様になります。

 STM32L4シリーズの場合は、「割り込み用優先度レジスタ」のPRI_Nフィールド(Nは割り込み番号を表す)の8ビットのうちMSB側の4ビットしか実装されていません。LSB側の4ビットは常に0として読み出されます。そのため、16段階の優先度で設定できるようになっています(図1

<strong>図1:STM32L4の割り込み優先度レジスタ」のPRI_Nフィールド</strong> 図1:STM32L4の割り込み優先度レジスタ」のPRI_Nフィールド[クリックで拡大]

*1)STM32ファミリー
*2)STM32L4シリーズ

       1|2|3|4 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

特別協賛PR
スポンサーからのお知らせPR
Pickup ContentsPR
Special SitePR
あなたにおすすめの記事PR

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.