本帖最后由 JMU2010 于 2015-10-11 23:17 编辑
几经波折,今天终于拿到了传说中的STM32F446 Nucleo开发板。这里,要特别感谢21IC论坛的大力赞助。正是有了这么给力的活动,才让我们这些学生党有机会学习了解新产品。先声明一点,我是个新手,之前没有用过STM32系列MCU。如果有写的不好的地方,希望大家提出来,共同进步吧。好了,开始聊聊开发板吧。
拿到开发板后,是这样子的。
先进行硬件分析。此开发板由两大部分组成,ST-LINK部分和MCU部分。ST-LINK部分,既可以作为开发板的调试编程器,也可以连接其他开发板进行调试。相当于,还送了你一个ST-LINK调试器。有两个插针,都插上跳线帽时,给目标板调试,都取下时,可以连接外部STM32开发板。
此板给我第一眼的感觉,就是,精致、小巧。然后打开包装,按照个人习惯,先看看说明书,虽然有点简约,但是也提供了不少有用信息呢。左下角,说的是此款芯片基于ARM Cortex-M4内核,最高180MHz主频。有512KB Flash和128 KB SRAM空间,瞬间觉得好多啊,特别是相对于那些8位、16位单片机来说,感觉这样的配置,真是足够用了。还支持两种扩展接口,Arduino和ST Morpho(通过此接口,把芯片的所有引脚都扩展出来了,非常方便进行测试)。刚好手里有个arduino,于是对比了一下,真的是完全兼容,只是比较遗憾的是,两块开发板都是排座,不能直接插上去,只能使用公对公的杜邦线了。还有个细节,两块开发板的底色都是白色的,莫非这是意大利半导体公司的风格?接下来,提到了板载ST-LINK调试/编程器,这样就不能再去寻找专用调试器了,这样的设计,真是极好的啊~
背面还有一些有用信息,我再好好看看哈。
1)检查板载跳针位置,JP1断开,JP5跳线帽在U5V这边,JP6插上跳线帽;
2)通过一根A-mini B的USB数据线连接开发板和PC;
3)按下B1按钮(蓝色那个);
4)观察绿色LED是如何根据按键B1的点击次数而发生变化的(有三种模式);
5)几个使用STM32 Nucleo的样例可以在他们的官网上可以找到;
6)使用可用样例开发属于你自己的应用。
系统需求:
Windows XP,7,8;
A-mini B USB数据线。
开发工具:
Keil:MDK-ARM
IAR:EWARM
基于GCC的一些IDE...
mbed,也是arm开发的一种工具,可以在线和离线开发
好了,看完说明书了,现在就开始动手测试了。
先按照说明书的那样,检查跳针位置,一切正常。再连线,LD1(USB通信指示),LD2(用户调试),LD3灯(电源指示)都亮起,其中LED2以一定频率闪烁,按下B1键后,闪烁频率发生变化。再看看电脑这边的反应,提示没有安装驱动,我电脑确实没有安装ST-LINK的驱动,所以没有识别出来。这里我没有提前安装ST-LINK驱动,因为我记得IDE是内置USB驱动的,直接安装IDE就可以了,不用单独安装。于是,下载了EWARM 7.4,IAR 公司的IDE做的比较好,而且,一直在用,于是这次还是选择了IAR。顺便提一下,IAR官网太卡了,我就直接在21IC上下了,快不少,而且资源也多。安装IDE也花了不少时间,感觉这软件真的稍微大了些。然后又去ST官网找资料,下了一个固件开发包STM32CUBEF4,万事俱备,只欠动手了。
安装完EWARM之后,再次连接开发板,就可以正确识别出来了。
然后打开一个案例工程,我选的是一个IO TOGGLE项目,就是GPIO电平翻转的项目,这个比较容易观察现象。整个工程结构形式还是非常清晰的,主要是固件库和用户工程,调试参数几乎不用改动,然后编译连接,无错误。于是debug,顺利通过。接着,打开main文件,修改端口引脚以及延时时间,再次调试,就可以看到LED灯按照自己的想法闪烁了。第一个项目就这样生成了。
由于时间有限,之后的例子就不一一演示了。这个开发板,给我的感觉就是,非常容易上手。将来如果有时间,我还会写点心得体会。期待和大家进行交流,谢谢~
|