Edited at

STM32F103の開発環境

More than 1 year has passed since last update.

BluePill とか、そのバリエーションとしての RobotDyn ボードとか。

これを開発するための環境について。

ほとんど未検証だけれど、備忘録的に。


Arduino系


MAPLE IDE

http://docs.leaflabs.com/static.leaflabs.com/pub/leaflabs/maple-docs/0.0.12/maple-ide-install.html

Blue Pill は元々 LeafLabs 社の Maple Mini からの派生。Maple シリーズは

独自のライブラリを使用して、Arduinoフォークした開発環境でプログラムできるようになっていた。

Maple プロジェクトはクローズしたがドキュメントやライブラリなどはCC-BY-SA2.0で公開。現在でも使用できる。


As of March 2015, the LeafLabs Maple line and the libmaple library are end-of-life and no longer supported by LeafLabs. The design files for Maple and Maple Mini will remain available on GitHub, under a CC-BY-SA 2.0 license, for anyone who wants to recreate or reimagine these boards.



Arduino_STM32

rogerclarkmelbourne/Arduino_STM32

https://github.com/rogerclarkmelbourne/Arduino_STM32

Maple lib をベースにしたもの。現在のところこれが一番安定しているらしく、Arduino開発環境で使うにはファーストチョイス。

STM32Duino という名前でも呼ばれているが・・・


PRIMARY SUPPORT FORUM: http://www.stm32duino.com/


次に述べる STM32Duino と名前が一緒なので理解が大混乱!!


STM32duino

Arduino core for STM32 MCUs

https://github.com/stm32duino

facebookの書込から


「STM32duino」の整備にはST社も支援しているので今後はこちらが主流になるでしょうね。

両者の違いは「STM32duino」はST社のHALベース、「Arduino_STM32」はLeafLabs社独自のAPIがベース。当然「STM32duino」の方がメジャーかつ汎用的です。

「STM32duino」の整備にはST社も支援しているので今後はこちらが主流になるでしょうね。



STM32GENERIC

danieleff/STM32GENERIC

https://github.com/danieleff/STM32GENERIC

ドキュメントが充実らしい。


その他のホビー用開発環境


TOYOSHIKI Tiny BASIC for Arduino STM32

https://github.com/Tamakichi/ttbasic_arduino

Arduino開発環境で作るBASIC環境。


mbed

https://os.mbed.com/platforms/ST-Nucleo-F103RB/

NUCLEO-F103RB

が使える。


mbed + platformio

STM32F103 C8 T6 の安いボードでLチカ (platformio + mbed)

https://lowreal.net/2016/04/14/3

GDBなども使えます


お仕事で使う用


CodeBench

Lite Edition は無料で使用できる

https://www.mentor.com/embedded-software/codesourcery


GNU Arm Embedded Toolchain

https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads

eclispe と組み合わせて使うといいようだ。


Sytem Workbench for STM32

http://www.openstm32.org/HomePage

無償、クローズドソース、 Windows/OSX/Linux対応


EmBitz!

https://www.embitz.org/

無償 オープンソースっぽい 対応プラットフォームは Windows のみっぽい


CooCox CoIDE

http://www.coocox.org/

無償 オープンソース 対応プラットフォームは Windows のみっぽい


Keil MDK-ARM - Microcontroller Development Kit for ARM

http://www2.keil.com/mdk5

MDK-Lite 無償 Product evaluation, small projects, and education. Code size restricted to 32 Kbyte.

MDK-Essential 有償 For ARM Cortex-M based microcontroller projects.

MDK-Plus 有償 For Cortex-M, ARM7, ARM9. Includes middleware (IPv4 Networking, USB Device, File System, Graphics).

MDK-Professional 有償 For Cortex-M, Cortex-A, ARM7, ARM9. Includes middleware (IPv4/IPv6 Networking, USB Host & Device, File System, Graphics, mbed components).

対応プラットフォームは Windows のみっぽい。


ARM用IAR Embedded Workbench(EWARM)

STM32CubeMXと組み合わせて使います。

有償 対応プラットフォームは Windows のみっぽい。


その他

以下のページには、そのほか多数の開発環境が紹介されている。

これらのうちどれが STM32F103 に適合するかどうかは??

「ARM開発環境まとめ」

https://qiita.com/Ted-HM/items/9f1cca2590ada522c021