本帖最后由 wolfgang2015 于 2017-6-17 10:51 编辑 一、寻觅一个比较方便的开发环境 用Keil MDK的编辑器虽然调试、下载程序非常方便,但是Keil MDK编辑器万年不变的风格,对于代码的寻找、读取、关联查询非常不方便。能不能用一个比较方便的编辑器来读取、编写、读取、查询STM32的项目文件呢?答案是有的,Eclipse。 你会说Eclipse?这行吗?在网上搜索一下,有很多Eclipse搭建环境的文章,都很繁琐不系统,建立的代码要么很老不支持最新的芯片和主板,要么搭建起来系统内的关联性阅读十分不方便。" @: j, B) O9 m# z5 f6 I 二、Eclipse下使用CubeMX插件 stmcu.org网站提供了一个Eclipse插件: 在网站中搜索STSW-STM32095 ,能搜索到一个文档,文档说明: 用于STM32配置和产生初始化C代码的PC端工具STM32CubeMX在eclipse中的插件。 这个可以让Eclipse使用CubeMX的插件,版本4.11.0(https://www.stmcu.org.cn/document/detail/index/id-214172),这里提供三个部分文件(stsw-stm32095.part1、stsw-stm32095.part2、stsw-stm32095.part3) 组成的压缩包,下载下来后解压出来是一个目录,但这个目录在Eclipse中并不能识别和安装。我们还是去官网(http://www.st.com/)看看,是否有更新的插件包。 在www.st.com网站中,我们能找到个叫UM1718 的文档(链接:http://www.st.com/web/cn/catalog ... -long-promo_feb2014) 这里可以找到这样的一段文字:
. x' t. ~. c) \5 B( y" y- _ 哈哈,有下载,而且是支持最新CubeMX的版本 STSW-STM32095(4.12.0) - w. f$ r$ s" n: {5 G9 P8 w 从UM1718文档中可以知道,这个插件需要的环境是: Java JDK 1.7_45以上 Eclipse版本 : Eclipse Juno(4.2) Eclipse Kepler(4.3) Eclipse Luna(4.4) 在安装好JDK、Eclipse之后,进入Eclipse 安装STSW-STM32095.zip 选择Help-->Install NewSoftWare -->点击“ADD...”按钮--〉输入Name后(这里输入CubeMX),点击"Archive..."按钮----〉选择下载的"STSW-STM32095.zip"文件所在位置。 选择插件后点击下一步直至结束。重起Eclipse,就能看见下面的内容: 这是我们可以在Eclipse环境中调出 STM32CubeMX了,这是不是很方便呢? 可以随时呼唤出CubeMX编辑修改我们的环境,并生成代码。 ( ]+ K7 K! p, d6 Z 三、Eclipse下使用OpenSTM32插件 仅有CubeMX插件还是不够,这还是离不开Keil等编译环境,有没有什么插件可以直接编译STM32项目呢?网站http://www.openstm32.org/ 为我们提供了这样便利的插件OpenSTM32,这个Eclipse插件支持基于最新版本STM32HAL固件下的程序开发,并使用ST-LINKV2-1 通过SWD接口进行程序调试。打开网站映入眼帘的是蝴蝶标记:我是蝴蝶粉! * [+ W- h4 Z9 j 这里可以选择注册,然后通过里边的下载链接进行下载,这里我跳过注册流程,直接打开Eclipse,在Eclipse "Help>> Install New Software"; 打开 "Available Software" 窗口" m7 K' ]5 J/ Q% ?. x# ?" W 需要新建插件,名字随便取(可以取为AC6-Tools),输入插件的地址:7 q" Y4 ?) `) v7 H* ^6 i* u7 \4 K, n http://www.ac6-tools.com/Eclipse-updates/org.openstm32.system-workbench.site2 B- q7 b3 t5 b9 ^# F7 w/ U 然后就是下一步,选择好安装的插件后,直到完成,重起Eclipse。0 }7 V/ G( G+ L4 o 这里我们在File--〉New--〉新建一个C项目: 输入一个工程名称:Hello_LED_F410RB 9 p# p c; i, \- m 选择Project Type:Executable-->Empty Project; Toolchains:Ac6 Stm32 MCU GCC,然后下一步。4 j8 h0 g9 D! M& d6 V. \: { 默认配置并下一步:; |2 S4 P$ A! E7 @) u 从下拉菜单中可以看见该插件支持最新的STM32L4系列: 若选择STMF4,这里的板子显示中,还有这次最新活动支持的板卡F410RB。 选择板卡后,这里可以显示板卡的基本配置信息,我们点击下一步;虽然是L476RG的实验文档,为应景特意选择STM32F410RB。 ) r* T u. ~6 y; B- _- ^ 这里有这个插件强大的地方显示出来了,可以选择STD Periph或者最新的Cube HAL固件。6 Z% \5 I3 b* r+ m% e. J 若本机没有对应的固件,可以点击下载目标固件进行下载,也可以从CubeMX中下载的最新固件压缩包目录中拷贝文件(例如:stm32cube_fw_f4_v1100.zip),拷贝到下列目录: Win7系统所在的目录位置: “C:\Users\{你自己的姓名}\AppData\Roaming\Ac6\SW4STM32\firmwares” XP系统所在的目录位置: “C:\ Documents andSettings\{用户名字}\ program data\Ac6\SW4STM32\firmwares” 当我们准备好固件后,点击Finish。相关的项目代码就生成好了。7 t5 p2 {" _6 ^3 Z2 p* ^) E) z7 g: ^5 @ V! d 这里补充说明一点,在生成代码最后一步时,选择“As Static External Libraries”,这样可以将我们的应用程序和底层应用各自独立,方便代码的移植。说到这里,我们回到LED闪闪亮的主题,可以将前面LED的项目添加在刚生成的Eclipse项目中,也可以利用STM32F4xx-Nucleo中的内容实现LED闪亮功能。 0 M3 m* J1 b; {0 }. b 四、LED闪闪亮 在生成的Main.C文件中,找到循环体For(;;); 略微改造一下: BSP_LED_Init(LED2);/ |6 d% q- E, D4 S for(;;){ BSP_LED_Toggle(LED2); }" T2 x2 x. ?, ?9 L 这样,就能让板上的LED2灯闪闪亮起来了。 1、选择 Project菜单----〉Build All;实现对代码的编译; 2、选择Hello_LED_F410RB项目,在右键探出菜单中选择DebugConfigurations,在探出框中选择如下图: ' n i8 B/ ]. ^ @8 A) w) k 这样,就能在STM32 Nucleo板中运行及调试我们所写的代码了。 0 W; G2 f: C! U/ l, Y) T, F 有了这两个插件,我们可以告别Keil 环境了。 另外,默默的祈祷,能获得这次活动的开发板NucleoF410RB。 |
寒一个,才注册2个月就是老粉了啊?: \( A% @+ D7 I# w' v
老粉嘛,也能为新粉一点启示嘛~~~
可以选择一款软件吧 HTTP目录中的文件拉下来,再装。
的确,就是因为这个插件方便所以选择这种方式搭建比较容易上手。