トップ 一覧 Farm 検索 ヘルプ RSS ログイン

Diary/2019-4-6の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!Nuttx
今さらながらNuttxを試してみた.
ホスト環境はUbuntu 18.04,ターゲットボードはSTM32F407 Discovery kit.
基本的には,[Getting Started with NuttX -- STM32F4 Discovery (Unix)|http://nuttx.org/doku.php?id=wiki:getting-started:stm32f4discovery_unix]を参考に.

:: 準備
 mkdir nuttx
 cd nuttx
 export NUTTX=`pwd`

::kconfig-frontendのインストール
 cd $NUTTX
 git clone https://bitbucket.org/nuttx/tools
 sudo apt install make gperf flex bison libncurses-dev
 sudo apt install autotools-dev automake autoconf
 cd kconfig-frontends
 ./configure
 make
 make install

::st-flashの用意
 sudo apt-get install git build-essential libusb-1.0.0-dev cmake
 cd $NUTTX
 git clone git@github.com:texane/stlink.git
 cd stlink
 make release # st-flash is build at $NUTTX/stlink/build/Release

::nuttx
 cd $NUTTX
 git clone https://bitbucket.org/nuttx/nuttx
 git clone https://bitbucket.org/nuttx/apps
 sudo apt-get install gcc-arm-none-eabi
 cd nuttx
 export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
 ./tools/configure.sh stm32f4discovery/usbnsh
 make menuconfig # "Build Setup" -> "Build host platform" -> Linux
 make
 sudo ../stlink/build/Release/st-flash write nuttx.bin 0x8000000

::ログインしてみる
 sudo chmod 666 /dev/ttyACM1
 screen /dev/ttyACM1 115200
何度かエンターキー押すとプロンプトがでてコマンド入力できる.
 nsh> 
 nsh> ls
 /:
  dev/
  proc/

::なにか動かしてみる
[STM32F4Discovery向けにNuttX(RTOS)をビルドしてみる|https://blog.tokor.org/2018/03/31/STM32F4Discovery%E5%90%91%E3%81%91%E3%81%ABNuttX-RTOS-%E3%82%92%E3%83%93%E3%83%AB%E3%83%89%E3%81%97%E3%81%A6%E3%81%BF%E3%82%8B/]を参考にPWMアプリ入れてみる.
 cd $NUTTX/nuttx
 make menuconfig
で,関連項目をセット.makeしてst-flashで書き込んでみると
 nsh> help
 help usage:  help [-v] [<cmd>]
 
   [         cp        exec      kill      mv        set       uname     
   ?         cmp       exit      ls        mw        sh        umount    
   basename  dirname   false     mb        ps        sleep     unset     
   break     dd        free      mkdir     pwd       test      usleep    
   cat       df        help      mh        rm        time      xd        
   cd        echo      hexdump   mount     rmdir     true      
 
 Builtin Apps:
   pwm  
 nsh> 
とか.
 nsh> pwm -d 10 -t 10
とかするとLD3(マイコンの下にあるLED)が点灯する

::参考にしました
* [STM32F4Discovery向けにNuttX(RTOS)をビルドしてみる|https://blog.tokor.org/2018/03/31/STM32F4Discovery%E5%90%91%E3%81%91%E3%81%ABNuttX-RTOS-%E3%82%92%E3%83%93%E3%83%AB%E3%83%89%E3%81%97%E3%81%A6%E3%81%BF%E3%82%8B/]
* [NuttXというPOSIXに対応した組み込みOSをためしてみる|https://dev.classmethod.jp/hardware/nuttx-embedded-rtos-first-touch/]