5.4.3. ベクタテーブルの指定

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


Previous: 5.4.2. マイコンボード・書き込み方法等の指定

Up: 5.4. ファームウェア・設定ファイルの修正

Next: 5.4.4. マイコンボード毎のピン定義マクロファイルの指定


マイコン徹底入門:導入編:オープンソースでCortex-M3/STM32の開発環境を無償構築: 5. ワークスペースの構築: 5.4. ファームウェア・設定ファイルの修正:

5.4.3. ベクタテーブルの指定

ベクタテーブルは、マイコンがリセットされたときや割り込みが発生した時に、どの関数を実行するのかの記載したファイルです。STM32ファームウェアでは、gcc用はアセンブリ言語で記述されたものが提供されています。STM32はライン毎に実装している機能に違いがあり、それに伴って発生する割り込み原因が異なります。そこで、チップ毎に異なったベクタテーブルを使用する必要があります。また本書の設定では、FreeRTOSをベクタテーブルを変更して動作可能にさせています。そのためFreeRTOSを使用する場合には、FreeRTOS用に設定したベクタテーブルを使用しなければいけません。

ベクタテーブルファイルはマイコンボードに応じて、本書提供パッケージのlib/Startupフォルダ内の、下記の表で示されているファイルが使用されます。makefile.inでマイコンボードを指定していれば、自動的に対象のファイルがリンクされます。makefile.inで定義したSTART_UPを、ユーザプログラム用makefile(STM32プロジェクトのルートにあるmakefile)の以下の行でリンクの対象として含めています。makefineというのは、ビルド自動化ソフトmakeの設定ファイルです。EclipseEclipse自体にビルド機能を内蔵していますが、本書ではmakefileを別途記述する方法を使用します。

$(MAIN_OUT): $(MAIN_OBJS) $(START_UP) $(LINK_FWLIB)?

5?3 FreeRTOSを使用しない場合のスタートアップファイル

マイコンボード

メモリ容量

使用ファイル

STBee Mini

CQ-STARM

STM32-H103

STM32-P103

Flash 128Kバイト

RAM 20Kバイト

startup_stm32f10x_md_nortos.s

STBee

CQ-ST103

STM3210E-EVAL

Flash 512Kバイト

RAM 64Kバイト

startup_stm32f10x_hd_nortos.s

5?4 FreeRTOSを使用する場合のスタートアップファイル

マイコンボード

メモリ容量

使用ファイル

STBee Mini

CQ-STARM

STM32-H103

STM32-P103

Flash 128Kバイト

RAM 20Kバイト

startup_stm32f10x_md_rtos.s

STBee

CQ-ST103

STM3210E-EVAL

Flash 512Kバイト

RAM 64Kバイト

startup_stm32f10x_hd_rtos.s


Previous: 5.4.2. マイコンボード・書き込み方法等の指定

Up: 5.4. ファームウェア・設定ファイルの修正

Next: 5.4.4. マイコンボード毎のピン定義マクロファイルの指定


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