# STM32程序开发要考虑的几个问题
关于STM32或其它MCU的程序开发,什么样的选择才是最好的。也许每个人/每个项目都有不同的选择。
或许我们没有精力和时间对以下选择都尝试,这将花费太多的时间和精力。但是,当我们花时间认真的比较下以
列出的不同选择,会给我们带来更深入的理解,帮助我们构建更好的MCU程序,提升我们的发展空间。
* 裸机开发,库开发还是操作系统?
* 用什么编程语言,汇编,C语言还是C++语言
* 用什么编译器,ARMCC,GCC还是其它?
* 究竟J-lINK还是ST-Link?
* 用什么软件(IDE),Keil MDK5/IAR/STM32Cube IDE或者其它?
* 开发主机用Windows还是Linux或者其它?
对于上面列出的几个选择,我都不能确定什么是最好的,答案是你自己的,我只是试图分享都有哪些可能,为什么要这样选择,容易实现吗?
## 裸机开发,库开发和操作系统
对于电池供电或要求低功耗,以及性能要求非常高的场合,应采用裸机开发;然而,我个人认为,要求实时性,高速高性能的场合,更好的选择
是专用芯片或FPGA,也就是更换硬件方案;对于8位MCU采用裸机开发,能上操作系统的都用操作系统,厂商提供库的决不用裸机开发。
## 用什么编程语言,汇编,C语言还是C++语言
据我了解,STM32的