8
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[WIP]nuttx を STM32f768 discovery で動かしてみた

Posted at

はじめに

訳あって、nuttxのNetworking/Audio/Graphics の機能を動かしてみることにしました。数多くのボードに対応してしているnuttxといえど、これらを全て稼動させているものは、残念ながら、なし。nuttxのソースコードを眺めて、Ethernet 用のConfiguration がありそうなSTM32F768i-Discoveryを使うことにしました。これはこれで、動作手順等の情報が少なく、各所に散在する情報を集めてなんとか動かしたので、ここで共有することにします。(現時点ではNetworkingのみ稼働)

環境

  • Macbook Pro (High Sierra version 10.13.2)

この手の組み込みの開発環境は、WindowsかLinux がメインで、Mac は手薄なものなのですが、Macbook を主軸として他のソフトウェア開発環境を構築していることもあり、敢えてMacで揃えることに。後述しますが、一点だけどうしてもWindows 環境が必要な項目があり、ガックリw

  • 無線LAN ポータブルルーター
    ELECOM のWRH-300WH3-Sを自宅のWiFi 環境の子機とし、STM32F768-Discovery の有線LANと接続。

開発環境の準備

  • nuttx ソースコード入手

以下の2つのgit リポジトリをcloneする。

$ git clone https://bitbucket.org/nuttx/nuttx.git
$ git clone https://bitbucket.org/nuttx/apps.git

  • Cross Toolchain

$ brew install gcc-arm-non-eabi

  • kconfig-frontend

$ brew tap PX4/homebrew-px4
$ brew update
$ brew install kconfig-frontends

  • ST-Link CLI

本体に、生成されたファームウェアを書きこむためのツール。

$ brew install stink

以下の2点は、Windows マシンへのインストールです。

  • ST-Link utility

CLI だけなら、上記のようにmac環境用のものがあるのですが、本体のST-Link のファームウェア更新が必要で、これはWindows 用のST-Link Utility のGUI画面からしか出来ないので、泣く泣くw インストール。

  • STM32CubeF7

nuttxの稼動のためだけなら不要だが、出荷時のデモ等多数のサンプルを収納した開発環境キットは入手しておいて損はない。

ビルド

Networkingが稼働する(と思われる)defconfig を使う。

$ tools/configure.sh stm32f769i-disco/nsh-ethernet
$ make

生成バイナリの書き込み

st-flash write nuttx.bin 0x8000000

screen /dev/tty.usb..... 115200

これでできた

修正箇所

nsh> mkrd -m 1 -s 512 64
nsh> mkfatfs /dev/ram1
nsh> mount -t vfat /dev/ram1 /tmp

謝辞

8
5
0

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
8
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?