开发环境与编程 最近发现论坛很流行使用MBED开发,MBED是ARM推出的一个开发框架,将底层封装后抽象出来,采用基于c++的顶端代码设计,支持在线编程编译,其特点是不用太费心于底层硬件的学习,目前还处于公测阶段,大有在ARM开发环境领域一统江湖之势。由于MBED提供了离线开发的功能,本测评就以Keil为IDE,以MBED离线开发包为代码基础进行介绍,最新版为mbed-4336505e4b1c。解压后,由于内容太多,我先先删除与本开发板无关的文件夹,这些文件夹是供其他系列的开发板使用的。如下图所示,这是MBED相关内容。 MBED离线支持文件包
上图中.h文件就是MBED框架,下图为TARGET_DISCO_L053C8文件夹的内容,主要是HAL头文件、CMSIS文件、和四个文件夹。 第一个文件夹TARGET_STM为针对本开发板的配置文件,另外4个文件夹是针对不同的IDE开发环境使用的,本次我们是使用Keil开发环境,因此选择TOOLCHAIN_ARM_MICRO。其余3个可以删除。 我们再看看TOOLCHAIN_ARM_MICRO文件夹是什么,见下图,主要是编译后的.o文件,我们知道,一般.h会对应一个.c文件,编译链接后会生成对应的.o文件,这里ARM没有为我们准备对应的.c文件而是直接提供了.o,这样有好处也有坏处,好处是编译生成目标代码相对于之前会非常快,坏处就是我们不知道实现方法的.c内容,我们知道HAL是在STM32官方提供的,那么其他几个没有对应HAL的.o我们就无法得知了,希望在ARM推出正式版的MBED后能提供一下。
|