LoginSignup
13
10

More than 3 years have passed since last update.

NUCLEO-F401RE で TOPPERS/ASP(RTOS)を動かす

Last updated at Posted at 2016-02-18

はじめに

Windows上でEclipseベースのTrueSTUDIOを用いて.RTOSであるTOPPERS/ASPカーネル(以下,ASPカーネル)をNUCLEO-F401REで動作させる方法について説明します.

一般的に,WindowsでASPカーネルのビルドするには,Cygwin環境,クロスコンパイラ,デバッガを別々にインストールする必要があり環境構築の手順が煩雑でした.TrueSTUDIOは,ASPカーネルに必要なツール類がまとめてインストールできるため,環境構築の手間が省けます.

TrueSTUDIOは以前はコードサイズの制限があったのですが,現在は制限がなく基本的な機能はフリーで使用することができます.

用意するハードウェア

  • NUCLEO-F401RE

    • 秋月電子やスイッチサイエンス等から2000円程度で購入可能です.amazonでポチるのが最も簡単な入手方法です.
    • 様々な種類がリリースされていますが,現状はF401REのみをサポートしています.STM32F4シリーズを搭載しているNUCLEOなら簡単にポーティング可能です.ポーティング方法は別途記載します.
  • USB(miniB)ケーブル

    • ボードには付属していないので用意して下さい.
  • Windows PC

    • Windows7とWindows10で動作を確認しています.

ソフトウェア

  • TrueSTUDIO

    • v5.4.1 で動作確認しています.これより古いバージョンは問題が発生する可能性があります.
    • AtollicのサイトにアクセスするとDOWNLOAD NOW!というボタンがあるので押すとダウンロードが始まります.サイズが1G程度あるので注意して下さい.
    • ダウンロード後インストールして下さい.
  • TOPPERS/ASPカーネル

    • 上記リンクからasp_nucleo_f401re_gcc-20160216.zipasp_nucleo_f401re_gcc-20160219.zip(リンカスクリプトに不具合がありましたのでupdateしました)をダウンロードして展開して下さい.

ビルド&実行の手順

1.TrueSTUDIOを実行

TOPPERS/ASPカーネルに含まれているTrueSTUDIOのプロジェクトファイルをエクスプローラからダブルクリックしてTrueSTUDIOを起動します.

asp_1.9.2_utf8\target\nucleo_f401re_gcc\truestudio\asp\.cproject

TrueSTUDIOが起動するとワークスペースの指定画面が表示されるため適当なワークスペースを指定する..cprojectのフォルダの一つ上のフォルダを指定すると管理が楽です..cprojectと同じフォルダは指定しないで下さい.

truestudio1jpg.jpg

3秒ほど宣伝画面が出るので"ウィンドウを閉じて下さい"のボタンが有効になるまで待って,有効になったらボタンを押して下さい.

左上のInformation Centerの右の×ボタンを押すとプロジェクトが表示されます.

左のペインのプロジェクトビューからaspを選択し,ツリーを展開するとサンプルプログラムとASPカーネルの各ファイルを見ることができます.

truestudio2jpg.jpg

2.ビルド

ビルドボタンを押すとビルドが開始されます.
truestudio3jpg.jpg

3.ボードの接続

NUCLEO-F401REをUSBケーブルでwindowsPCに接続して下さい.ドライバのインストールが開始され,COMポートが1つ追加されます.

4.ダウンロード&実行

ボードの接続後,デバッグボタンを押すとダウンロードが開始されます.

truestudio4.jpg

1回目はSTLINKのファームウェアのアップデートが発生する場合があります.その場合は,画面に従ってファームウェアをアップデートしてから,USBケーブルを一旦外してから,Teratermの再接続を行い,デバッグボタンを押して下さい.

次に上記で追加されたポートに対して,ターミナルを開きます.メニューのビューからターミナルを選択します.左下ペインにターミナルが追加されるので,接続ボタンを押して,接続タイプをシリアルとして,115200bps, 8bit, Parity none, Stop 1bit, フロー制御なしとてしてOKを押します.

truestudio6.jpg

ダウンロード後停止した状態なので,メニューから"再開"ボタンを押すとカーネルが起動して,main_taskの先頭で停止します.この状態で"再開"ボタンを押すと実行が再開されます.

ターミナルにはログが出力されます.入力も可能です.

truestudio4.jpg

新規プロジェクト

新規にプロジェクトを作成する場合はフォルダtruestudioをコピーしてtruestudio2等に名前を変更します.

poi1.jpg

次にtruestudio2以下のaspの.cprojectを開いた場合にワークスペースの指定画面が出るのでtruestudio2を指定します.

poi2.jpg

あとは最初に書いたようにビルドが可能です.

プロジェクトへのファイルの追加

例えばpoi.cをビルド対象としたい場合には,poi.cをプロジェクトファイル(sample1.c)があるフォルダに置いて,Makefileに以下の様に記載すればよいです.

#
#  アプリケーションプログラムに関する定義
#
APPLNAME = sample1
APPLDIR = 
APPL_CFG = $(APPLNAME).cfg

APPL_DIR = $(APPLDIR) $(SRCDIR)/library
APPL_ASMOBJS =
ifdef USE_CXX
  APPL_CXXOBJS = $(APPLNAME).o 
  APPL_COBJS =
else
  APPL_COBJS = $(APPLNAME).o  poi.o
endif

sample1.h/sample1.h/sample1.cfgの名前を変更したい場合は,MakfileのAPPLNAMEを変更すればよいです.

おわりに

TrueSTUDIOを使用すると簡単にASPカーネルをビルド&実行させることが出来ますので,RTOSに興味がある方は試して下さい.

13
10
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
10