一板网
发表于: 2015-5-25 21:09:34 | 显示全部楼层

1. mbed是什么

nucleo-F3.jpg



mbed开发平台是基于ARM微控制器开发产品最快捷的方式,该项目是由ARM及其合作伙伴、全球mbed开发者社区贡献者共同建立的。


实际上,mbed是一个在线编译器工具。也就是说,只要你能连接因特网就可以使用该工具。


更多关于mbed的信息可以访问官网 https://developer.mbed.org/


注意:使用mbed开发平台之前需要先注册帐号才能使用。mbed开发者社区为新用户提供了mbed开发入门指南,具体网址https://developer.mbed.org/getting-started/,下图是登录mbed后的首页:


001.jpg



跳转到指定楼层
一板网
发表于: 2015-5-26 22:11:20 | 显示全部楼层


2. 安装ST-LINK/V2-1驱动程序

首先在官网下载ST-LINK/V2-1的驱动程序,下载地址:

STSW-LINK008:ST-LINK/V2-1的驱动程序,适用于Windows Vista、Win7和Win8系统;

STSW-LINK009:ST-LINK/V2-1的驱动程序,适用于Windows XP系统;


解压缩下载的文件,并使用管理员模式运行stlink_winusb_install.bat,按照一下步骤安装该程序。


002.png



回复

使用道具 举报

一板网
发表于: 2015-5-27 19:39:06 | 显示全部楼层

3. 更新ST-LINK固件

新版本的固件会解决已知的问题以及提升稳定性,因此应该保证固件版本最新。

新版本的固件可以在官网下载:

STSW-LINK007:ST-LINK/V2-1固件升级程序。


解压缩下载的文件,使用管理员模式运行ST-LinkUpgrade.exe程序。然后按照下图的步骤更新ST-LINK的固件:

004.png


回复

使用道具 举报

一板网
发表于: 2015-5-27 22:04:43 | 显示全部楼层

4. 运行例程

mebd开发社区为NUCLEO-F401RE提供了很多文档及实验例程,以更好的学习该NUCLEO开发板。

使用例程之前,首先应该使用账号登录到mbed开发社区,然后打开NUCLEO-F401RE开发平台,点击左侧的Add to your mbed Compiler,添加该平台到mbed编译器。

006.jpg

添加成功后,mbed会在顶部提示已成功添加到账号里面。添加完成后就可以使用例程了。

007.jpg

我们在mbed提供的例程中选择Nucleo_blink_color_led

008.jpg

点击打开,选择Import  this Program导入该工程至mbed编译器

009.jpg

导入工程后,点击Compile编译按钮,保存生成的bin文件。

010.jpg



下载bin文件可以使用ST-LINK utility软件,下载成功后绿色的LED灯闪烁。






回复

使用道具 举报

一板网
发表于: 2015-5-28 21:54:36 | 显示全部楼层

5 导出程序至KEIL

mbed在线编译器支持将程序导出到本地开发环境中,如KEIL、IAR等。

首先,打开mbed在线编译器,选中要导出的程序,单击右键,在弹出的对话框选择Export Program...

012.jpg

然后选择要导出到的编译器环境。mbed支持KEIL、IAR、NXP的LPCXpress、飞思卡尔的KDS、新科的Simplicity Studio等等。这里可以选择KEIL。单击Export,浏览器自动下载文件。下载完成后就可以使用本地编译器浏览源文件了。

013.jpg

回复

使用道具 举报

一板网
发表于: 2015-5-28 22:41:04 | 显示全部楼层

6.使用pc.printf作为调试工具

mbed提供了一个串口调试工具pc.printf,它可以通过USB端口将数据发送到PC。在PC客户端,NUCLEO-F401RE被虚拟成串口设备。

首先使用USB连接线将NUCLEO-F401RE连接至PC。然后单击【开始】-【设备和打印机】,可以看到多了一个STM32 STLink的设备。

014.jpg

在设备STM32 STLink右键弹出属性对话框,选择硬件标签页,在设备功能列表里面可以看到有一项是ST Link Virtual COM Port,在我的PC上面,NUCLEO-F401RE被虚拟成COM13。

015.png

然后使用mbed社区提供的Nucleo_printf工程,编译并下载程序到NUCLEO-F401RE开发板。

下面是程序的主函数main.cpp。

  1. #include "mbed.h"

  2. //------------------------------------
  3. // Hyperterminal configuration
  4. // 9600 bauds, 8-bit data, no parity
  5. //------------------------------------

  6. Serial pc(SERIAL_TX, SERIAL_RX);

  7. DigitalOut myled(LED1);

  8. int main() {
  9.   int i = 1;
  10.   pc.printf("Hello World !\n");
  11.   while(1) {
  12.       wait(1);
  13.       pc.printf("This program runs since %d seconds.\n", i++);
  14.       myled = !myled;
  15.   }
  16. }
复制代码

然后打开串口工具,配置串口波特率为9600。运行程序后,串口工具接收到如下数据,同时绿色的LED灯闪烁。

016.jpg






回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 37 | 回复: 55



手机版|

GMT+8, 2024-4-27 06:35 , Processed in 0.046968 second(s), 7 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表