Open6
FreeRTOS上でRustのアプリを書く
参考資料
KMCブログ
githubリポジトリ
qiita記事
FreeRTOS関係
リポジトリはこちら
構想
- ターゲットはCortex-M3のvirt machine
- 実機がいらず情報量が多いため
ブートシーケンス(Demo/CORTEX_LM3S6965_GCC_QEMU内)
- startup.c(この中に各種ハンドラとベクターテーブルを保存)
- ResetISR
- flash内のデータセグメントのデータをSRAMへコピー
- bss領域を0初期化
- ResetISR
- main.c
- main
- prvSetupHardware
- 本環境だと実質無処理か?
- 各種タスク等の起動
- vTaskStartScheduler
- タスクの実行を開始
- 無限ループ
- prvSetupHardware
- main
構成
- 基本的にはDemo/CORTEX_LM3S6965_GCC_QEMU内のものを流用する
- ただしstartup.cとmain.cだけはRustで自作する
- 他の部分を活かすためシンボルは使いまわす
- build周りはbuild.rsを活用
課題
- FreeRTOSConfig.hとRustでの実装部分の紐づけをどうするか?